На конференции по импортозамещению появился новый игрок. На их стенде мы взяли демо новой программы для защиты каналов связи между ПЛК, но за ключ активации они попросили $1337... Я видел как их прогеры активно ругались на дедлайны рядом со стендом, может быть с их демо что-то не так? Да и вообще похоже на какой-то обман, надо бы проверить что там внутри.
Архив plc_demo.zip
Крякмиха, где разные куски флага проверяются простым кодом для различных архитектур при помощи Unicorn Engine.
- Открыть бинарь
- Найти точку входа, откуда можно начать реверсить.
- Бинарь весь пострипаный и статически линкованный, но нам не нужно определять все функи - основных будет достаточно.
- Собственно, когда определили большую часть стандартных фунок uc (я не знаю как это подробнее описать, 2 часа сидим и смотрим в иду?) понимаем что у нас запускается три куска кода - под mips, powerpc и spark32.
- Дальше я вижу два пути решения а) Раскурить код, который эмулируется - например используя иду или этот сайт б) Переписать эмуляцию под питон\си и просто набрутить куски флага. Это будет проще, если вы раскурили всю логику настройки и запуска эмуляции (ну или почитали доки).