Der "Sicherheitsgrund" besteht darin, dass find
ein Angreifer zwischen dem Auflisten der Dateien und dem Löschen dieser Dateien möglicherweise eine Komponente des Dateipfads so ändern muss, dass sie zu einem symbolischen Link zu einem unerwarteten Verzeichnis wird Datei mit demselben Namen aus einem unerwarteten Verzeichnis. Zum Beispiel könnten Sie am Ende löschen /etc/passwd
und nicht, /tmp/foo/passwd
wenn der Angreifer foo
in einen Symlink verwandelt werden kann, auf den verwiesen wird /etc
.
In Abschnitt 9.1.5 ("Eine sicherere Version von -exec") der GNU- Funddokumentation wird dieses Problem ausführlicher beschrieben.