2008-08-12 8 views
6

In unserem Fehlerprotokoll DB's fanden wir einen konstanten Strom fast erfolgreicher SQL-Injection-Angriffe. Einige schnelle Kodierungen haben das vermieden, aber wie hätte ich einen Monitor für den DB- und Web-Server einrichten können (einschließlich POST-Anfragen), um dies zu überprüfen? Damit meine ich, wenn es von der Stange Tools für Script-Kiddies gibt, gibt es Tools von der Stange, die Sie auf ihr plötzliches zufälliges Interesse an Ihrer Site aufmerksam machen?Wie sollte ich potenzielle Bedrohungen für meine Website überwachen?

Antwort

5

Komischerweise hatte Scott Hanselman heute eine post on UrlScan, die Sie tun können, um mögliche Bedrohungen zu überwachen und zu minimieren. Es ist eine ziemlich interessante Lektüre.

0

Die Überwachung von Web- und DB-Zugriffsprotokollen sollte Sie auf solche Dinge hinweisen, aber wenn Sie ein umfassenderes Warnsystem wünschen, würde ich eine Art IDS/IPS vorschlagen. Sie benötigen jedoch einen Ersatzcomputer und einen Switch, der die Portspiegelung ausführen kann. Wenn Sie diese haben, dann ist ein IDS eine billige Möglichkeit, Ihren Datenverkehr für viele Eindringversuche zu überwachen (es wird viele geben). Snort (www.snort.org) basierte IDSes sind hervorragend, und es gibt einige kostenlose, vollständig gepackte Versionen. Eine, die ich verwendet habe, ist StrataGuard (http://sgfree.stillsecure.com/), und es kann als IDS (Intrusion Detection System) oder als IPS (Intrusion Prevention System) konfiguriert werden. Es ist kostenlos zu verwenden, wenn Ihr Datenverkehr 5Mbps nicht überschreitet. Wenn Sie mit einem IDS/IPS gehen, rate ich Ihnen, es als ein einfaches IDS für einen Monat oder so laufen zu lassen, bevor Sie zulassen, dass es Angriffe verhindert.

Das ist vielleicht zu viel, aber wenn Sie eine Ersatzmaschine herumliegen haben, kann es nicht schaden, wenn ein IDS passiv läuft.

2

UrlScan scheint eine nette Option für iis6 und 7; Ich habe auch gefunden: dotDefender für Pay, die auch Apache oder IIS umfasst 5-7, und ich hatte eine SQL Injection sanitation ISAPI

Es ist auch erwähnenswert, in Anbetracht der jüngsten weit verbreiteten SQL-Injection-Versuch festgestellt, dass dissallowing Ihre Webapp des db Benutzerkonto aus Abfrage der Systemtabellen (in MS SQL Server ist es sysobjects und syscolumns) ist eine gute Idee.

Ich denke dieser Thread garantiert mehr freie Lösungen für Apache und andere Webserver.

Leider Intrusion Detection war nicht das, was ich im Sinn hatte, so sgfree ist nicht gerade ein Website-Angriffsmonitor, es sei denn, ich verstehe nicht, wie es funktioniert.

2

Wenn Sie zurückgehen und Ihren App-Code ändern könnten, würde ich vorschlagen, log4j/log4net in die Anwendung integriert zu bekommen. Von dort aus könnten Sie Code schreiben, der ein Formularfeld oder eine URL überprüft (etwa auf der Ebene global.asax für .NET-Anwendungen) und einen Protokolleintrag erstellt, wenn bösartiger Code entdeckt wird.

Das Schöne an log4j/log4net ist, dass Sie einen E-Mail-/Pager-/SMS-Appender konfigurieren können. Sobald der böswillige Versuch abgefangen wurde, werden Sie benachrichtigt.

Ich bin dabei, einige log4net-Codes in unser CMS-System zu integrieren, das wir haben, und ich versuche, dies angesichts des Zustroms von ASPRox-Angriffen zu tun, die auf uns zukommen.

0

Sie können Ihr System so einrichten, dass es eine Fehlermeldung ausgibt, die einen JSON- oder HTTP-Anruf an ein System sendet, das alle Arten von Warnungen wie SMS/E-Mail oder Telefon überwacht, meldet (protokolliert) Anruf.

Auschecken developer.alertcaster.com

Vor allem, wenn Sie mehrere gleichzeitige Ereignisse überwachen müssen, was es klingt wie Sie haben, könnte dies eine gute Lösung sein.