Я сделал sudo dd if=/dev/zero of=/dev/sda
where /dev/sda
is my flash disk. /dev/sda
после этого были одни нули. Затем я создал таблицу разделов с помощью GParted на flash disk. Я не делал никаких других изменений. Теперь это вывод sudo dd if=/dev/sda bs=512 count=1|hexdump -C
:
00000000 фа б8 00 10 8д d0 бб 00 б0 б8 00 00 8д d8 8д с0 |................| 00000010 фб бэ 00 7в сбф 00 06 сб9 00 02 ф3 а4 еа 21 06 00 |...|.........!..| 00000020 00 быть быть 07 38 04 75 0b 83 c6 10 81 fe fe 07 75 |....8.u........u| 00000030 f3 eb 16 b4 02 b0 01 bb 00 7c b2 80 8a 74 01 8b |.........|...t..| 00000040 4c 02 cd 13 ea 00 7c 00 00 eb fe 00 00 00 00 00 |L.....|.........| 00000050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| * 000001b0 00 00 00 00 00 00 00 00 fd 5c ba 4c 00 00 00 00 |.........\.L....| 000001c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| * 000001f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 55 аа |...............U.| 1+0 записей в 1+0 записей вышло 512 байт (512 Б) скопировано, 0,00183447 с, 279 кБ/с 00000200
Я пробовал дважды. Мой вопрос в том, почему это произошло. Насколько я понимаю, таблица разделов начинается после 446-го байта, и нет причин для подписи 55 aa
там.
Что это может быть, если не вредоносное ПО?
решение1
GParted всегда записывает подпись 55AA в MBR, даже если это не является строго необходимым. (Как вы уже упомянули, это требуется только для ЗАГРУЗОЧНОЙ MBR.)
Причина кроется в исторических причинах совместимости.
Некоторые системы с плохо реализованным кодом обработки MBR категорически считают MBR недействительным, если у него нет подписи.
Чтобы предотвратить эту проблему, GParted (и большинство других программ, которые могут создавать MBR) помещает фиктивный/безопасный код загрузчика в MBR и присваивает ему подпись "Загрузочный диск".