Открытый код от АНБ: Инструмент для реверс-инжиниринга Ghidra теперь в свободном доступе

Во вторник на конференции RSA в Сан-Франциско Агентство национальной безопасности (АНБ) заявило о том, что выложит в открытый доступ свой внутреннего инструмент под названием Ghidra (официальный сайт). Советник АНБ по кибербезопасности Роб Джойс назвал это «вкладом в сообщество специалистов по кибербезопасности».

Открытый код от АНБ: Инструмент для реверс-инжиниринга Ghidra теперь в свободном доступе

Ghidra — это платформа для реверс-инжиниринга, используемая декомпиляции программного обеспечения. Другими словами, он преобразует те нули и единицы, которые понимают компьютеры, обратно в понятную человеку структуру, логику и набор команд, которые показывают, как было спроектировано программное обеспечение.

Обратная разработка (реверс-инжиниринг) является критически важным процессом для аналитиков вредоносного ПО и специалистов по кибербезопасности, поскольку позволяет им работать в обратном направлении в исследовании программного обеспечения, которое они обнаруживают «в диких условиях», чтобы понять, как оно работает, каковы его возможности и кто это написал. Реверс-инжиниринг также является методом проверки собственного кода на наличие уязвимостей и подтверждения того, что он работает так, как задумано.

«Если вы уже занимались реверс-инжинирингом программного обеспечения, вы знаете, что это и искусство, и наука», — сказал Джойс. «Ghidra — это программный инструмент для реверс-инжиниринга, созданный для нашего внутреннего использования в АНБ. Мы не утверждаем, что он собирается заменить остальные инструменты для реверс-инжиниринга – это не так. Но он помог нам решить некоторые проблемы в наших рабочих процессах».

Сегодня на рынке существуют аналогичные инструменты для реверс-инжиниринга. Среди них наиболее популярным является платный дизассемблер и отладчик IDA. Но Джойс подчеркнул, что АНБ разрабатывает Ghidra в течение многих лет с учётом своих собственных реальных приоритетов и потребностей, что делает его мощным и особенно полезным инструментом. Цена IDA оправдана, но публикация исходного кода Ghidra означает, что впервые инструмент такого калибра будет доступен бесплатно. Джойс также отметил, что АНБ рассматривает выпуск Ghidra как стратегию вербовки, которая может упросить найм новых сотрудникам АНБ.

АНБ объявило о выступлении Джойса в RSA и о скорой публикации Ghidra в начале января. Но об этом инструменте узнали ещё в марте 2017 года благодаря опубликованной утечке Vault 7, в которой были названы ряд инструментов для взлома, которые использовало ЦРУ, и неоднократно упоминались Ghidra. Однако сам код не был доступен до вторника — всего 1,2 миллиона строк. Ghidra работает на , и Linux.

Джойс подчеркнул настраиваемость инструмента и отметил, что он предназначен для облегчения совместной работы нескольких людей над одним и тем же проектом для реверса — эта функция не явлалсь приоритентной на других платформах. Также Ghidra предлагает убобный пользовательский интерфейс и функции, призванные сделать реверсирование настолько простым, насколько это возможно (учитывая, насколько утомительным и сложным может быть этот процесс).

АНБ уже вносило свой вклад в открытое ПО — например, создало несколько инициатив по обеспечению безопасности Linux и (также у АНБ есть свой аккаунт на ). Интересно , что после публикации Ghidra британец Мэтью Хики нашёл уязвимость в реализации отладочного режима. Специалист отметил, что исправить эту проблему довольно просто, а другие уже начали шутить, что АНБ для этого и выложила Ghidra в открытый доступ — исправить побольше багов.

Джойс подчеркнул, что это серьезный вклад в кибербезопасность, и что теоретики заговора могут быть спокойны.

«В Ghidra нет бэкдора», — сказал он. «Да ладно вам, никаких бэкдоров. Для протокола. Слово скаута».