ASEC (AhnLab Security Emergency response Center) недавно обнаружил распространение вредоносной программы Netcat, нацеленной на плохо управляемые серверы MS-SQL. Netcat - это утилита, которая позволяет пользователям отправлять и получать данные из определенных пунктов назначения в сети, соединенной протоколом TCP/UDP. Благодаря своим разнообразным функциям и возможности использования как в Linux, так и в Windows, она используется как сетевыми менеджерами, так и субъектами угроз.
Случаи атак Netcat, направленных на серверы MS-SQL (LOLBins)
С точки зрения вредоносного ПО, особенностью Netcat является его способность использоваться в качестве удаленной оболочки. Удаленные оболочки предоставляют оболочку для целевых систем, позволяя субъектам угроз получить контроль над этими системами. Например, внешний угрожающий агент может использовать Command Prompt для выполнения нужных ему команд на целевых системах в среде Windows.
Удаленный shell можно разделить на bind shell и reverse shell в зависимости от метода взаимодействия. Связывающие оболочки открывают определенный порт на зараженной системе и остаются в режиме ожидания до тех пор, пока агент угрозы не подключится к порту, где он затем предоставит оболочку. Обратные оболочки открывают определенный порт на системе агента угрозы, прежде чем получить доступ к этому порту с зараженной системы.
Связывающие оболочки просты в использовании, но из-за их внешнего подключения они могут быть легко обнаружены брандмауэрами и продуктами безопасности. Еще одним недостатком является тот факт, что внешний доступ становится невозможным при использовании в среде NAT (Network Address Translation). Поскольку обратная оболочка заставляет зараженные системы подключаться извне на начальном этапе взаимодействия, этих проблем не существует. Именно поэтому обратная оболочка используется в большинстве атак.
Плохо управляемые серверы MS-SQL обычно относятся к тем, которые открыты для внешних подключений и имеют простые учетные данные, что делает их уязвимыми для атак методом грубой силы или по словарю. Если субъекту угрозы удастся войти в систему, контроль над ней будет передан ему, что позволит установить вредоносное ПО или выполнить вредоносные команды.
Кроме того, MS-SQL может быть установлен как на серверах Windows, так и в настольных средах. Например, бывают случаи, когда MS-SQL устанавливается вместе с некоторыми ERP и решениями рабочего назначения в процессе их установки. Поэтому серверы Windows и настольные среды Windows могут быть объектами атак на MS-SQL Server.
Система, которая в настоящее время является объектом анализа, представляет собой среду, в которой был установлен внешний сервер MS-SQL и предполагается, что учетные данные учетной записи не соответствуют требованиям. В связи с этим различные субъекты угроз уже получили учетные данные системы. Кроме того, были обнаружены многочисленные журналы, показывающие попытки установки Remcos RAT и tzw ransomware.
Однако недавно обнаруженные атаки отличаются от этих массовых кампаний нападения тем, что набор инструментов постоянно используется на конкретных целях до тех пор, пока атака не увенчается успехом. Агент угрозы устанавливал и запускал многочисленные вредоносные программы в каталоге "D:\DB\". Большинство используемых инструментов - это инструменты, созданные китайскими разработчиками и опубликованные на GitHub. Этой информации недостаточно, чтобы точно определить исполнителей угрозы, но, по крайней мере, можно с уверенностью сказать, что они знакомы с китайским языком.
Угрожающий агент сначала попытался получить контроль над зараженными системами с помощью нескольких экземпляров Cobalt Strike. Однако они не смогли работать должным образом, поскольку выполнение Cobalt Strike было заблокировано продуктом V3. После этого были созданы дополнительные версии Cobalt Strike, которые использовались в последующих атаках. Cobalt Strike, используемый агентом угрозы, представляет собой HTTPS Stager, который загружает бэкдор, Beacon, с C&C-сервера, прежде чем выполнить его в памяти.
После неудачи с установкой Cobalt Strike угрожающий агент попытался использовать Netcat для установки обратной оболочки. Предполагается, что угроза использовала Netcat вместо Cobalt Strike, более простого в использовании инструмента, потому что не могла получить контроль над зараженной системой из-за постоянной блокировки V3.
Среди установленного вредоносного ПО есть инструмент повышения привилегий под названием RasmanPotato.
RasmanPotato - это инструмент с открытым исходным кодом, опубликованный на GitHub, и представляет собой штамм вредоносного ПО, использующий службу RasMan для эскалации привилегий.
Существуют различные типы вредоносных программ Potato, такие как JuicyPotato, BadPotato и SweetPotato. Все они способны повышать привилегии, используя определенные привилегии от токенов учетных записей, принадлежащих запущенным процессам. Вредоносные программы Potato в основном используются в атаках на WebShells и серверы MS-SQL. Это связано с тем, что даже если эти процессы могут выполнять команды агента угрозы из-за уязвимостей или несоответствующих настроек, по умолчанию они работают с низкими привилегиями, поэтому вредоносные программы, работающие с привилегиями этих процессов, ограничены в возможности выполнять дополнительные вредоносные действия.
Был обнаружен журнал, в котором агент угрозы использовал следующую команду для проверки привилегий текущего процесса, чтобы убедиться, что повышение привилегий было выполнено должным образом после установки RasmanPotato.
1 | d:/db/rasman.exe -c whoami |
SharpDecryptPwd - это инструмент командной строки, который собирает и отображает учетные данные учетных записей. Если на зараженной системе установлены такие программы, как Navicat, TeamViewer, FileZilla, WinSCP, Xmanager (Xshell, Xftp) и т.д., которые сохраняют часто используемые учетные данные пользователя в конфигурационном файле, то SharpDecryptPwd может расшифровать и отобразить эти учетные данные.
После получения контроля через Netcat, угроза установила прокси-инструмент под названием Stowaway. Угрожающие субъекты обычно устанавливают прокси-инструменты для доступа к внутренним сетевым средам, к которым трудно получить прямой доступ извне. Похоже, что угрожающий агент установил Stowaway, чтобы также атаковать другие системы, находящиеся в той же сети, что и зараженная система.
Кроме того, последний аргумент, "qaxnb", не является фактическим аргументом, используемым в Stowaway. Это строка, используемая для проверки упаковщиком Stowaway. Если эта строка не включена в качестве 5-го аргумента, никаких действий не производится, и упаковщик останавливается на этом.
Более того, этот упаковщик предлагает дополнительные методы, помимо этого, чтобы затруднить обнаружение и анализ. Во-первых, он декодирует загруженный в память участок кода NTDLL в оригинальный код NTDLL. Это делается для того, чтобы удалить крючок, установленный продуктами безопасности для обхода обнаружения на основе поведения.
Помимо этого, существует также процедура, которая исправляет функцию EtwEventWrite() для отключения функции ETW (Event Tracing for Windows). ETW - это механизм отслеживания событий, предоставляемый Windows и часто используемый продуктами безопасности для обнаружения вредоносного ПО. Этот пакет исправляет функцию EtwEventWrite() так, чтобы она завершалась сразу после вызова, чтобы предотвратить отправку событий, выполняемых вредоносным ПО, в Windows.
После того как Cobalt Strike не удалось установить, агент угрозы попытался установить Netcat, чтобы получить контроль над зараженной системой. Если быть более точным, Netcat выполнялся с помощью метода обратной оболочки. При правильном выполнении агент угрозы мог выполнять вредоносные команды через cmd, командную строку.
Однако команда Netcat, выполняемая агентом угрозы, была заблокирована и не выполнялась корректно. Затем агент угроз запустил Netcat, выполнив FTP вместо shell или cmd после того, как связался с сервером C&C следующим образом. Обычно cmd используется в опции e программы Netcat. Это связано с тем, что для работы в качестве удаленной оболочки связь с C&C-сервером должна быть передана программе, отвечающей за функциональность оболочки.
Хотя конкретный пакет не был найден, предполагается, что агент угрозы использовал FTP через метод LOLBins (Living Off the Land Binaries and Scripts). LOLBins относятся к инструментам, которые по умолчанию включены в операционные системы. Эти инструменты могут быть использованы для вредоносных целей, таких как выполнение или загрузка других вредоносных программ. Последние продукты безопасности предлагают обнаружение на основе поведения в дополнение к обнаружению на основе файлов, поэтому более простые процессы выполнения приводят к более легкому обнаружению. В результате субъекты угроз могут обойти обнаружение продуктов безопасности на основе поведения, используя LOLBins для выполнения или загрузки вредоносного ПО.
Программа "ftp.exe", предоставляемая Windows, выполняет функции, которые обычно ожидаются от FTP-клиентов, но она также предлагает возможность использовать команду "!". "!" - это команда, которая позволяет использовать командные строки в FTP. Если она используется, это позволяет субъектам угроз запускать cmd через FTP вместо того, чтобы делать это напрямую. Используя эту специфическую функцию FTP-клиента, субъекты угроз могут выполнять cmd через FTP вместо Netcat, что позволяет обойти простое обнаружение на основе поведения.
Типичные атаки на серверы MS-SQL включают в себя атаки методом перебора и атаки по словарю на системы, в которых плохо контролируются учетные данные. Администраторы также должны использовать пароли, которые невозможно легко угадать, и периодически менять их, чтобы защитить серверы баз данных от атак методом перебора и по словарю.
Indicators of Compromise
IPv4 Port Combinations
- 107.175.111.199:58000
- 107.175.111.199:8081
- 107.175.111.199:8083
URLs
- 107.175.111.199:52443/bootstrap-2.min.js
- ccbsec.ccb.fyi:443/api/info
- ccbsec.ccb.fyi:443/bootstrap-2.min.js
MD5
- 21c2d9e1586d7fb7ac6fe8174a966513
- 3cdc614b55c9426a73fcfc194f3c13bc
- 4d3e3dab638640e4995357d6df2ea131
- 5ffad0ca02a426664249e9b9c0a2a122
- 6ca5c7421c246efeb938eb73d3a93dd0
- 7cc986338d60af5f2b0f1a17d5ed0542
- 844a9d708d3beb530b18d9ed7f3490a3
- d16c0494d4ad7cf0c353eafe38985c7d
- deb07c605672a5b37873c2377cba1c09