Рубрика
На заметку $USERNAME@hacker.wtf -
part 7
*Сегодня о
Proxmox/etc/pve — это
pmxcfs кластерная распределённая FS да еще и в памяти, любые изменения сразу отлетят на все ноды кластера = глобальный
persistence.
*
*
VM hook scriptsВ Proxmox есть:
hookscript:
И вот этот вот hookscript запускается при старте\стопе\миграции ВМ, а сам он лежит лежит в storage !!!
Наполняем наш ХукоСкрипт любой нагрузкой, при старте ВМ она выполнится, но VM при этом будет выглядеть чистой.
*
*
backdoor через snippetslocal:snippets
Туда обычно укладывают cloud-init \ hook scripts \ config fragments. И тут если словить storage writable - золото, мало кто мониторит snippetы.
*
*
с
loud-init user injectionЕсли ВМ использует cloud-init то можно и подменить user-data, своих SSH-ключей накидать, команд заинжектить. А если еще и storage общий.... )
*
*
QEMU monitor socket = GOD-MODEУ каждой ВМки есть свой монитор
/var/run/qemu-server/<vmid>.monitor
И если доступ уже в руках, то ничего не мешает читать память, инжектить команды, снапшотик забрать.
*
*
live migrationПри миграции ВМ на другую ноду, память ВМки летит по сети, а значит можно снифать память, ловить ключи, смотреть что там в рантайме.
НО, есть 2 НО :
1 - память летит без шифрования в старых версиях proxmox
2 - либо нужно словить лютый misconfig
*
*
args в конфиге VMВ конфиг ВМки можно докинуть аргументов
ls -lla /etc/pve/qemu-server/
args:
Тем самым изменить поведение ВМ, передастся прямо в QEMU.
*
*
Про всякие
shared storage (NFS, Ceph и тд) можно и не говорить - это сразу компроментация всего, включая подмену золотых образов для автоматическокой раскатки. Сюда же протекщие тикеты (
PVEAuthCookie), сюда же
/etc/pve/priv/authkey.key (подделка cluster-auth) и до кучи
LXC контейнеры которые с нодой прям за руки держатся.
#РубрикаНаЗаметкуХакеру