You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
368 lines
30 KiB
368 lines
30 KiB
ПРЕДИСЛОВИЕ
|
|
|
|
Назначение документа - дать быстрое погружение в процесс взлома компьютеров и сетей;
|
|
аудитория - не имеющие такого опыта ИТ-специалисты, с опытом системного программирования и администрирования.
|
|
|
|
|
|
ЛАНДШАФТЫ СЕТЕЙ
|
|
|
|
Любую (почти) современную сеть можно взломать.
|
|
Это обусловлено:
|
|
- избыточностью сетей: наличие множества сервисов, разных точек входа в одну и ту же сеть;
|
|
- приоритетом удобства над безопасностью: тюрьма безопасна, но в ней очень трудно что-то делать;
|
|
- человеческим фактором: ошибки конфигурации, социальная инженерия.
|
|
Второй пункт усиливается ощутимой реакцией прибыли на малейшие замедления оборачиваемости в коммерческом секторе,
|
|
так что без перехода на военные рельсы сети капитализма всегда будут дырявые)
|
|
https://habr.com/ru/company/selectel/blog/576482/
|
|
|
|
Если в найденных точках входа нет *известных* уязвимостей, это значит лишь, что
|
|
- нужно искать другие точки входа;
|
|
- нужно искать уязвимости самому (если уж очень нужно попасть в сеть);
|
|
- нужно искать человека;
|
|
- нужно искать другую цель с той же информацией.
|
|
|
|
Хорошо защищают сети те организации, которым государство выставляет требования по защите.
|
|
Это необязательно военные сети или режимные учреждения: если вы храните у себя ФИО и личные данные клиентов,
|
|
то вы обязаны провести мероприятия по их защите. Защита же коммерческой тайны - "ваши" проблемы.
|
|
|
|
Ценность цели часто обратно пропорциональна её защите.
|
|
В военных сетях могут оказаться списки кальсонов за 196х год (что полезно для военных аналитиков),
|
|
а в слабо защищенной коммерческой сети, или на личном ноутбуке, могут быть важнейшие фарм/ИТ/инженерные разработки.
|
|
|
|
Но это не всегда так.
|
|
Есть суперкрепости внутри плохо защищенных сетей, взять которые может либо разносторонняя команда, либо хакер экстра-класса.
|
|
Такие сценарии обычны в Standoff'ах (Hack The Box etc) для белых шляп.
|
|
Если вы не хакер экстра-класса, используйте смекалку (уроните сервер и словите в сети/закейлогьте пароль, отдайте задачу на аутсорс, итд)
|
|
|
|
|
|
ТЕХНИКА, ТАКТИКА И СТРАТЕГИЯ
|
|
|
|
- стратегия: зачем нам нужен взлом? что искать, какие цели выбрать? *
|
|
- тактика: порядок действий вне и внутри сети, ведущий нас к достижению цели;
|
|
- техника: -скандалы-интриги-расследования- инструменты, уязвимости, исследования.
|
|
|
|
(*очень неполная иллюстрация https://habr.com/ru/company/cloud4y/blog/551376/ ориентация на мелкую коммерцию)
|
|
|
|
Все три уровня в умелых руках - от выбора цели, разведки, реализации и тестирования эксплойтов, к накрытию цели и призу:
|
|
https://gist.github.com/jaredsburrows/9e121d2e5f1147ab12a696cf548b90b0
|
|
|
|
|
|
РАЗВЕДКА И ВЫБОР ЦЕЛИ
|
|
|
|
Если нету цели войти в какую-то конкретную сеть, и у вас есть эксплойт - используется сканирование Сети
|
|
(всего интернета или интересных диапазонов) в поисках уязвимых сервисов.
|
|
Если некогда, поможет известный сервис shodan.io, но лучше чтобы был свой сканер.
|
|
|
|
При точечной атаке (конкретный объект) требуется разведка.
|
|
Можно начинать с анализа доменной зоны компании и ее публичных сервисов.
|
|
У крупных корпораций с огромными сетями обычно есть свои автономные системы (AS, Autonomous System), с известным диапазоном сетей.
|
|
Картировать минимум часть внешних сервисов можно используя WHOIS (https://hackertarget.com/whois-lookup/) и DNS (https://habr.com/ru/post/554458/),
|
|
а также стремление сетевых администраторов к поддержанию иерархичности в описании доменных зон.
|
|
|
|
Есть поисковики-разведчики наподобие https://www.zoominfo.com с общей и подробной информацией о компаниях.
|
|
|
|
Далее ищется слабое звено (см.ниже).
|
|
|
|
Социнженерия требует знаний о персоналиях.
|
|
Важно все: номера телефонов, место жительства, имя собаки, родной город, любимый цвет, любимая группа, хобби.
|
|
Особая важность: личная сеть контактов вашего кандидата, в особенности бизнес-контакты.
|
|
Структура организаций отражает структуру общества.
|
|
Передвигаясь от одного человека к другому по сети контактов, вы можете менять точку входа внутри одной сети, либо открывать новые сети.
|
|
Для сбора информации используются как средства разведки OSINT,
|
|
так и найденная в ранее открытых сетях информация о контактах (адресные книги Outlook, переписка, итд).
|
|
Разведка для соц.инженерии называется доксинг: https://securelist.ru/corporate-doxing/101055/
|
|
|
|
Далее эти данные используются либо с помощью фишинговых писем, либо с помощью звонков.
|
|
В обоих случаях нагрузку запускает человек.
|
|
|
|
Набор инструментов OSINT
|
|
* Поисковики широкого спектра
|
|
https://github.com/laramies/theHarvester - сбор email-адресов, субдоменов, виртуальных хостов, открытых портов/баннеров, имён сотрудников из открытых источников.
|
|
https://github.com/Bafomet666/OSINT-SAN OSINT-SAN - комбайн широкого профиля
|
|
https://mor-pah.net/software/dmitry-deepmagic-information-gathering-tool/ - Dmitry - аналог предыдущего инструмента
|
|
https://github.com/0xInfection/TIDoS-Framework - универсальный фреймворк с возможностью анализа сетей (DNS, whois, emails)
|
|
https://github.com/smicallef/spiderfoot
|
|
https://osintframework.com/ - рубрикатор инструментов OSINT, общий поиск по соц. сетям, большой набор разных инструментов для поиска:
|
|
https://hunter.io/ - сбор инфо о email по имени домена
|
|
https://hackertarget.com/
|
|
|
|
* Поисковики по компаниям
|
|
https://www.zoominfo.com - поисковик данных о компаниях
|
|
https://opencorpdata.com/ - Open corporate business database
|
|
https://domainbigdata.com/ - big database of domains and whois records
|
|
https://opencorporates.com/ - largest open database of companies in the world
|
|
https://www.sec.gov/edgar/searchedgar/cik.htm - EDGAR Company Filings | Central Index Key Lookup
|
|
http://www.orsr.sk/search_osoba.asp?lan=en - Business register | Ministry of Justice of the Slovak Republic
|
|
Больше инструментов в статье https://habr.com/ru/company/pentestit/blog/554006/
|
|
|
|
* Поиск по USERNAME/NICKNAME:
|
|
https://namechk.com/
|
|
https://github.com/snooppr/snoop
|
|
|
|
* Поиск по EMAIL:
|
|
https://haveibeenpwned.com/
|
|
https://hacked-emails.com/
|
|
https://ghostproject.fr/
|
|
https://weleakinfo.com/
|
|
https://pipl.com/
|
|
https://leakedsource.ru/
|
|
http://mailtester.com/ - E-mail address verification
|
|
Приложение "Skype"
|
|
|
|
* Поиск по номеру телефона:
|
|
https://phonenumber.to
|
|
https://pipl.com/
|
|
Приложение "GetContact"
|
|
Приложение "NumBuster"
|
|
Приложение "Truecaller" или сайт https://www.truecaller.com/
|
|
http://doska-org.ru/
|
|
Приложение "Skype"
|
|
|
|
* Картирование сетей
|
|
https://www.shodan.io/
|
|
https://spyse.com/
|
|
https://crt.sh/ - поиск субдоменов
|
|
https://archive.org/web/ - поиск в прошлом (просмотр сайтов на определенную дату)
|
|
https://viewdns.info/ - data about a given website or IP address
|
|
https://github.com/Fadavvi/Sub-Drill Simple script for finding subdomains based on [free] online services without any dependency to API-keys
|
|
https://builtwith.com/ - на чем сделан сайт
|
|
|
|
* Поиск местоположения базовой станции сотового оператора:
|
|
http://unwiredlabs.com
|
|
http://xinit.ru/bs/
|
|
|
|
* Поиск по соцсетям, несортированое
|
|
http://sanstv.ru/photomap - Получение фотографий из соц. сетей из локального района (по геометкам):
|
|
https://foller.me/ - Twitter Analytics
|
|
https://followerwonk.com/ - social analytics mega-tool that digs through Twitter data
|
|
https://tinfoleak.com/ - Search for Twitter users leaks
|
|
https://twicsy.com/ - Twicsy is social pics
|
|
https://www.spokeo.com/- iskat infu po USA.
|
|
https://github.com/jivoi/awesome-osint
|
|
|
|
* Литература
|
|
https://anonfiles.com/X0md34ycu1/Operator_Handbook_Red_Team_OSINT_Blue_Team_Reference_pdf
|
|
Bellingcat’s Online Investigation Toolkit - https://docs.google.com/document/d/1BfLPJpRtyq4RFtHJoNpvWQjmGnyVkfE2HYoICKOGguA/edit
|
|
|
|
* MITM/фишинговые сканеры (требуют взаимодействия с целью):
|
|
https://beefproject.com/
|
|
https://github.com/beefproject/beef BeeF для сбора информации о броузерах и их эксплуатации,
|
|
получения информации о сессиях в соцсетях, наличии TOR, посещения интересных сайтов итд.
|
|
https://github.com/kgretzky/evilginx2 - для перехват сессий и обход 2ФА на сайтах
|
|
|
|
|
|
В дальнейшем рассматриваем сети Windows.
|
|
Преимущество их эксплуатации в меньших усилиях по сравнению с эксплуатацией сетей Linux.
|
|
Проще открыть Windows-сегмент сети, и получить пароли/ключи админов для Linux-сегмента.
|
|
Обратное перемещение (Linux->Windows) значительно сложнее попросту из-за отсутствия необходимых инструментов в Linux.
|
|
|
|
|
|
ВЫБОР ТОЧКИ И СПОСОБА ВХОДА
|
|
|
|
Любой публично доступный сетевой сервис (открытый IP-адрес:порт) - это потенциальная точка входа.
|
|
Если пробиться не удается - значит в нем нет *известной* уязвимости.
|
|
Есть статистика, по которой определенные векторы более часты:
|
|
- узкопрофильное железо (принтеры, роутеры, умные файрволлы (роутероподобные железки с ф-ей файрволла));
|
|
- популярные веб-приложения (wordpress, другие cms-системы, итд);
|
|
- входы с ботнетов.
|
|
|
|
Прошивки узкопрофильного железа не обновляются - это само по себе опасный процесс;
|
|
производители игнорируют поддержку железа старше Н лет (да и свежего тоже).
|
|
Вдобавок железо, как и веб-приложения, не воспринимаются всерьез в контексте безопасности.
|
|
|
|
В остальных случаях в ход идет социальная инженерия (письмо или звонок).
|
|
|
|
ЗАЩИТА СЕТЕЙ
|
|
|
|
Эффективный способ обнаружения вторжения - обнаружение аномалий трафика.
|
|
Регистрируем легитимный трафик, запоминаем примерную картину (протоколы, частоту обмена, вес пакетов, абонентов сети итд).
|
|
Находим и изучаем источники странного трафика.
|
|
https://habr.com/ru/company/dsol/blog/541832/
|
|
https://habr.com/ru/company/otus/blog/541582/
|
|
Suricata https://suricata-ids.org/
|
|
Пример ручного анализа: https://malware-traffic-analysis.net/
|
|
Библиотека PyWhat для автоматического парсинга трафика
|
|
https://habr.com/ru/company/dcmiran/news/t/563206/
|
|
https://github.com/bee-san/pyWhat
|
|
|
|
Трафик логируется, через отводы в сети, для целей форенсики, юридических доказательств, разборов инцидентов.
|
|
|
|
По разным данным, SSL/TLS-трафик не может быть расшифрован/может быть расшифрован благодаря проксированию с использованием MITM-сертификата в корп.сети.
|
|
(файрволлы Palo Alto точно имеют опцию расшифровки SSL).
|
|
В первом случае используется машинное обучение для поиска аномалий: https://github.com/WalterDiong/TLS-Malware-Detection-with-Machine-Learning
|
|
(длины нагрузок, частотное распределение и используемые протоколы/порты, частота обмена, ... - рандомизируйте все это)
|
|
Во втором случае, для обнаружения MITM можно использовать SSL cert pinning в реализации сетевой подсистемы бота.
|
|
|
|
Технические средства мониторинга ИБ сети: https://habr.com/ru/post/549050/
|
|
|
|
Дубовая, но эффективная защита - работа по белому списку.
|
|
Вот список разрешенных сайтов, а черт, тебе не нужно по работе ходить на сайты, извини, никакого веба.
|
|
Мессенджеры тоже не нужны, вот тебе корпоративная почта.
|
|
Вот список белых приложений, которые могут быть запущены на компьютере; все остальное блокируется.
|
|
|
|
ИНСТРУМЕНТЫ
|
|
|
|
Основным хакерским инструментарием являются фреймворки.
|
|
Можно без них, но они дают автоматизацию:
|
|
1. Metasploit Framework (MSF) (+armitage GUI) - самая большая подборка сплойтов и модулей
|
|
2. Core Impact (+impacket python) - наиболее удобные для пентеста фичи (из минусов - только Windows)
|
|
3. Powershell Empire - pure powershell фреймворк со всеми вытекающими
|
|
4. Posh2c
|
|
5. Koadik - эти двое являются экзотикой, т.е. у них менее детектируемый трафик
|
|
6. Cobalt Strike - расширяемость
|
|
https://www.cobaltstrike.com/downloads/csmanual43.pdf
|
|
7. Burp Suite - ориентирован на веб, очень популярен
|
|
8. Pupy - RAT (Remote Administration Tool) на Питоне, труден для АВ вследствие того что это и не привычный АВ native код, и не "родной" для Windows (и AMSI) скриптовый язык
|
|
https://github.com/n1nj4sec/pupy
|
|
https://ptestmethod.readthedocs.io/en/latest/pupy.html
|
|
и к нему в комплект инжектор https://github.com/infodox/python-dll-injection
|
|
|
|
БОльшую часть основных действий можно делать из обычного cmd shell'а штатными средствами ОС.
|
|
|
|
Фреймворк - это:
|
|
- сплойты;
|
|
- сканеры к ним;
|
|
- поиск мисконфигураций;
|
|
- фаззеры;
|
|
- снифферы;
|
|
- сценарии задач.
|
|
Примерный состав фреймворка https://www.offensive-security.com/metasploit-unleashed/modules-and-locations/
|
|
|
|
Сканеры сетей
|
|
Enum4linux https://github.com/CiscoCXSecurity/enum4linux (ресурсы сети Windows/Samba)
|
|
|
|
Стилеры, дамперы паролей, брут-форс паролей
|
|
Обзор Mimikatz https://habr.com/ru/company/varonis/blog/539340/
|
|
Patator https://github.com/lanjelot/patator (password brute forcer)
|
|
|
|
Сканеры SQL-инъекций и Web-уязвимостей
|
|
https://habr.com/ru/post/542190/
|
|
SQLMap http://sqlmap.org/
|
|
jSQL-Injection https://github.com/ron190/jsql-injection
|
|
https://github.com/commixproject/commix сканер command injection, статья https://habr.com/ru/post/550252/
|
|
Wapiti https://wapiti.sourceforge.io/ (web scanner/fuzzer)
|
|
OWASP ZAP https://www.zaproxy.org/ (web scanner/fuzzer/MITM proxy)
|
|
|
|
Общим минусом всех публично доступных инструментов является их известность для АВ.
|
|
Приходится прилагать нешуточные усилия по их чистке, либо обзаводиться своим приватным набором чистых инструментов.
|
|
|
|
|
|
ТАКТИКА АТАКИ
|
|
|
|
Первичная цель большинства атак - Active Directory Domain Controller или Domain Controller сети Windows.
|
|
Доступ к этим узлам дает как минимум широкие вектора для перемещения по сети, как максимум полный контроль над сетью.
|
|
Active Directory более удобен для эксплуатации, т.к. есть типовые мисконфигурации, уязвимости самого сервиса, общие ресурсы,
|
|
делающие работу и сотрудников, и хакеров комфортной.
|
|
Контроль над Domain Controller сети Windows дает как минимум:
|
|
- логи авторизаций внутри домена различных пользователей на рабочих станциях домена
|
|
- NTLM-хеши паролей всех пользователей домена, которые даже необязательно брутить (сервис cmd5.org).
|
|
Хеши брутятся легко и быстро т.к. несоленые.
|
|
- почти всегда контроллер домена держит на себе DNS-сервер со всеми записями.
|
|
|
|
То есть доступ к DC (как AD так и Windows) дает сразу кучу инфы также и за счет присутствия сразу всех сервисов на DC - LDAP, Kerberos, DNS.
|
|
LDAP позволяет "общаться" внутри AD, получить доступ ко всем сервисам прикрученным к авторизации Active Directory.
|
|
https://www.varonis.com/blog/the-difference-between-active-directory-and-ldap/
|
|
|
|
Закрепляться на DC не стоит, т.к. эти узлы важны и плотно мониторятся.
|
|
Для закрепления предпочтительны серверные машины, которые держат какие-нибудь сервисы стучащие наружу,
|
|
то есть которым разрешен исходящий трафик.
|
|
|
|
Идеальный бэкдор - это всегда легитимный доступ - стучащие наружу сервисы наподобие VPN/thin client/RDWeb/RDP итп,
|
|
под которые можно замаскировать свой трафик. Ищем любые подходящие под это креды и компьютеры в сети.
|
|
Следующим приоритетом может быть проброс трафика через прикладное/бизнес ПО (Outlook, IIS/PHP webshell, итд).
|
|
Далее - протоколы DNS/TCP/HTTPS, с использованием для закрепления используются стандартных средств Windows
|
|
(очевидный минус в том что использование стандартных средств ОС для закрепления плотно мониторится).
|
|
|
|
В сетях ИТ-компаний как правило есть собственные фермы виртуальных машин.
|
|
Одним из средств избежать обнаружения может быть использование собственной чистой виртуальной машины (без АВ, EDR) с доступом в сеть.
|
|
|
|
Вторичной целью является любой узел в DMZ ("видящем" Интернет сегменте сети).
|
|
Следующим по удобству - любая машина, с которой видна DMZ.
|
|
|
|
Один пароль на все, и присутствие пользователя на множестве узлов - наиглавнейшая помощь хакеру.
|
|
|
|
Развитие атаки итеративно и предполагает использование на каждой следующей стадии данных, добытых на предыдущих стадиях:
|
|
1. просканировал, подампил, сбрутил
|
|
2. попробовал добытые креды на следующем/предыдущем узле; расширил присутствие
|
|
3. goto 1
|
|
|
|
При наличии shell'а с доменной машины, примерный сценарий развития атаки:
|
|
1. наша первая цель в захвате AD-леса - это поиск хешей пароля доменного администратора;
|
|
любой хеш ДА означает полную компрометацию домена и всех его пользователей.
|
|
NTLM хеши позволяют двигаться по сети без знания пароля, так что брутить их не обязательно.
|
|
2. опрашиваем состав домена (утилитой adfind.exe, net /view /all /domain итд);
|
|
3. анализируем данные: в комментариях бывают пароли пользователей/сервисных учеток/даже самих доменных администраторов, помимо информации о структуре сети);
|
|
4. в рамках локальной машины проверяем можем ли повысить права до СИСТЕМЫ.
|
|
Дальше ветка - смогли/не смогли.
|
|
СИСТЕМА позволяет
|
|
5. отравлять ARP-кеш и притвориться другим узлом, чтобы перехватить его трафик и его пароли (их хеши);
|
|
6. дампить хеши (ntdsutil, mimikatz) на локальном узле.
|
|
Все использованные хеши используются для развития атаки (один пароль на всё!)
|
|
Если СИСТЕМУ получить не удалось:
|
|
7. проходим по текущей машине стилером и ищем доступы внутри сети
|
|
8. проверяем все видимые доменные машины на RCE (уязвимости удаленного исполнения кода)
|
|
9. проверяем, имеет ли текущий пользователь администраторские права на какой-то из машин домена: смотрим в каких он группах состоит,
|
|
эмпирически предсказываем, дальше по SMB проверяем видит ли он $ADMIN шару где-то;
|
|
если видит - прыгаем туда и получаем там СИСТЕМУ.
|
|
10. проводим kerberoast атаку для получения керберос-хешей для дальнейшего брута;
|
|
11. если сеть маленькая - можем нежно побрутить пользователей, предварительно проверив lockout threshold (чтобы не заблокировать их брутом);
|
|
12. если видим доступный для записи каталог inetpub - пишем туда нагрузку aspx и исполняем, обращаясь к ней через веб;
|
|
13. сканируем все подсети на доступные сетевые устройства и проверяем имеющиеся у нас креды.
|
|
|
|
Хаки AD: https://github.com/Integration-IT/Active-Directory-Exploitation-Cheat-Sheet
|
|
|
|
Матрица MITRE Для Windows
|
|
https://attack.mitre.org/matrices/enterprise/windows/
|
|
|
|
Работа с паролями AD: https://habr.com/ru/post/543806/
|
|
|
|
MITRE
|
|
|
|
Это систематизированная база данных хакерских техник, дающая различные разрезы и аспекты тактик.
|
|
Официальная цель - усилить защиту, помочь ИБ-отделам и специалистам.
|
|
Абсолютно все (нет) хаки классифицируются и попадают сюда.
|
|
|
|
Неполно и на русском Adversarial Tactics, Techniques & Common Knowledge (ATT@CK):
|
|
https://habr.com/post/423405/
|
|
https://habr.com/post/424027/
|
|
https://habr.com/post/425177/
|
|
https://habr.com/post/428602/
|
|
https://habr.com/post/432624/
|
|
|
|
Если вы в тупике, поищите здесь нестандартные (неизвестные вам лично) приемы и хаки.
|
|
|
|
ЦЕЛЬ - ИНФОРМАЦИЯ
|
|
|
|
То, ради чего все затевается.
|
|
1. Почта, переписка, контакты, адресные книги, списки контрагентов
|
|
2. Базы данных
|
|
3. Исходные тексты программ
|
|
4. Документы
|
|
5. Бухгалтерия
|
|
6. Конструкторская документация
|
|
7. Пароли к другим сетям
|
|
8. Электронные кошельки
|
|
TODO
|
|
какие файлы искать (расширения)
|
|
TODO как ее выкачивают?
|
|
|
|
АНАЛИТИКА, АТТРИБУЦИЯ, ПОЧЕРК
|
|
|
|
Анализ открытых источников о вашей деятельности важен: вы узнаете ту часть трюков, которую уже раскрыли, а следовательно они стали неэффективными.
|
|
Однако вы не знаете ту часть трюков, которая не раскрыта. Ради этого противник может запускать дезинформацию, утаивать и обманывать.
|
|
|
|
Рано или поздно любой хакер читает разборы своих художеств в ИБ-статьях.
|
|
И с удивлением обнаруживает, что важная информация упущена, а незначительная выпячена.
|
|
Делается это по нескольким причинам:
|
|
- истинные отчеты об инцидентах - информация с грифом
|
|
- никто не даст действующие рецепты в паблик
|
|
- большая часть статей - реклама "купите наше ИБ-решение", мешающие факты игнорируются, незначительные гипертрофируются
|
|
- не боги горшки обжигают - аналитики действительно могут упустить важные детали
|
|
- они все знают, но не подают вида - чтобы использовать это против вас
|
|
- вместе с истинными фактами можно скормить вам же дезу.
|
|
|
|
Будьте внимательны, у каждой APT-группы свой известный безопасникам почерк - любимые тактики входа, закрепления, перемещения,
|
|
YARA-профили инструментов.
|
|
|
|
Взгляд со стороны IB: https://habr.com/ru/company/group-ib/blog/545104/
|
|
|