Хакеры спрятали инструментарий khunt внутри базы данных Oracle
Компания Huntress описала необычную атаку, обнаруженную 27 июля 2026 года: её платформа зафиксировала кражу учётных данных на сервере с базой Oracle. Разбор логов показал, что злоумышленники проникли в корпоративную сеть через уязвимость в публично доступном Java-приложении на Apache Tomcat.
Точка входа
Приложение неправильно проверяло данные, поступавшие через функцию автодополнения поискового запроса. Это позволило атакующим отправлять произвольные SQL-команды в базу Oracle. Вредоносные запросы Huntress связала с IP-адресом 178.162.151[.]229.
Инструментарий внутри СУБД
Самое любопытное — способ закрепления. Вместо того чтобы оставлять исполняемые файлы на сервере, атакующие поместили постэксплуатационный набор khunt прямо в базу данных как Java-объект. В Oracle есть встроенная виртуальная машина Java и инструкция CREATE JAVA SOURCE, которая позволяет хранить и компилировать Java-код как объект схемы. Такие объекты затем можно вызывать через SQL, а при соответствующей конфигурации — выполнять команды в операционной системе хоста. Huntress отмечает, что подобная техника в реальных атаках документировалась крайне редко.
Набор состоял из нескольких Java-компонентов и обёрток на PL/SQL:
- KhuntCmd — запускал cmd.exe и позволял выполнять команды ОС через SQL;
- KhuntHash — обращался к внутренней таблице пользователей Oracle и выгружал имена и данные паролей в файл;
- KhuntFS и KhuntFS2 — обеспечивали просмотр, чтение, поиск файлов и проверку их размера;
- KhuntT — работал как «пинг», подтверждая, что набор успешно установлен;
- KhuntUnzip — распаковывал сжатые файлы.
Что было дальше
Через KhuntCmd атакующие выполнили cmd.exe /c whoami и убедились, что команды, запущенные из базы, обладают привилегиями уровня SYSTEM на Windows-сервере. Затем с помощью PowerShell и штатных утилит они скопировали кусты реестра SAM, SECURITY и SYSTEM, из которых можно восстановить хеши паролей локальных учётных записей. Командой tasklist /svc они перечислили запущенные службы и сохранили вывод в файл khunttasks.txt.
Huntress предполагает, что кусты реестра выгружались для извлечения учётных данных, но подтвердить факт успешной кражи файлов отчёт не может.
Выводы
Основная рекомендация проста: проверять весь пользовательский ввод и ограничивать привилегии учётных записей, от имени которых приложения работают с базой. Аккаунты публичных приложений не должны иметь прав на создание Java-источников, выполнение лишних хранимых процедур и прочие административные действия — именно избыточные права превратили обычную SQL-инъекцию в полный контроль над сервером.
Источник: Bleeping Computer
Комментарии
Войдите, чтобы комментировать.