Website Intrusion Detection System PerlIDS (CGI::IDS) im CPAN veröffentlicht
04.12.2008
Hinnerk Altenburg von der epublica GmbH in Hamburg hat das Website Intrusion Detection System 'PerlIDS' als CPAN-Modul CGI::IDS unter der GNU Lesser Public License v3 veröffentlicht. PerlIDS ist ein Perl-Port von PHPIDS, einem PHP-basierten Intrusion Detection Systems für XSS-, CSRF-, SQLI-, LFI-Angriffe etc.
Das Intrusion Detection System (IDS) untersucht alle Requests an die Applikation auf verdächtige Strings und bewertet sie nach der Schwere - dem sogenannten Impact - des potenziellen Angriffes. Liegen diese Impacts über einem definierten Schwellwert, kann z. B. der Request in Datenbank oder File geloggt, eine E-Mail an das Security-Team ausgesendet, oder in schweren Fällen der entsprechende User automatisch gesperrt werden.
Die Instrusion Detection basiert auf momentan 68 regulären Ausdrücken (Filter), die bekannte Angriffsmuster erkennen. Vor dem Anwenden der Filter auf die zu untersuchenden Strings, werden diese von verschiedenen Converterfunktionen und einem generischen Angriffsdetektor umgewandelt, um auch verschleierte Angriffe erkennen zu können.
Jeder getestete String erhält seinen Impact aus der Summe der einzelnen matchenden Filter-Impacts. Da Angreifer üblicherweise mit Vektoren kleinerer Impacts beginnen, die Website auf Sicherheitslücken zu testen, können die Impacts applikationsseitig pro IP, Session oder User aufsummiert werden. So können verdächtige Aktivitäten über einen einzelnen Request hinaus erkannt werden.
Für den Einsatz auf Hochlast-Websites wurde die Einführung regelbasierter Whitelists notwendig, da viele der zur Steuerung einer Web-Applikation verwendeten Request-Parameter unnötigerweise mit allen regulären Ausdrücken getestet würden.
Um das XML-Filterset von PerlIDS möglichst auf dem aktuellsten Stand zu halten, ist es kompatibel zum PHPIDS-Filterset. Dieses wird laufend von internationalen Security-Experten verbessert und steht im Subversion Repository von PHPIDS in der jeweils aktuellen Version zur Verfügung.
epublica ist für die Kernentwicklung von XING.com verantwortlich und sucht laufend Perl-Entwickler in Festanstellung.
In der $foo-Ausgabe Frühjahr 2009 erscheint eine ausführliche Vorstellung des Moduls.
Hinnerk freut sich über Feedback unter hinnerk at cpan.org!
Verfasser: Hinnerk Altenburg
Webseite: http://search.cpan.org/~hinnerk/CGI-IDS/