Buffer Overflow in FreeBSD
Auf der FreeBSD Security-Mailingliste ist ein Advisory erschienen, das auf einen Buffer Overflow in der Funktion realpath() der Standard-C-Bibliothek hinweist. Betroffen sind alle Versionen von FreeBSD bis einschließlich 4.8-RELEASE, 5.0-RELEASE und 4-STABLE bis 22. Mai 2003. FreeBSD.org empfiehlt, auf die aktuellen Versionen in der Branch 4.8-STABLE und auf 5.1-RELEASE oder die jeweiligen Patchlevel der Branches zu wechseln. Weitere Informationen können dem Original-Advisory entnommen werden. Als Workaround wird das Abschalten von Applikationen angeraten, die über das Netzwerk erreichbar sind und realpath() verwenden, zum Beispiel OpenSSHs sftp-server. Der lukemftpd-Server sollte nach Angaben von FreeBSD.org ebenfalls deaktiviert oder ersetzt werden.
Die Funktion realpath() wird verwendet, um absolute Pfadnamen zu ermitteln, die von Angaben wie "../../" bereinigt sind. Außerdem werden damit symbolische Links aufgelöst. Das Sicherheitsloch wird durch eine falsche Abfrage der Länge der Pfadangabe verursacht. Ein zu langer Pfadname provoziert einen Buffer Overflow, der den Stack überschreibt und potenziell zum Einschleusen und Ausführen von beliebigem Code genutzt werden kann. Andere Plattformen neben FreeBSD können ebenfalls betroffen sein. realpath() wird von einer Vielzahl von Applikationen benutzt, unter anderem XFree86-Clients, Evolution, Exim, Mozilla und Samba. (dab/c't)
Kwällä:
http://www.heise.de/newsticker/data/dab-04.08.03-001/