Menü
Security

Framework gegen Code-Injection

vorlesen Drucken Kommentare lesen 195 Beiträge

Ein neues Framework "Interpolique" soll Entwicklern dabei helfen, ihre Webanwendungen gegen SQL-Injection und Cross-Site-Scripting immun zu machen. Die grundlegende Idee dabei ist, die etwa aus Benutzereingaben stammenden Daten einfach in Base64-Code umzuwandeln, damit sie selbst beim fehlerhaften Zusammenbau mit weiterem Code keinen Schaden anrichten können.

Das Problem bei SQL-Injection ist nämlich oftmals, dass der sogenannte Query-String direkt aus vorgegebenen Strings und Variablen zusammengesetzt ist. Schafft es ein Angreifer ';DROP TABLE KUNDE-- als Variable zu übergeben, so kann das die Datenbank beschädigen. Mit dem Kodieren würde die Datenbank den String JztEUk9QIFRBQkxFIEtVTkRFLS0= übergeben bekommen, der selbst bei falschem Escapen zu keiner Beeinträchtigung führt.

Allerdings muss dazu die Datenbank das Dekodieren solcher Stringparameter unterstützen, damit sie weiterhin sinnvoll arbeiten kann. Das von Dan Kaminsky in Version 0.1 vorlegte Framework bringt eine derartige Erweiterung für MySQL mit. Kaminsky hat seine im Framework zusammengefassten Ideen zu Diskussion gestellt. Wer in Erwägung zieht, das Tool einzusetzen, sollte aber zusätzlich eruieren, ob er vielleicht mit Stored Procedures oder Prepared SQL Statements nicht besser fährt. Dabei werden (eingegebene) Daten und Anweisungen getrennt verarbeitet und verhindern ebenfalls wirkungsvoll SQL-Injection. (dab)