diff --git a/templates/hex.html b/templates/hex.html index 2e1d4fd..1f3d8f5 100644 --- a/templates/hex.html +++ b/templates/hex.html @@ -3,6 +3,20 @@ {% block content %}
Любой файл можно представить в виде Hex-данных.
+Для записи байтов в hex формате используется 16-ричный вид (по 2 цифры), т.е от 0 до F. В Hex'е файла можно наблюдать: важные сигнатуры, указывающие на тип файла и просто байты информации.
+Эти данные можно редактировать в Hex-редакторах, например, xxd. Открыть файл и посмотреть его Hex с помощью xxd можно так:(пример команды ниже)
+xxd [файл]
+ Не обязательно вносить какие-либо изменения, можно просто внимательно посмотреть их представление в формате ASCII (Обычно слева - данные в бинарном виде, посередине - столбик с 16-ричными данными (Hex), а справа их представление в понятном нам языке, в виде символов ASCII).
+
+│00000000│ 50 4b 03 04 14 00 06 00 ┊ 08 00 00 00 21 00 32 91 │PK•••⋄•⋄┊•⋄⋄⋄!⋄2×│
+│00000010│ 6f 57 66 01 00 00 a5 05 ┊ 00 00 13 00 08 02 5b 43 │oWf•⋄⋄ו┊⋄⋄•⋄••[C│
+│00000020│ 6f 6e 74 65 6e 74 5f 54 ┊ 79 70 65 73 5d 2e 78 6d │ontent_T┊ypes].xm│
+│00000030│ 6c 20 a2 04 02 28 a0 00 ┊ 02 00 00 00 00 00 00 00 │l ו•(×⋄┊•⋄⋄⋄⋄⋄⋄⋄│
+ Вышеприведённый пример - начало любого .docx файла и в самом начале у него идут 2 байта отвечающие за его структуру архива - PK или же 50 4b. Если их повредить, т.е изменить в редакторе 50 4b -> 00 00, то файл просто перестанет открываться.
+Однако в случае нашего задания нужно просто посмотреть на строки без пустых или бесполезных байтов. С этим может помочь утилита strings:(пример команды ниже)
+strings [файл]
+ Именно она и выведет нам флаг быстрее всех.
скрыть