
CVE-2025-31324 & CVE-2025-42999 — инструмент оценки уязвимостей и компрометации
Onapsis и Mandiant объединили усилия, чтобы выпустить инструмент с открытым исходным кодом, который помогает заказчикам SAP выявлять потенциальную компрометацию, связанную с CVE-2025-31324 и CVE-2025-42999, критической 0-day уязвимостью в системах SAP NetWeaver Java.
Инструмент предназначен для локального выполнения по принципу «белого ящика» системными администраторами, имеющими доступ к потенциально затронутым средам. Он поддерживает оценку уязвимостей, простую оценку компрометации и сбор артефактов.
В настоящее время инструмент поддерживает следующие функции:
ИНФОРМАЦИЯ О ЛИЦЕНЗИИ: Этот инструмент выпущен под лицензией с открытым исходным кодом Apache 2.0. См. прилагаемую информацию о лицензии.
ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: Этот инструмент был разработан для поддержки срочных расследований и реагирования, связанных с активной эксплуатацией CVE-2025-31324 и CVE-2025-42999. По состоянию на 6 июня 2025 года инструмент больше не находится в активной разработке и не сопровождается. Он остаётся доступным для будущей отладки и справочных целей; однако он не получит дальнейших обновлений, улучшений или постоянной поддержки. Пользователям следует оценить его применимость исходя из текущих потребностей и использовать на собственное усмотрение.
Этот инструмент автоматизирует проверку информации об уязвимостях и IOC в работающей операционной системе с правами пользователя, выполняющего скрипт. Это НЕ замена криминалистическому анализу или расширенному реагированию на инциденты. Искушённые злоумышленники часто удаляют следы своего вторжения, развёртывая руткиты и используя методы обхода обнаружения.
Инструмент предоставляется как есть, без каких-либо гарантий и ответственности. Используйте на свой страх и риск.
Скрипты разработаны на Python 3 и требуют установки следующих зависимостей:
python3 -m venv .venv
. .venv/bin/activate
pip install -r requirements.txt
После установки зависимостей вы можете использовать Python для запуска скриптов и получения справки из командной строки.
# Синтаксис: python3 <tool_name>.py <path> [--single] [--offline]
Параметры сканирования:
<path> --- Указывает корневой каталог файловой системы приложения SAP, которую вы хотите просканировать. Это должна быть база SAP-системы — либо из смонтированной резервной копии, либо из работающей среды.--single --- Выполняет сканирование отдельного каталога SID/Instance (не корневого или базового каталога SAP с несколькими системами или инстансами)--offline --- Запуск без подключения к интернету (без проверки обновлений через GitHub API)Полный список параметров и флагов командной строки можно получить с помощью параметра --help.
[!IMPORTANT] Этот инструмент сканирует файлы в файловой системе JAVA-сервера, как указано в SAP Security Note 3593336:
C:\usr\sap\<SID>\<InstanceID>\j2ee\cluster\apps\sap.com\irj\servlet_jsp\irj\rootC:\usr\sap\<SID>\<InstanceID>\j2ee\cluster\apps\sap.com\irj\servlet_jsp\irj\workC:\usr\sap\<SID>\<InstanceID>\j2ee\cluster\apps\sap.com\irj\servlet_jsp\irj\work\syncЕсли указанный путь является корневой файловой системой работающей системы (например,
/илиC:\), инструмент будет ожидать стандартный каталог установки SAP/usr/sap. Затем инструмент по умолчанию просканирует все подкаталоги<SID>/<INSTANCE>/(с использованием подстановочных знаков).При частичном сканировании используйте
--singleи укажите полный путь к папке инстанса, содержащей каталогj2eeSAP Java.
[!CAUTION] Эта конструкция предназначена для сканирования всех возможных подозрительных файлов во всех SID / инстансах, избегая при этом ошибочного обнаружения известных файлов. Любой файл за пределами этой стандартной структуры папок не будет обнаружен, и будет выдана ошибка, если подкаталог
j2eeне найден.Манифест компонента также ожидается в стандартном подкаталоге
j2ee/cluster/apps/sap.com/devserver_metadataupload_ear/. Если он не найден, анализ на предмет уязвимых незапатченных версий проводиться не будет.Ожидаемый путь к журналам:
j2ee/cluster/<SERVER>/log/system/httpaccess/, с файлами с именамиresponsesи расширениемtrcдля проприетарного формата журналов SAP. Суффикс-clfожидается для файлов в Common Log Format. Если он не найден, будет выдано сообщение об ошибке/предупреждении.
Смонтированная файловая система в /mnt/sapserver (компонент уязвим, сканирование одного инстанса для SID J00):
python3 onapsis-mandiant-CVE-2025-31324-vuln-compromise-assessment.py /mnt/sapserver/usr/sap/SID/J00 --single