306просмотров
68.6%от подписчиков
12 декабря 2025 г.
📷 ФотоScore: 337
🧰 Ghidra-плагин декомпиляции Native AOT бинарей .NET 🧵 Детальный write-up по реверсу нового формата Ahead-Of-Time компиляции .NET-приложений в экосистеме MS (добавлен в .NET 8) - Native AOT, генерирующий полностью "нативный" статически слинкованный бинарь (без подгрузки ВМ .NET - CLR) В статье: — 📚 расписана база по AOT-компиляции (концепт в целом старый, ещё в .NET Framework под Windows были AOT скомпилированные Native Images) — 🧠 приведён реверс формата специальных структур, хранящих метаинформацию о типах в NativeAOT собранном приложение (dehydrated таблицы с таблицами методов классов + замороженными объектами). Формат таблицы интересный - на базе небольшого языка преобразования буфера из нескольких команд (ревёрс в целом не очень сложный, т.к. .NET Core - Open Source) — 🧰🐉 описаны детали разработанного плагина для Ghidra, анотирующего проект с помощью информации из распаршенной dehydrated таблицы — 🧰 плагин выложен в Open Source (2 года отлеживался у автора в private репозитории) 🔽🔽🔽