Випуск платформи динамічного трасування програм Frida 12.10

представлений випуск платформи динамічного трасування та аналізу додатків Фріда 12.10, який можна розглядати як аналог Greasemonkey для нативних програм, що дозволяє контролювати роботу програми під час її виконання також, як Greasemonkey дає можливість контролювати обробку веб-сторінок. Трасування програм підтримується на платформах Linux, Windows, MacOS, Android, iOS і QNX. Вихідні тексти всіх компонентів проекту поширюються під вільною ліцензією wxWindows Library Licence (Варіант LGPL, що не накладає обмежень на умови поширення бінарних збірок похідних робіт).

За вирішеним завданням Frida нагадує DTrace у просторі користувача, але для написання скриптів для трасування та обробки статистики виконання програми використовується мова JavaScript. Обробники мають повний доступ до пам'яті процесу, можуть перехоплювати звернення до функцій та викликати реалізовані в додатку функції JavaScript-коду. Базові компоненти Frida написані з використанням мов Сі та Vala. Для обробки JavaScript застосовується двигун V8. Є обв'язки над API Frida для Node.js, Python, Swift, .NET, Qt/Qml та C.

У новому випуску суттєво розширено можливості з налагодження, трасування та зворотного інжинірингу Java-програм — у модуль frida-java-bridge додано підтримку HotSpot JVM, яка дозволяє застосовувати цей прошарок не тільки для Android, але для звичайних Java-програм, що використовують JDK. В утиліту frida-trace додано трасування методів Java. Для визначення виконання Java-методів, які відповідають певним критеріям, запропоновано новий API Java.enumerateMethods(query). Запити для перехоплення методів задаються у формі "class!method". З не пов'язаних з Java змін відзначається поліпшення підтримки 32-розрядних систем ARM в двигуні трасування Сталкер та реалізація адаптивної оптимізації, яка дозволила до п'яти разів прискорити виконання Stalker.

Джерело: opennet.ru

Додати коментар або відгук