Как получить изображение диска на компьютере Linux?

Я недавно установил CentOS 6.5 как виртуальную машину по той же причине, для использования в качестве виртуального веб-сервера. Так или иначе я следовал этому очень подробному практическому руководству от CentOS wiki. Затем согласно ответу @slm, я добавил порт 80 к нему и сохранил использование sudo /etc/init.d/iptables save.

iptables -L -v имеет этот вывод:

Chain INPUT (policy DROP 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 ACCEPT     all  --  lo     any     anywhere             anywhere            
  214 17168 ACCEPT     all  --  any    any     anywhere             anywhere            state RELATED,ESTABLISHED 
    1    44 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:ssh 
    0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:http 

Chain FORWARD (policy DROP 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 169 packets, 15164 bytes)
 pkts bytes target     prot opt in     out     source               destination

2
10.09.2014, 01:21
2 ответа

При выполнении команды типа

# dd if=/dev/sda of=/path/to/external/medium/file.img

на живой системе сработает ряд проблем, которых у вас не будет, если вы загрузитесь в отдельную ОС и сделаете образ(ы) оттуда:

  1. Если вы создадите образ целого диска, то, вероятно, он содержит загрузчик и таблицу разделов . Это встанет у вас на пути, когда вы попробуете провести экспертизу/восстановление образа.

    На самом деле вы хотите создать образ каждой файловой системы независимо:

    # dd if=/dev/sda1 из=/путь/к/к/внешний/средний/файловая система1.img.
    # dd if=/dev/sda2 of=/path/to/external/medium/filesystem2.img
    ...и т.д...
    

    Сделав это таким образом, монтаж файловых систем становится тривиальным:

    # mount -oloop,ro filesystem1.img /mnt/fs1
    

    (Я показываю mount, сделанный как root, потому что на некоторых Linux'ах устройства loop devices заблокированы, так что обычные пользователи не могут их использовать.)

  2. Вы делаете снимки в реальном времени, смонтированных файловых систем, так что когда вы монтируете их позже, это фактически ничем не отличается от того, если бы вы монтировали машину в режиме power-cycled. Разделы будут "грязными", что может затруднить их монтирование без судебного разбирательства.

  3. Вы используете копию dd(1) подозрительной машины. Если кто-то пытается что-то скрыть от вас, он может предоставить поддельную или вредоносную копию dd(1).

Итак, все, что было сказано, есть несколько хороших причин, чтобы сделать онлайн-клон. Лучшая причина в том, что система использует какую-то файловую систему или шифрование всего диска , и при перезагрузке она сотрёт ключи расшифровки смонтированных томов. Однако

dd не является подходящим инструментом для этой работы, так как это просто даст вам копию данных, зашифрованных в интересах. Регулярное резервное копирование - лучшая идея. Например,

# tar -cvJf --exclude={'/proc/*','/sys/*','/tmp/*'} \
  /path/to/external/medium/everything.tar.xz /

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

2
27.01.2020, 22:00

В ходе судебно-медицинской экспертизы вам необходимо получить данные из потенциально враждебной системы и предоставить убедительные доказательства того, что полученные вами данные являются подлинными. Получение образа диска с живого компьютера крайне плохо в обоих отношениях.

Системное программное обеспечение может представлять собой нестандартное программное обеспечение, которое запрограммировано так, чтобы лгать вам и предоставлять «интересные» данные только после представления учетных данных, которых у вас нет. Например, вы можете взаимодействовать с виртуальной машиной, которая маскируется под реальное оборудование. Системные исполняемые файлы или ядро ​​могли быть изменены так, чтобы не сообщать подлинные данные. Это и проблема для вас, потому что вам нужны подлинные данные, и проблема для любого судебного разбирательства, потому что у адвоката подозреваемого будет рабочий день, показывающий, что вы не можете доказать, что то, что вы захватили, было подлинным.

Обычная процедура для любой судебной экспертизы - отсоединить носитель данных и подключить его к вашему собственному портативному компьютеру, на котором установлено программное обеспечение, которое вы можете точно учитывать.

Кроме того, dd - неподходящий инструмент для задания, потому что не может надежно копировать весь ввод . (Если вы читаете с блочного устройства, а не с конвейера, это может сработать, но удачи в доказательстве этого с какой-либо степенью уверенности.) По крайней мере, используйте подходящий инструмент, такой как dcfldd или хотя бы кот .

Вы не можете доверять не только программному обеспечению, работающему на компьютере, но и аппаратному обеспечению. Поэтому небезопасно пытаться загрузить собственный носитель на компьютер подозреваемого. Например, ваша ОС может работать в гипервизоре, который вы не можете обнаружить, но который возвращает поврежденные данные. Вам нужно принести свой компьютер и подключить к нему жесткий диск.

Также важно, чтобы вы не писали на компьютер подозреваемого (потому что вам нужны данные подозреваемого, а не ваши собственные данные, полученные от подозреваемого). Таким образом, стандартная процедура заключается в подключении жесткого диска через блокировщик записи - выделенный аппаратный компонент, который на уровне протокола (например, протокол USB-накопителя) устанавливает запрет на запись на диск. Затем вы сохраняете этот захват в качестве эталонной копии - по возможности, на физическом носителе с однократной записью, на жестком диске, на который вы никогда не записываете иначе, - и никогда не работаете напрямую с него, только с вторичными копиями.

Желательно получить образ всего диска и восстановить оттуда файловые системы и т. Д. Помните, что простой процесс сборки томов или монтирования файловой системы (даже только для чтения!) Может изменить ее: установка грязного бита, обновление даты последнего использования, воспроизведение журнала, ... При монтировании файловой системы ext3 / ext4, которая не была при чистом отключении параметр монтирования noload (в дополнение к ro ) пропускает обновление журнала и ничего не записывает на диск; Обратной стороной этого является то, что данные, которые вы читаете, могут быть несовместимыми (что может иметь положительный эффект в том, что недавно удаленные файлы все еще присутствуют).

Если вам нужно что-то получить от действующей системы, например, потому что данные зашифрованы, то возьмите то, что вы можете, как вы можете. Задокументируйте свои действия как можно точнее (может помочь видеосъемка). Но возьмите в дополнение реальные базовые данные. Используйте то, что вы получили от действующей системы (обычно ключи), чтобы легко прослеживаемым образом восстановить интересные данные из прямого дампа.

Дополнительную информацию по этой теме вы найдете на Security Stack Exchange , в частности:

2
27.01.2020, 22:00

Теги

Похожие вопросы