Респект за обзор архитектуры сети, это полезно ребятам, которым только предстоит делать свои первые CTF-ивенты.
Но какая же это дичайшая уцуцуга*, так не надо делать > На главной странице задания есть условие, что блюдо должно быть приготовлено на 256 градусах. Берем строку «the‑best‑grill‑in‑the‑whole‑world» и считаем для нее хэш sha256
Упущен логический шаг перехода к взятию хэша и с точки зрения участника этот шаг не очевидн. Да и почему именно саша? У нас еще из 256 битовых есть и RIPEMD, и Keccak-256 etc. Да и какой вариант sha используется? sha2 или sha3? И это только что-то из известных.
Как и: > «х» в ASCII русских символов.
Таблиц кодировок много разных... Опять упущен логически шаг, который приводит к неясности и перебору.
* Уцуцуга - задание-угадайка в CTF контесте. Обычно возникает т.к. автор пропустил какой-то логический шаг при реализации задачи.
Вопрос в возможностях - у указанных инструментов под капотом маленькие компиляторы таких правил с поддержкой разных фич (эти правила не "наголо" применяются на бинарные данные). Можно условные 120 рабочих часов допиливать свою тулзу, а можно за 10 изучить документацию и 110 уже работать непосредственно над проектом.
Я просто тоже проходил через этот этап и понял что готовые решения все же быстрее и проще использовать, тк основная задача - это решить задачу\проблему, а не заниматься программированием. (за исключением случаев, когда задача - что-то запрограммировать)
> возможностях интеграции с проектом
Ну так я и добавил упоминание kaitai для такого :) Зачем писать свой "транслятор" описания структур, если уже есть готовый и с широкими возможностями синтаксиса.
Бтв, если нужно будет что-то именно бинарное детектировать в трафике - можно использовать yara, она для таких задач и предназначена.
А зачем писать свой костыль? Есть же тот же 010Editor с C-подобным описанием структур для парсинга. Ну или фиг с ним - он платный, тогда можно использовать ImHex и тоже для него написать DataProcessor.
Если хочется все же свой фронт/свой пайплан - то можно натянуть kaitai как нужно.
Напишите "Кузнечик" (ГОСТ 34.12) в таком же стиле и сравните производительность, ради интереса. Можно нулей нагенерировать из /dev/zero на пару гигабайт и на них тестить.
Тем не менее хэши можно восстановить. Тот же Base64 декодируется без особых проблем.
Каким образом можно было в один абзац поместить сообщение про восстановление хэшей и Base64?) Тем более в контексте того, что надо применять (желательно) криптографические хэш-функции...
Респект за обзор архитектуры сети, это полезно ребятам, которым только предстоит делать свои первые CTF-ивенты.
Но какая же это дичайшая уцуцуга*, так не надо делать
> На главной странице задания есть условие, что блюдо должно быть приготовлено на 256 градусах. Берем строку «the‑best‑grill‑in‑the‑whole‑world» и считаем для нее хэш sha256
Упущен логический шаг перехода к взятию хэша и с точки зрения участника этот шаг не очевидн. Да и почему именно саша? У нас еще из 256 битовых есть и RIPEMD, и Keccak-256 etc. Да и какой вариант sha используется? sha2 или sha3? И это только что-то из известных.
Как и:
> «х» в ASCII русских символов.
Таблиц кодировок много разных... Опять упущен логически шаг, который приводит к неясности и перебору.
* Уцуцуга - задание-угадайка в CTF контесте. Обычно возникает т.к. автор пропустил какой-то логический шаг при реализации задачи.
Пользуюсь phq полгода, виртуалка в Нидерландах, оплачиваю с тинька. Если хочется поразвлекаться на выходных - можно поднять виртуалку с астрой :D
Для IDA то же самое делает выделение нужных байт (или поставить курсор на имя данных) и нажать SHIFT+E
Вопрос в возможностях - у указанных инструментов под капотом маленькие компиляторы таких правил с поддержкой разных фич (эти правила не "наголо" применяются на бинарные данные). Можно условные 120 рабочих часов допиливать свою тулзу, а можно за 10 изучить документацию и 110 уже работать непосредственно над проектом.
Я просто тоже проходил через этот этап и понял что готовые решения все же быстрее и проще использовать, тк основная задача - это решить задачу\проблему, а не заниматься программированием. (за исключением случаев, когда задача - что-то запрограммировать)
> возможностях интеграции с проектом
Ну так я и добавил упоминание kaitai для такого :) Зачем писать свой "транслятор" описания структур, если уже есть готовый и с широкими возможностями синтаксиса.
Бтв, если нужно будет что-то именно бинарное детектировать в трафике - можно использовать yara, она для таких задач и предназначена.
А зачем писать свой костыль? Есть же тот же 010Editor с C-подобным описанием структур для парсинга. Ну или фиг с ним - он платный, тогда можно использовать ImHex и тоже для него написать DataProcessor.
Если хочется все же свой фронт/свой пайплан - то можно натянуть kaitai как нужно.
Напишите "Кузнечик" (ГОСТ 34.12) в таком же стиле и сравните производительность, ради интереса. Можно нулей нагенерировать из /dev/zero на пару гигабайт и на них тестить.
Иронично, что замена "Врачи/Медицина" => "Программисты/IT" органично смотрится :D
Особенно если это касается области инфосека - тут специалистов с прямыми руками хантят постоянно, а без "огонька" в глазах тут делать нечего.
Так там есть. Чуть правее и ближе к краю на официальном фото
Каким образом можно было в один абзац поместить сообщение про восстановление хэшей и Base64?) Тем более в контексте того, что надо применять (желательно) криптографические хэш-функции...