Изменение пароля root в виртуальной машине KVM

Мне было любопытно, поскольку DigitalOcean предоставляет нам возможность сброса пароля root, так как я работал над виртуализацией около 3 месяцев и никогда не сталкивался с прямым способом сделать это.

Например, openstack предлагает такой вариант только для xen, тогда как, если я не ошибаюсь, Digital Ocean предоставляет KVM. Также proxmox и другие стеки не предоставляют эту возможность. Поэтому мне нужно знать, как этим парням удалось это сделать.

Я знаю одну вещь: если я могу получить доступ к файловой системе, я могу редактировать теневой файл, но в виртуальной среде машина находится в форме шаблона, а не в состоянии открытой файловой системы.

Мне было интересно, есть ли какой-либо корневой бэкдор в самой ОС, предоставленный DO, с помощью которого они меняют пароль по запросу?

Спасибо


person Harsh Daftary    schedule 21.05.2014    source источник


Ответы (2)


Если вы выключите свою виртуальную машину, все, что у вас будет, это весь файл «виртуального жесткого диска» на «реальном жестком диске» реальной машины. Это обычная файловая система, которую можно без проблем анализировать и управлять извне (если только она не зашифрована).

Таким образом, у вас нет причин НЕ иметь доступа к файловой системе виртуальной машины, включая теневой файл.

person Wagner Patriota    schedule 21.05.2014
comment
У меня есть файл qcow2, есть идеи? - person Harsh Daftary; 27.05.2014
comment
как только он станет открытым исходным кодом, я думаю, вы сможете найти по нему хорошую документацию. Я только что нашел это (people.gnome.org/~markmc/qcow-image -format.html), но я не знаю, полный ли он. Я предлагаю вам использовать что-то вроде редактора 010, хороший шестнадцатеричный редактор, чтобы вы могли исследовать необработанные данные файла. Если хотите, напишите на нем шаблон, чтобы можно было легко перемещаться по файловым структурам и так далее... - person Wagner Patriota; 27.05.2014

Обычно это делается с помощью cloudinit... Никаких хакерских атак.

person vuduy    schedule 01.01.2021