Docker Forensics
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Deepen your expertise in Mobile Security with 8kSec Academy. Master iOS and Android security through our self-paced courses and get certified:
Є підозри, що деякий docker контейнер був скомпрометований:
Ви можете легко знайти зміни, внесені до цього контейнера щодо зображення за допомогою:
У попередній команді C означає Змінено, а A - Додано.
Якщо ви виявите, що якийсь цікавий файл, наприклад, /etc/shadow
, був змінений, ви можете завантажити його з контейнера, щоб перевірити на наявність шкідливої активності за допомогою:
Ви також можете порівняти його з оригіналом, запустивши новий контейнер і витягнувши з нього файл:
Якщо ви виявите, що додано якийсь підозрілий файл, ви можете отримати доступ до контейнера та перевірити його:
Коли вам надають експортований образ docker (ймовірно, у форматі .tar
), ви можете використовувати container-diff, щоб витягти підсумок змін:
Тоді ви можете розпакувати образ і отримати доступ до блобів, щоб шукати підозрілі файли, які ви могли знайти в історії змін:
Ви можете отримати базову інформацію з образу, запустивши:
Ви також можете отримати підсумок історії змін за допомогою:
Ви також можете згенерувати dockerfile з образу за допомогою:
Щоб знайти додані/змінені файли в образах docker, ви також можете використовувати dive (завантажте його з releases) утиліту:
Це дозволяє вам переміщатися між різними блобами образів docker і перевіряти, які файли були змінені/додані. Червоний означає додано, а жовтий означає змінено. Використовуйте tab для переходу до іншого виду та space для згортання/відкриття папок.
З die ви не зможете отримати доступ до вмісту різних етапів образу. Щоб це зробити, вам потрібно розпакувати кожен шар і отримати до нього доступ. Ви можете розпакувати всі шари з образу з каталогу, де образ був розпакований, виконавши:
Зверніть увагу, що коли ви запускаєте контейнер docker всередині хоста, ви можете бачити процеси, що працюють у контейнері, з хоста, просто запустивши ps -ef
.
Отже, (як root) ви можете вивантажити пам'ять процесів з хоста і шукати облікові дані просто як у наступному прикладі.
Поглибте свої знання в Mobile Security з 8kSec Academy. Опануйте безпеку iOS та Android через наші курси з самостійним навчанням і отримайте сертифікат:
Вчіться та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Вчіться та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)