# Практика №2. Сканирование корпоративной инфраструктуры
## Описание выполнения практики
Данная практика выполнялась на виртуальной машине с операционной системой kali-linux. Для того, чтобы установить и развернуть виртуальную машину, используется программа VMware Workstation 17 версии. Ниже приведены характеристики данной машины.

В работе сканируются домены [mirea.tech](http://mirea.tech), ptlab.ru, связанные с ними домены или поддомены.
## Сайты организаций, IP адреса, доменные имена, поддомены, DNS записи
### Поддомены
Для того, чтобы найти все существующие поддомены используем утилиту Subfinder.
> Subfinder - это инструмент для поиска поддоменов, который обнаруживает поддомены веб-сайтов (действительные в нынешнее время, если потребуется), используя пассивные онлайн источники. Он имеет простую модульную архитектуру и оптимизирован для скорости.
Для установки используем команду:
```
sudo apt-get install subfinder
```
Результат данной команды продемонстрирован ниже:

Затем используем команду для поиска поддоменов:
```
subfinder -nW -oI -o log -d ptlab.ru
subfinder -nW -oI -o log1 -d mirea.tech
```
:::info
**Объяснения флагов:**
`nW` : удаление мёртвых поддоменов из вывода;
`oI` : запись вывода в формате Host, IP;
`-o` : указание пути к файлу, в который будет записываться вывод (в примере я вызываю эту команду уже из папки с файлом, поэтому путь указывать не нужно, только наименование).
:::


Таблица результатов поддоменов:
| mirea.tech | ptlab.ru |
|:---------------:|:-----------------------:|
| ctf.mirea.tech | af.ptlab.ru |
| kb.mirea.tech | bitwarden.ptlab.ru |
| - | cdp.ptlab.ru |
| - | partners.pta |
| - | ptlab.ru |
| - | seclab.ptlab.ru |
| - | ua-apps.ptlab.ru |
| - | vulnbank.ptlab.ru |
| - | vulnbank.safe.ptlab.ru |
| - | admin.ptlab.ru |
Однако множество из них является недействительными, на что указывает запись в файл только трёх поддоменов: одного для ptlab.ru, двух для mirea.tech.
*Файл log.txt:*

*Файл log1.txt:*

Действительные поддомены:
| mirea.tech | ptlab.ru |
|:---------------:|:-----------------------:|
| ctf.mirea.tech | ptlab.ru |
| kb.mirea.tech | |
Находим интересную закономерность:
:::danger
Оба домена лежат на одном IPшнике (85.142.160.226).
:::
### Информация об IPпишнике
Попробуем узнать подробнее об IP, который мы получили в задании выше. Воспользуемся whois:
> Whois представляет собой список записей, которые содержат сведения как о владельцах доменов, так и о владельцах. Интернет-корпорация по присвоению имен и номеров (ICANN) регулирует регистрацию доменного имени и право собственности, но список записей проводится многими компаниями, известными как реестры.
Запись Whois содержит всю контактную информацию, связанную с лицом, компанией или другим лицом, зарегистрировавшим доменное имя. Некоторые регистрации содержат больше информации, чем другие, а некоторые реестры возвращают различное количество информации.
Типичная запись whois будет содержать следующую информацию:
* The name and contact information of the registrant: владелец домена.
* The name and contact information of the registrar: организация, которая зарегистрировала доменное имя.
* The registration date: дата регистрации домена.
* When the information was last updated: дата последнего обновления информации о домене.
* The expiration date: дата освобождения домена
Данная утилита предустановлена заранее в версии kali linux.
Для того, чтобы посмотреть информацию об IP достаточно написать:
```
sudo whois 85.142.160.226
```

На данной картинке видно несколько интересных параметров. Например, заметим, что весь диапозон 85.142.160.0 - 85.142.161.255 принадлежит MIREA-2-NET. Ниже обозначено описание организации, адрес, страна, дата регистрации, обновления и так далее.

В этой секции в основном информация об организации. Так же тут можно найти два городских телефона.

В принципе здесь всё cхоже с информацией, описанной выше, но можно заметить, что присутствует человек, которому принадлежит вся сеть 85.142.160.0/23 - Дмитрий Мякошин. Также видим необычную почту noc@mirea.ru, но, к сожалению, это лишь обычная сетевая служба для работы с инфраструктурой.
Из интересного:
:::danger
Название организации, адрес, телефон, человек, на которого зарегистрирована сеть.
:::
### Получение различных URL
Выполняя данный пункт, обратимся к утилите GAU.
> GAU - средство, извлекающее и выводящее URL и не только.
Для её установки понадобится установить ещё Go-lang через команду:
```
sudo apt-get install golang-go
```
Воспользовавшись инструкцией с [github](https://https://github.com/lc/gau) официального разработчика GAU, приведённой ниже,
```
git clone https://github.com/lc/gau.git; \
cd gau/cmd; \
go build; \
sudo mv gau /usr/local/bin/;
```
скачаем gau к себе на ОС. Через команду `gau --version` смотрим версию GetAllUrls. Если она выводится, то установка прошла успешно, если нет, то стоит поискать в чём была проблема.

Затем приступим к выполнению поиска URL. Для этого нам необходима команда:
```
gau --subs ptlab.ru > urls.txt
gau --subs mirea.tech > urls1.txt
```
:::info
**Объяснения флагов:**
`--subs` : включает в поиск поддомены
:::


В итоге получаем подобный вывод из файлов urls.txt и utls1.txt:
*Файл urls.txt:*

*Файл urls1.txt:*

Утилита нашла множество различных ссылок, из которых значительную часть можно открыть и просмотреть. Например:



Из интересного:
:::danger
Некоторые URL возможно открыть и просмотреть, что даёт доступ к дополнительному контенту.
:::
### Получение DNS-записей
Информация о домене хранится на DNS-серверах. Чтобы внести её в систему DNS, нужно прописать ресурсные записи. С их помощью серверы делятся сведениями о доменах с другими серверами. Пока не прописаны ресурсные записи для домена, его нет в «телефонной книге» Интернета. Следовательно, работа сайта или почты на нём невозможна.
Получить DNS-записи можно при помощи утилиты dnsrecon.
> Dnsrecon - утилита, которая используется для поиска, анализа и проверки DNS.
Данный инструмент уже имеется в kali, поэтому скачивать его не нужно.
При помощи команд:
```
sudo dnsrecon -d ptlab.ru
sudo dnsrecon -d mirea.tech
```
:::info
**Объяснения флагов:**
`-d` : указывает домен, по которому происходит поиск
:::
*Результат по ptlab.ru:*

*Результат по mirea.tech:*


В обоих случаях замечаем множество флагов SOA и NS, которые относятся к ip 176.99.13.11-176.99.13.18, 194.58.117.11-194.58.117.18 и 194.167.73.173-194.67.73.176. Пробив эти IP с помощью утилиты whois удостоверимся, что они не имеют отношения к самой площадке mirea и ptlab, а скорее выполняют работу предоставления услуг в технической сфере.

Вернёмся к флагам. Записи NS, PTR, SOA являются служебными и, как правило, настраиваются автоматически.
* SOA (Start of Authority) -- начальная запись зоны, которая указывает, на каком сервере хранится эталонная информация о доменном имени. Критически важна для работы службы DNS. Подробнее о том, что такое SOA-запись и как её проверить, вы можете узнать в статье.
* NS-запись (Authoritative name server) указывает на DNS-серверы, которые отвечают за хранение остальных ресурсных записей домена. Количество NS записей должно строго соответствовать количеству всех обслуживающих его серверов. Критически важна для работы службы DNS.
Эта информация подтверждает, что mirea и ptalab пользуются сторонними сервисами для регистрации домена и хранения некоторой информации о нём.
Также в записях присутствуют обозначения A и TXT. Разберём их:
* Запись A (address) -- одна из ключевых ресурсных записей Интернета. Она нужна для связи домена с IP-адресом сервера. Пока не прописана А-запись, ваш сайт не будет работать.
* TXT (Text string) -- запись, которая содержит любую текстовую информацию о домене. Записи TXT используются для различных целей: подтверждения права собственности на домен, обеспечения безопасности электронной почты, а также подтверждения SSL-сертификата. Часто применяется для проверок на право владения доменом при подключении дополнительных сервисов, а также как контейнер для записи SPF и ключа DKIM. Можно прописывать неограниченное количество TXT-записей, если они не конфликтуют друг с другом.
У ptlab отсутствует TXT запись, но у mirea можем увидеть следующее:
`google-site-verification` - это уникальный токен безопасности, указанный в инструкциях по проверке в консоли администратора Google.
Далее попробуем использовать другую утилиту - dig и посмотрим изменится ли результат.
> Dig (Domain Information Groper) -- инструмент командной строки для запросов к именам DNS-серверов.
> С помощью команды dig вы можете запрашивать информацию о различных записях DNS, включая адреса хостов, почтовые обмены и серверы имен. Это наиболее часто используемый инструмент среди системных администраторов для устранения проблем DNS из-за его гибкости и простоты использования.
Данная утилита предустановлена в kali.
Через команду
```
sudo dig TXT mirea.tech
```
запросим подробности о записях TXT.
*Результат:*

Подтверждает результат, полученный предыдущей утилитой.
Теперь попробуем посмотреть записи SOA.
```
sudo dig SOA mirea.tech
sudo dig SOA ptlab.ru
```


В принципе, наблюдается сильное сходство выводов между dig и dnsrecon.
У обоих доменов отсутствует флаг MX, что говорит об отсутствии у них почтовых сервисов.
Пожалуй, в данных записях нашлось мало полезной информации.
## Поисковые системы и браузерные анализаторы
Одним из источников информации будут поисковые системы (Google, Yandex, Shodan, Zoomeye, Censys). Они могут помочь найти какие-то вещи, которые доступны нам через сканирование портов или фактические результаты выполнения скриптов по сканированным портам.
### Censys
Censys -- платформа, которая помогает специалистам по информационной безопасности обнаруживать, отслеживать и анализировать устройства, подключенные к сети. Censys регулярно проверяет каждый общедоступный IP-адрес и популярные доменные имена и дополняет свою базу данных подключенных устройств.
Попробуем поискать на данном ресурсе информацию о двух доменах.
К сожалению, домен ptlab.ru не был найден на данном ресурсе.

mirea.tech же, наоборот, нашлась сразу. Уже видим присутствие сторонних сервисов, связанных с облачными серверами. Посмотрим подробнее.

Видим адрес, IP, протоколы, поддерживаемые на данном сервере, веб-сервер nginx.
> NGINX -- это веб-сервер и почтовый прокси, который работает под управлением операционных систем семейства Linux/Unix и Microsoft.

При дальнейшем просмотре можно даже найти даже от Potee CTF :)

Дополнительно просканируем IP 85.142.160.226. Здесь мы впервые заметим порт 20001, который поддерживает SHH-подключение.

Посмотрим детали о данном IP.
Изначально не видим ничего интересного..

..но затем наблюдаем целую систему доменов, которым принадлежит один и тот же IP. И даже ptlab.ru.

### viewdns
Инструменты, предоставляемые ViewDNS.info позволяют пользователям собирать большой объем данных о данном веб-сайте или IP-адресе.
Первый инструмент, который мы просмотрим - IP History.
**1. IP History.**
Показывает историю IP-адресов, на которых размещалось данное доменное имя, а также географическое местоположение этого IP-адреса и владельца этого IP-адреса.
*Результат для ptlab.ru:*

Ссылает на нас на всё тот же институт МИРЭА и на российский регистратор доменных имён/хостинг-провайдера Reg.Ru.
*Результат для mirea.tech:*

К сожалению, пусто.
**2. Reverse IP Lookup.**
Выполняет обратный поиск, чтобы быстро отобразить все другие домены, размещенные на том же сервере. Полезно для поиска фишинговых сайтов или идентификации других сайтов на том же сервере общего хостинга.
*Результат для mirea.tech:*

Для остальных доменов и IP данный сервис ничего не выдал. Зато мы можем наблюдать всё те же домены, которые нашли выше. Пожалуй, стоит включить их в поиск.
**3. Domain / IP Whois.**
Отображает информацию о владельце/контактной информации для доменного имени или IP-адреса. Также может использоваться для определения того, зарегистрировано доменное имя или нет.
*Результат для mirea.tech:*

А вот и первый потенциальный сотрудник Ильдар Садыков. Уже здесь мы можем узнать его телефон, email и имя.
*Результат для ptlab.ru:*

Как и potee.ru, оба домена зарегистрированы на частное лицо, информация о котором не выводится.
**4. DNS Record Lookup.**
Вывод всех настроенных записей DNS (A, MX, CNAME и т.д.) для указанного доменного имени.
*Результат для mirea.tech:*

*Результат для ptlab.ru:*

*Результат для potee.ru:*

В принципе, все данные совпадают с установленными раннее сведениями через утилиты. Но, так как у нас теперь есть ещё один домен, связанный с первыми двумя (potee.ru), то было принято решение просмотреть и его. Здесь присутствует MX-запись.
> MX-запись отвечает за сервер, через который будет работать почта. Записи MX критически важны для работы почты. Благодаря им отправляющая сторона «понимает», на какой сервер нужно отправлять почту для вашего домена.
В данном случае нашёлся почтовый сервис на основе Yandex.
### DNSdumpster
DNSdumpster -- это онлайн-инструмент для поиска информации о доменных именах и их IP-адресах. С его помощью можно получить информацию о доменах, связанных с определенным IP-адресом, а также о поддоменах, DNS-записях и многое другое. DNSdumpster используется в качестве инструмента для сбора информации о целевой системе или домене во время проведения тестирования на проникновение (пентеста).
В принципе, в данном разделе мы лишь удостоверяемся в уже полученной информации.
*Результат для mirea.tech:*


*Результат для ptlab.ru:*


*Результат для potee.ru:*



Можно сделать вывод, что различные онлайн-сервисы очень хорошо справляются с задачами из первого пункта.
:::danger
Приятная новость, теперь у нас есть есть не только держатель IP 85.142.160.226, но и держатель домена mirea.tech.
:::
## Сканеры
### TheHarvester
The Harvester - это инструмент, который был разработан на python. Он собирает различную информацию: электронные письма, поддомены, хосты, имена сотрудников, открытые порты и баннеры, из различных общедоступных источников, таких как поисковые системы, серверы ключей PGP и компьютерная база данных SHODAN.
Данная утилита предустановлена на kali. К сожалению, многие поисковики не отработали, поэтому результаты получились скудные и непродуктивные.
```
sudo theHarvester -d mirea.tech -b otx
sudo theHarvester -d mirea.tech -b dnsdumpster
sudo theHarvester -d mirea.tech -b bing
sudo theHarvester -d ptlab.ru -b otx
sudo theHarvester -d ptlab.ru -b rapiddns
```
:::info
**Объяснения флагов:**
`-d` : указывает на домен;
`-b` : указывает на используемый сервис;
:::
*Результат для mirea.tech:*


*Результат для ptlab.ru:*



Вся выведенная информация уже упоминалась выше. Ни одного сотрудника не было найдено.
### NMAP
Nmap -- свободная утилита, предназначенная для разнообразного настраиваемого сканирования IP-сетей с любым количеством объектов, определения состояния объектов сканируемой сети. Изначально программа была реализована для систем UNIX, но сейчас доступны версии для множества операционных систем.
Применённые команды:
```
sudo nmap 85.142.160.226
sudo nmap -A mirea.tech
sudo nmap -A ptlab.ru
```
*Результат для 85.142.160.226:*

*Результат для mirea.tech:*

*Результат для ptlab.ru:*

Встречаем сертификаты, подписанные доменом kb4-lab.ru. Вероятнее всего это одна из кафедр института МИРЭА. Впервые можем наблюдать ОС, на которых всё это добро держится:
* Tomato 1.28
* Tomato firmware
Tomato - это легкая и простая прошивка, разработанная для использования с маршрутизаторами Linksys. Так же видим там мобильную ОС.. что довольно странно. Но вверху висит предупреждение, что догадки могут быть неверными.
### Nessus
Nessus -- программа для автоматического поиска известных изъянов в защите информационных систем. Она способна обнаружить наиболее часто встречающиеся виды уязвимостей.
Проверим же наши домены на уязвимости. Для этого запустим Advansed Scan.

1. mirea.tech
Наблюдаем парочку просроченных сертификатов. Это может быть опасно, поскольку в этом случае шифрование данных скорее всего не предусмотрено, поэтому злоумышленники могут получить некоторую информацию о вас.

После просмотрим информацию о TLS (TLS, как и его предшественник SSL, -- криптографические протоколы, обеспечивающие защищённую передачу данных между узлами в сети Интернет).
Nessus предупреждает:
> Удаленная служба принимает соединения, зашифрованные с помощью TLS 1.0. TLS 1.0 имеет ряд недостатков криптографического дизайна. Современные реализации TLS 1.0 смягчают эти проблемы, но более новые версии TLS, такие как 1.2 и 1.3, разработаны с учетом этих недостатков и должны использоваться по возможности.
> С 31 марта 2020 года конечные точки, которые не включены для TLS 1.2 и выше, больше не будут должным образом функционировать с основными веб-браузерами и крупными поставщиками.
> PCI DSS v3.2 требует, чтобы TLS 1.0 был полностью отключен к 30 июня 2018 года, за исключением POI-терминалов POS (и конечных точек SSL / TLS, к которым они подключаются), которые могут быть проверены как не подверженные каким-либо известным эксплойтам.
Лучшим решением будет их отключение вовсе, оставив более современную версию.

Также наблюдаются проблемы с nginx.
Согласно заголовку ответа сервера, установленная версия nginx предшествует версии 1.17.7. Таким образом, на него влияет уязвимость в области утечки информации.

Выводом можно сделать то, что у mirea.tech есть небольшие проблемы с утечкой информации, старыми версиями и просроченными сертификатами.
Есть возможность поискать на устаревший nginx какую-нибдуь подлую уязвимость. Спустя неекоторое время поиска такая обнаружилась. Её код CVE-2021-23017. Данная уязвимость действует на все версии nginx до 1.20.0. Она может позволить злоумышленнику, способному подделать UDP-пакеты с DNS-сервера, вызвать перезапись памяти на 1 байт, что приведет к сбою рабочего процесса или потенциальному захвату злоумышленником контроля.

:::success
Забавный факт про уязвимую версию:

Вот она снизу без всяких сканеров.
:::
2. ptlab.ru
Результаты такие же, как и у mirea.tech.

3. 85.142.160.226
Данный IP разделяет проблему устаревшей версии nginx.

Интересного здесь то, что Nessus засёк файервол. Наблюдаем здесь Confindence level.
> Confindence level - уровень достоверности сигнатуры, т.е. какова вероятность адекватности срабатывания этой сигнатуры. Это очень важная характеристика особенно для поведенческого анализа

Наблюдаем, что производителем файервола является Cisco. Быть точнее, там стоит Cisco PIX (Private Internet Exchange) -- межсетевой экран с преобразованием сетевых адресов (NAT), выпускавшийся американской компанией Cisco Systems. Один из первых продуктов в этом сегменте рынка.


Серьёзных уязвимостей не обнаружилось.
### SpiderFoot
SpiderFoot -- инструмент для сбора информации из открытых источников (OSINT). Утилита, предназначена для автоматизации поиска информации о цели (представленной IP-адресом, доменным именем и электронной почтой и т.д.). Наряду с платной версией, разработчики предлагают и бесплатную версию SpiderFoot с открытым исходным кодом.
С помощью SpiderFoot можно автоматизировать процесс поиска и сбора информации о заданной цели. В документации к инструменту поясняется, что SpiderFoot может собирать такие сведения, как Whois, веб-страницы, DNS и многое другое. В отличие от своего аналога Maltego, интерфейс SpiderFoot доступен в браузере.
Для того, чтобы установить и запустить его в браузере, воспользуемся командами с официального [github](https://github.com/smicallef/spiderfoot) разработчиков.
```
git clone https://github.com/smicallef/spiderfoot.git
cd spiderfoot
pip3 install -r requirements.txt
python3 ./sf.py -l 127.0.0.1:5001
```

Смотря на столь большие значения найденных элементов, предполагаем, что он определённо принесёт нам множество информации. Используем его на трёх доменах:
#### mirea.tech

Начнём с конца.
Во-первых, в Username видим, что SpiderFoot нашёл того самого сотрудника и выделил mirea как отдельного пользователя.

Кроме того, программа нашла действующую [ссылку](http://cloud.mirea.tech).


Найден репозиторий на [githib](https://github.com/osobolev/mirea). И ещё один потенциальный сотрудник - О. Соболев.

Множество различных ссылок н деятельность МИРЭА и даже какой-то канал в телеграме.

Во внутренних ссылках не нашлось ничего интересного, поскольку они уже все были найдены утилитой gau.
Среди почтовых адресов находим magomedov_sh@mirea.ru и myakoshin@mirea.ru. Ещё два сотрудника в копилку.



Таким образом, мы собрали много нужных ссылок и людей при одном анализе.
#### ptlab.ru

К сожалению, анализ ptlab не принёс новых данных.
#### potee.ru

В Username нашёлся новый пользователь - PoteeDev. Перейдём по ссылке и найдём ещё одного предположительного сотрудника - Иван Хаханов.

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



Таким образом, SpiderFoot помог узнать многое о сотрудниках, использованном софте, облачных серверах, местонахождении и так далее.
## Сотрудники организации.
Вспомним о человеке, на которого был зарегистрирован IP 85.142.160.226 (Dmitry Myakoshin). Пробьём его через обычный поисковик. Попадаем на официальную страницу МИРЭА и видим уже двух сотрудников. В итоге, по первой же ссылке наблюдаем следующую информацию:
Имя: Мякошин Дмитрий Юрьевич
Должность: начальник отдела технических средств обучения Управления информатизации
Email-адрес:
Телефон: +7 499 215-65-65 (городской), +7 499 600-82-28(городской)
Социальные сети: https://vk.com/dmyakoshin (найден через поиск вк)
Имя: Зубко Александр Александрович
Должность: заведующий лабораторией ТСО (обеспечение учебного процесса необходимыми мультимедийными средствами)
Email-адрес: zubko@mirea.ru
Телефон: -
Социальные сети: -

Затем поищем по следующему сотруднику: Ильдару Садыкову. Информация взята из различных поисковиков, некоторых социальных сетей и анализаторов.
Имя: Садыков Ильдар Венерович
Должность: Старший преподаватель
Email-адрес: sadykov@mirea.ru (рабочая), sadykovildar@mail.ru
Телефон: +79174141521
Социальные сети: @sadykovildar(телеграм), https://vk.com/sadykovildar



Следующим будем искать О.Соболева. По запросу находится совсем немного информации. Известно только то, что он преподаёт ЯП Java.
Имя: Соболев Олег Вадимович
Должность: Старший преподаватель
Email-адрес: -
Телефон: -
Социальные сети:-
Далее найдём человека с почтой magomedov_sh@mirea.ru. Используем поисковики, социальные сети и анализатор.
Имя: Магомедов Шамиль Гасангусейнович
Должность: Директор
Email-адрес: magomedov_sh@mirea.ru
Телефон: +7 (499) 215-65-65
Социальные сети: https://vk.com/mshgg, @SHam_1 (найдено в телеграме MireaCTF)

Последним поищем сотрудника Мирэа с potee.ru. К сожалению, ничего, кроме имени, образования (Диплом специалиста по инженерной специальности (Защита информации) и места работы (Positive Technologies, РТУ МИРЭА + potee) найти не удалось.
Имя: Хаханов Иван Сергеевич
Должность: -
Email-адрес: -
Телефон: -
Социальные сети: -

## Возможная организационная структура и лица, принимающие решение
Так как ранее мы видели домен k4-lab.ru, то можно предположить, что необходимо найти структуру, связанную с 4 кафедрой. Таким образом, на официальном сайте РТУ МИРЭА была найдена подробная [схема](https://www.mirea.ru/upload/medialibrary/817/buwrpzqbjkpzsg6kqryty3jydoagtmi7/8949_Struktura-RTU-MIREA-2023_pravilnoe-nazvanie-istitutov.pdf) организации.

В том числе присутствует и отдельная [ссылка](https://www.mirea.ru/sveden/employees/) на полный руководительский состав.
## Оборудование, которое используется в организации
После долгих поисков удалось найти только информацию из официального [источника](https://www.mirea.ru/education/the-institutes-and-faculties/institut-kiberbezopasnosti-i-tsifrovykh-tekhnologiy/infrastructure/). В данном разделе достаточно подробно расписано какое оборудование используется в ВУЗе РТУ МИРЭА.