Typische Angriffspunkte bei Perl-Skripten II

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]

*Wenn Dateien zum Schreiben eröffnet werden, bestehen ebenfalls Risiken,

*wenn der Dateiname in Abhängigkeit von Angaben eines Angreifers gewählt wird,
 
*die zu kreierende Datei in einem vom Angreifer beeinflußbaren Verzeichnis liegt, oder
 
*wenn der Dateiinhalt beeinflußt werden kann.
 

*Eine typische Falle kann hier die Mächtigkeit der Syntax bei Dateieröffnungen darstellen. Während my $out = new IO::File $filename recht harmlos aussieht, wird dies zum idealen Angriffspunkt, wenn beispielsweise $filename am Ende ein Pipeline-Zeichen erhalten kann oder wichtige Systemdateien (wie z.B. /etc/passwd) bedroht werden können.
 
*Selbst wenn auf $filename kein Einfluß ausgeübt werden kann, kann das Anlegen temporärer Dateien in öffentlichen Verzeichnissen (z.B. /tmp) zur tödlichen Falle werden, wenn dort der Angreifer zuvor einen symbolischen Verweis auf /etc/passwd für den zu erwartenden Dateinamen hinterließ.
 
*Natürlich sind auch viele weitere Systemaufrufe gefährlich wie z.B. mkdir, chmod, chown usw.
 

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]
Copyright © 1996 - 2003 Andreas Borchert, in HTML konvertiert am 01.10.2003