Исследователи из Huntress обнаружили целенаправленную атаку, в которой злоумышленники эксплуатировали SQL-injection уязвимость в публичном веб-приложении для проникновения в Oracle базу данных. Самое интересное — они не загружали никакие исполняемые файлы на диск. Вместо этого они внедрили Java-код прямо в базу данных, позволив Oracle скомпилировать его в объекты схемы, и затем выполняли команды изнутри самого механизма базы данных.
Уязвимость находилась в поле автодополнения поиска приложения, которое передавало неэкранированные данные в базу через JDBC-соединение. Учётная запись, используемая этим соединением, имела достаточные привилегии для создания Java-объектов. Атака была обнаружена 27 июля 2026 года после срабатывания детекторов кражи учётных данных. В результате злоумышленники получили доступ на уровне SYSTEM к базовому Windows-серверу.
Инструментарий, отслеживаемый как khunt, состоял из шести Java-объектов и нескольких PL/SQL-обёрток. KhuntCmd загружал cmd.exe для выполнения произвольных команд операционной системы, KhuntHash извлекал хэши паролей из внутренней таблицы пользователей Oracle, KhuntFS работал с файловой системой, а KhuntUnzip распаковывал архивы. Хотя такая техника известна уже более двух десятилетий (впервые задокументирована в 2006 году), её использование в реальных атаках документируется редко.
Опасность этого подхода в том, что скомпилированный Java-класс в объекте схемы не является процессом, бинарным файлом или файлом в файловой системе. Стандартные инструменты обнаружения угроз (EDR) обычно не заглядывают внутрь Oracle, поэтому база данных из источника запросов превращается в плацдарм для атак. Huntress рекомендует искать объекты с именами, начинающимися на Khunt, и записи в SQL-логах с KHUNT%.
Для защиты необходимо использовать параметризованные запросы и валидацию входных данных в приложении, а также принцип минимальных привилегий: учётная запись для публичного приложения не должна иметь права создавать Java-источники или выполнять ненужные ей хранимые процедуры. Oracle не выпустила патч ни для исходной уязвимости приложения, ни для проблемы с привилегиями учётной записи.
По материалам The Hacker News
Комментарии