Webbplatsens kännetecken är att det inte finns några mer misstänkta filer i webbplatsfilerna, och webbplatsen är i princip ASP+SQLSserver-arkitektur. Öppna databasen från Enterprise Manager, och du kan se att skripttrojanen har lagts till i databasens skript och fälttecken. Öppna webbplatsloggen och du kan se att koden lades till via SQL-injektion.
Aldrig i livet, ta först bort skriptet via frågeanalysatorn, lyckligtvis hänger hackern hästen fortfarande relativt regelbundet, du kan rensa det på en gång, skriva rensningsskriptet för varje tabell i databasen i frågeanalysatorn och sedan köra det direkt, okej, öppna webbplatsen, världen är ren. Clearing-skriptet ges nedan:
UPPDATERA tabellnamn, set fältnamn = ERSÄTT(fältnamn, hacker-url ,)
Om det infekterade fältet är text är det mer besvärligt, och viss data kan gå förlorad under konverteringsprocessen för att konvertera texttypen till varchar(8000) via konverteringsfunktionen
Efter rensningen sparas SQL-skriptet för rensning, är allt okej, efter två timmar har webbplatsen fastnat igen!
Jag var tvungen att köra query analyzer igen, köra skriptet och rensa det. Det är väldigt tydligt, men folk måste alltid sova, så man kan inte fånga hemligheter där med hackare.
Plötsligt tänker de att detta är SQL-serverbiblioteket, Microsoft måste ha en lösning, vi kan inte hindra den från att titta på databasen och hänga en trojansk häst, men vi kan göra den misslyckad. Det är med triggers!
Alla som är bekanta med triggers vet att sql2000 först infogar och modifierar data i den insatta temporära tabellen, och sedan faktiskt lägger in den i motsvarande tabell. Att blockera hackarnas fotsteg finns i denna tillfälliga tabell!
Koden till hackarens hängande häst innehåller det här ordet, eftersom det bara är på detta sätt klienten kan öppna webbplatsen samtidigt för att slå till mot den stora hackerwebbplatsen, så låt oss börja här.
Triggerkoden anges nedan:
CREATE triggernamn
På bordets namn för uppdatering, infoga som Deklarera @a varchar(100) - Lagra fält 1
Deklarera @b varchar(100) - Lagra fält 2
Deklarera @c varchar(100) – lagra fält 3
select @a=Fält 1, @b=Fält 2, @c=Fält3 från infogad om(@a som %script% eller @b som %script% eller @c som %script%) Börja ROLLBACK-transaktionen slut
Betydelsen av denna trigger är att först definiera tre variabler och lagra de tre som lätt lagras i den insatta tabellen
Strängtypfältet som hackaren startade och sedan använder för att fuzzly bedöma om värdet innehåller ordskriptet, och i så fall rulla tillbaka transaktionen utan att rapportera något fel, så att hackaren förlamas och felaktigt tror att han har lagt på hyllan.
Vänner som har blivit fasta kan ta detta manus och anpassa det därefter, vilket bör säkerställa att webbplatsen inte hängs upp. Dessutom finns det också en texttyp för fält som är lätta att hänga, men denna typ är mer besvärlig att hantera, och det har observerats att hackare ofta hänger flera fält samtidigt för att hänga en tabell, så så länge ett fält misslyckas är hela tabellen misslyckad |