Supposons qu'il existe une application binaire qui écrit toujours ses données /tmp
.
Comment pourrais-je usurper / simuler /tmp
pour ce binaire comme un autre répertoire (par exemple home/tmp
)?
Supposons que je n'ai aucun moyen de modifier ce binaire pour le forcer à utiliser un répertoire différent.
chroot
ou d'lxc
être capable de faire ça. C'est aussi très agréable de savoir qu'il existe un moyen d'y parvenir sans être un superutilisateur.chroot
nécessite une configuration supplémentaire (vous remplacez l'ensemble de/
, non seulement/tmp
, de sorte que tout accès à/etc
,/var
etc., seront également à l' intérieur de la « prison ») et crée des problèmes de sécurité de son propre (le programme « emprisonné » peut être capable de manipuler des parties du système de fichiers qui seraient normalement interdites si vous ne faites pas attention aux autorisations lors de la configuration de votre faux/
)./
n'est pas limité à être écrit uniquement parroot
, l'utilisateur "emprisonné" peut créer ou remplacer des fichiers qui semblent se trouver dans des emplacements clés du système, tels que/etc/passwd
; cela peut ensuite être utilisé pour une élévation de privilèges qui ne serait pas possible en dehors duchroot
. De nombreux serveurs FTP Linux, qui utilisent traditionnellementchroot
pour masquer le reste du système de fichiers, refusent désormais de le faire si le répertoire est accessible en écriture par un utilisateur non root.La plupart des logiciels compatibles POSIX respecteraient la variable d'environnement TMPDIR , par exemple
la source