Спецпроекты

В рассекреченной платформе АНБ для поиска уязвимостей нашли собственную «дыру»

ПО Свободное ПО Безопасность ИТ в госсекторе

Стоило только АНБ опубликовать в открытом доступе исходники своей платформы Ghidra, как в ней начали находить ошибки. Ради этого, видимо, код и публиковался.

Удаленная эксплуатация...

Эксперт по информбезопасности обнаружил критическую уязвимость в платформе Агентства национальной безопасности США (АНБ) Ghidra. Уязвимость позволяет запускать в ней произвольный код удаленно.

Ghidra представляет собой написанный на Java кросс-платформенный фреймворк, предназначенный для обратного инжиниринга (исследования) готового программного обеспечения и поиска уязвимостей. О существовании этой системы впервые стало известно в 2017 г., когда ресурс WikiLeaks в рамках кампании Vault 7 слил большой объем непубличных данных о хакерском инструментарии ЦРУ и методах его использования. Среди этих документов упоминается и Ghidra.

В марте 2019 г. АНБ опубликовало исходный код Ghidra, сделав таким образом некогда секретную платформу публичным достоянием.

anb600.jpg
В платформе для обратной разработки АНБ нашли критическую уязвимость

«Вероятнее всего, АНБ надеется максимально усовершенствовать код Ghidra с помощью сообщества open source, — считает Анастасия Мельникова, эксперт по информационной безопасности компании Sec Consult Services. — Очистить от "багов", усовершенствовать код, насколько возможно, и сделать весь фреймворк инструментом, способным конкурировать с другими аналогичными решениями. Судя по популярности пакета, эти надежды не напрасны».

...сторонних специалистов

Естественно, этот код привлек самое пристальное внимание со стороны всевозможных экспертов по информационной безопасности, и вполне ожидаемым образом в ней начали находиться уязвимости.

В частности, эксперт под ником sghctoma выявил XXE-уязвимость (XML External Entity), которая позволяет запускать удаленный код в системе с установленной на ней Ghidra. Речь, впрочем, идет только о Windows.

Уязвимость непосредственно содержится в процедуре открытия или восстановления проекта внутри Ghidra. Злоумышленнику потребуется создать специальный проект, загрузить в него XXE-эксплойт в любой XML-файл, располагающийся в директории проекта, а затем каким-либо образом заставить потенциальную жертву открыть этот проект.

Со своей стороны, эксперты Tencent Security подтвердили, что таким образом можно обеспечить запуск произвольного кода в целевой системе. Учитывая, что Ghidra написана на Java, потенциальный злоумышленник может воспользоваться особенностями этого языка, а также - слабыми местами в протоколе NTLM в Windows. Например, злоумышленник может создать HTTP-сервер с NTLM-авторизацией, а затем использовать уязвимость XXE/SSRF для того, чтобы получить от машины жертвы NTLM-хеш и таким образом запускать произвольный код.

Проблему можно частично решить блокировкой SMB-запросов файерволлом Windows или активацией цифровой подписи SMB. Также рекомендовано обновиться до последней версии JDK.

В ближайшее время разработчики обещают выпустить версию 9.0.1, в которой данная проблема будет устранена.



Профиль месяца

Искусственный интеллект стал полумифическим понятием

Сергей Поляков

ИТ-директор Альфа-Банка

Взгляд месяца

Идея внутренней разработки себя не оправдала

Наталия Оржевская

директор центра управления командами, «Диасофт»