Siechfred: Tainted-Modus im Webumfeld?

Beitrag lesen

Hi Philipp,

  1. Der Tainted-Modus ist lediglich ein Verfahren, um mögliche Sicherheitslöcher zu
       identifizieren, lösen muss es jedoch der Programmierer (durch finden einer geeigneten
       RegExp oder anderer Überprüfung).

Eben. So, wie ich es verstanden habe, _zwingt_ der Tainted-Modus den Programmierer lediglich dazu, jedes _mögliche_ Sicherheitsloch zu stopfen. Insoweit bietet er den Schutz, dass er auf das Fehlen geeigneter Schutzmechanismen hinweist, nicht mehr und nicht weniger. Was der Programmierer daraus macht, ist sein Bier, er kann ja auch einfach das -T in der shebang weglassen. BTW, war der Erfinder von Perl eigentlich Frauenfeind, guck mal spaßeshalber hier: http://dict.leo.org/?p=/37m..&search=bang ;-)

  1. Im Webumfeld lauern ganz andere Gefahren, die mit Tainted-Modus _nicht_ identifiziert
       werden, somit halte ich dort ein -T für overkill in dem Sinne, dass man viel schreiben
       muss, um -T zufriedenzustellen, was primär gar kein Sicherheitsproblem ist [...]

Ich werde es persönlich mit dem -T genauso wie mit dem -w halten. Zum Testen gut, wenn das Script dann läuft, aus der shebang löschen.

  1. Fazit II: Beide Verfahren dienen der Identifikation gewisser möglicher
       Probleme/Aspekte, gelöst werden müssen sie jedoch immer noch vom Programmierer.

Full ACK.

Besonders möchte ich noch 5) betonen. Auch wenn -T einige Probleme identifiziert, in
speziellen Programmen für spezielle Anwendungen und -bereiche (z.B. Webumfeld), lauern
spezielle Gefahren, die eben _nicht_ abgedeckt werden. Und genau diese speziellen
Gefahren sind of diejenigen, welche ausgenutzt werden. Zuerst sollte man sich also
mit den wirklich relevanten Problemen/Gefahren beschäftigen (und dies ist leider nicht
immer konform mit der "Meinung" vom Tainted-Modus).

Zumindest sollte man sich von einem im Tainted-Modus funktionierenden Script nicht zu der Annahme verleiten lassen, das Script sei sicher. Es ist eben "nur" sicherer.

Viele Grüße
Torsten