Реверс-інжиніринг (reverse engineering) це процес розбору готового продукту, щоб зрозуміти його внутрішню будову й логіку, коли вихідного коду немає. У безпеці це аналіз скомпільованих застосунків, мобільних APK, шкідливого ПЗ або мережевих протоколів.
Де застосовується в безпеці
- Тестування мобільних застосунків: декомпіляція APK, аналіз smali та Java, відновлення недокументованого API
- Аналіз шкідливого ПЗ: що воно робить і як його виявити
- Пошук секретів і логіки, захованих у клієнті, які помилково вважали недосяжними
Приклад
Мобільний застосунок спілкується з сервером по закритому API. Реверсом APK можна відновити, які саме запити він шле, і далі тестувати ці ендпоінти напряму, минаючи сам застосунок. Часто саме там знаходяться авторизаційні діри.
Інструменти
Для Android це jadx і apktool для розбору, Frida й Objection для роботи в рантаймі, наприклад для обходу SSL pinning. Для мережі перехоплюючий проксі на кшталт Burp Suite.
