Як підробляти / знущатися над каталогом, який використовується бінарним додатком як інший каталог?


9

Припустимо, є двійкове додаток, яке завжди записує свої дані /tmp.

Як я міг підробляти / глузувати /tmpзаради цього бінарного файлу, як і іншого каталогу (наприклад home/tmp)?

Припустимо, у мене немає засобів змінити цей бінарний файл, щоб змусити його використовувати інший каталог.

Відповіді:


11

Ви можете запускати програму в chrootсередовищі, тобто /програма бачить, що це не реально /. Ви створюєте повну нову ієрархію файлової системи і монтуєте ( --bind) все необхідне в неї. Відповідний пункт: Ви можете встановити реальні ~/tmpдо /tmpв chrootнавколишньому середовищі.

Замість використання chroot(для чого потрібна привілей суперпользователя) ви можете зробити більш-менш те ж саме з контейнерами Linux ( lxc). Я не знайомий, lxcале оскільки це звичайний користувальницький процес для хост-системи, вам не потрібно бути надрукувальником таких конфігурацій всередині контейнера.


Великий відповідь, я не чув ні chrootабо lxcбути в змозі зробити це. Також дуже приємно знати, що є спосіб досягти цього, не будучи суперпопулярним.
Nobilis

3
@ Nobilis 98 проголосовано, щоб це було визнано чудовою відповіддю ...
Хауке Лагінг

2
Остерігайтеся, однак, що chrootвимагає додаткової настройки (ви замінюєте все /, а не просто /tmp, так що будь-який доступ до /etc, /varі т.д., також буде знаходитися всередині «в'язниця») і створюють проблеми безпеки своєї власної (в «в'язницю» програми може вміти маніпулювати частинами файлової системи, які зазвичай не мають обмежень, якщо ви не дотримуєтесь дозволів під час налаштування підробки /).
IMSoP

@IMSoP Чи не заперечуєте ви, пояснюючи, "можливо, ви зможете більш детально маніпулювати частинами файлової системи, які, як правило, є поза межами"?
Hauke ​​Laging

@HaukeLaging Якщо нове /не обмежується лише записом root, "засуджений" користувач може створювати або замінювати файли, які здаються в ключових системних місцях, наприклад /etc/passwd; це може бути використане для ескалації привілеїв, яке було б неможливим поза межами chroot. Багато FTP-серверів Linux, які традиційно використовують chrootдля приховування решти файлової системи, зараз відмовляються це робити, якщо каталог може бути записаний користувачем, який не має root.
IMSoP

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.