Как находить нужную информацию о человеке - Ч.1

DOMINUS

Пользователь
Регистрация
22.08.17
Сообщения
417
Реакции
33
Баллы
28
Тесты на проникновение имитируют известные способы сетевых атак. Их успешность во многом зависит от качества составления профиля жертвы и его полноты.

Определяем почтовые адреса

Начнем с того, что лежит на поверхности и легко находится в интернете. В качестве примера я взял колледж в Канаде (alg…ge.com). Это наша учебная цель, о которой мы попробуем узнать как можно больше. Здесь и далее часть адреса опущена по этическим соображениям.

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

EyOXfYl.jpg

Там представлены одиннадцать адресов. Попробуем собрать больше. Хорошая новость в том, что нам не придется рыскать по сайтам в поисках одиночных адресов. Воспользуемся инструментом theHarvester. В Kali Linux эта программа уже установлена, так что просто запускаем ее следующей командой:

Код:
theharvester -d alg*******ge.com -b all -l 1000

После 2–5 минут ожидания получаем 125 адресов вместо 11 общедоступных. Хорошее начало!

xuxRNxI.jpg

Если у них доменная система и стоит почтовый сервер Exchange, то (как это часто бывает) какой-то из найденных адресов наверняка будет доменной учетной записью.

Поиск по метаданным

На образовательных сайтах в открытом доступе лежат тысячи документов. Их содержимое редко представляет интерес для атакующего, а вот метаданные — практически всегда. Из них можно узнать версии используемого ПО и подобрать эксплоиты, составить список потенциальных логинов, взяв их из графы «Автор», определиться с актуальными темами для фишинговой рассылки и так далее.

Поэтому мы соберем как можно больше метаданных, для чего воспользуемся FOCA — Fingerprinting Organizations with Collected Archives. В этом инструменте нас интересует только одна функция — сканирование указанного домена в поисках документов в популярных форматах с помощью трех поисковых систем (Google, Bing и DuckDuckGo) и последующим извлечением метаданных. FOCA также умеет анализировать EXIF из графических файлов, но в этих полях редко находится что-то стоящее.

Запускаем FOCA, нажимаем Project и создаем новый проект. В правом верхнем углу выбираем форматы всех видов и нажимаем Search All. Работа занимает от 5 до 10 минут.

В итоге в основном окне FOCA мы видим колоссальное количество файлов, которые программа нашла на сайте. Большую часть из них в нашем примере составили PDF.

5OaPcsw.jpg

Следующим шагом нам необходимо скачать выбранные или все файлы (контекстное меню → Download All) и затем извлечь из них метаданные.

Давай проанализируем, что нам удалось собрать.

  • Вкладка Users — 113 записей. В основном это имена пользователей, которые указываются при установке офисных пакетов. Они потребуются для дальнейшей социальной инженерии и подбора пар логин-пароль к обнаруженным в домене сетевым сервисам.
  • Вкладка Folders — 540 записей. Тут есть каталоги, которые указывают на использование Windows (что подтверждается в дальнейшем), и часто попадается строка вида N:\.... Предполагаю, что это сетевой диск, который подключается скриптом при входе пользователя в систему.
  • Вкладка Printers — 11 записей. Теперь мы знаем модели сетевых принтеров (они начинаются с \\). Остальные либо локальные, либо подключены через сервер печати.
  • Вкладка Software — 91 запись. Тут мы видим программное обеспечение, установленное на компьютерах. Основная фишка заключается в том, что указаны версии этого ПО, из которых можно выбрать уязвимые и попробовать эксплуатировать их при атаке.
  • Вкладка Emails. Это мы и так имеем в достатке благодаря theHarvester.
  • Вкладка Operating Systems — 5 записей. Операционные системы, на которых создавались собранные нами файлы. Радует цифра 81 напротив Windows XP. Как показывает практика, такие организации подолгу не обновляют ОС. Есть высокий шанс того, что древняя винда, для которой перестали выпускать патчи безопасности, где-то стоит у них по сей день.

DisN1Dq.jpg

Получаем данные о домене

Следующим шагом получим информацию о домене. Для начала воспользуемся программой whois (подробнее о ней читай в RFC 3912). Открываем терминал и вводим команду

Код:
whois alg*******ge.com

Эта утилита выдает исчерпывающую информацию. Номер телефона, адрес, дата создания и обновления… Есть даже email, который может фигурировать в админском составе.

GEBpt0B.jpg

Кому неинтересно смотреть в терминал (или нет под рукой «Линукса»), могут воспользоваться интернет-сервисами, которые делают то же самое. Вот несколько из них:

  • 2ip.ru;
  • Ripe.net;
  • whois.domaintools.com;
  • ping.eu;
  • centralops.net;
  • serversniff.net.

Последние два особенно популярны из-за расширенного набора инструментов. В CentralOps сразу есть DNS-граббер, двойной Whois и сканирование портов. Server Sniff выполняет детальное сканирование сайта, причем с поддержкой IPv6 и HTTPS. Я в основном пользуюсь robtex.com. Он представляет все в графическом виде и довольно удобен.

RzNzhKdk6so.jpg

Получаем записи DNS

Освежим в памяти типы доменных записей:

  • запись А сопоставляет IP-адрес доменному имени;
  • запись MX показывает почтовые серверы для домена;
  • запись NS показывает DNS-сервер этого домена;
  • запись CNAME — дополнительное имя для домена;
  • запись SRV указывает на серверы, которые обслуживают данную зону;
  • запись SOA покажет сервер с эталонной информацией о домене.

Теперь посмотрим, что важного мы можем из них достать.

Находим почтовые серверы

Адреса email у нас уже есть, а где взять список почтовых серверов? Конечно, из DNS! Проще всего это сделать программой nslookup. Тут мы воспользуемся записью MX, введя следующие команды:

Код:
$ nslookup
$ set q=mx
$ alg*******ge.com

Получаем строчку

Код:
mail exchanger = 10 alg*******ge-com.mail.protection.outlook.com

Теперь, используя запись А, выясним его IP-адрес:

Код:
$ nslookup alg*******ge-com.mail.protection.outlook.com

Записываем себе IP — 23.***.***.42.

На этом полет мысли остановить сложно, и на ум сразу приходит Telnet в связке с протоколом SMTP. В RFC 5321 описаны команды этого протокола, например VRFY, EXPN и RCPT-TO, при помощи которых можно попробовать подобрать имена пользователей или проверить на валидность собранные, но это уже слишком активные действия на данном этапе. Пока продолжим пассивный сбор.

esRpMC1.jpg

Получаем адреса NS

Для получения NS-серверов воспользуемся одноименной записью (NS). Данную информацию получить можно несколькими программами. Сперва воспользуемся nslookup:

Код:
$ nslookup
$ set q=ns
$ alg*******ge.com

Затем попробуем еще одну линуксовую утилиту — host:

Код:
host -t ns alg*******ge.com

Обе программы выдали имена нужных нам DNS-серверов:

Код:
alg*******ge.com name server ns5.alg*******ge.com
alg*******ge.com name server ns3.alg*******ge.com

F3Tk4Dg.jpg

Теперь узнаем их IP-адреса программой nslookup, описанным выше способом. Они выглядят так: 205.***.***.11 и 205.***.***.80.

Продолжение следует...
 
Назад
Верх Низ