Angenommen, es gibt eine binäre Anwendung, in die ihre Daten immer geschrieben werden /tmp
.
Wie könnte ich /tmp
für diese Binärdatei wie ein anderes Verzeichnis (z. B. home/tmp
) fälschen / verspotten ?
Nehmen wir an, ich habe keine Möglichkeit, diese Binärdatei zu ändern, um sie zur Verwendung eines anderen Verzeichnisses zu zwingen.
chroot
oder ,lxc
dies zu tun fähig ist. Es ist auch sehr schön zu wissen, dass es einen Weg gibt, dies zu erreichen, ohne ein Superuser zu sein.chroot
zusätzliche Einrichtung erforderlich (Sie ganz ersetzen/
, nicht nur/tmp
, um jeden Zugang zu/etc
,/var
usw., wird auch innerhalb der „Gefängnis“ sein) und schafft Sicherheit Anliegen ihrer eigenen (der „eingesperrt“ Programm kann Sie können Teile des Dateisystems manipulieren, die normalerweise nicht zulässig sind, wenn Sie beim Einrichten Ihrer Fälschung nicht auf die Berechtigungen achten/
./
nicht nur von geschrieben werdenroot
darf, kann der "inhaftierte" Benutzer Dateien erstellen oder ersetzen, die sich anscheinend an wichtigen Systempositionen befinden, z/etc/passwd
. Dies kann dann für die Eskalation von Berechtigungen verwendet werden, die außerhalb der USA nicht möglich wärechroot
. Viele Linux-FTP-Server, die traditionellchroot
zum Ausblenden des restlichen Dateisystems verwendet werden, lehnen dies jetzt ab, wenn das Verzeichnis von einem Nicht-Root-Benutzer beschreibbar ist.Die meisten POSIX-kompatiblen Programme würden die Umgebungsvariable TMPDIR berücksichtigen , z
quelle