ПЗ 5
.docxМИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ,
СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М. А. БОНЧ-БРУЕВИЧА»
(СПБГУТ)
Факультет ИКСС
Кафедра ЗСС
Отчет к
Практическому заданию № 5 по дисциплине:
«Комплексное обеспечение защиты информации объекта информатизации»
Тема: « Программно-аппаратные средства анализа безопасности передачи данных в локальных сетях»
Студенты:
(Ф.И.О., №группы)
Преподаватель: к.т.н. Шемякин С.Н.
(Ф.И.О) (подпись)
Цель работы: приобрести практические навыки установки и настройки ПАС Wireshark.
Задание: произвести инсталляцию и настройку ПАС сниффера Wireshark, проанализировать механизмы защиты от атаки «Человек посередине».
Для получения трафика из локальной сети начнем работу с Wireshark. Запустите Wireshark в Kali:
root@kali:~# wireshark
Рис 1. Начальный экран Wireshark
Чтобы проиллюстрировать трафик, который можно получить в коммутируемой сети, запустите сервис, связываясь с целью Windows ХР от машины Kali по FTP. Войдите в систему в режиме анонимности, чтобы увидеть получаемый трафик в Wireshark
На экране появятся пакеты Wireshark от системы с IР-адресом 192.168.218.9 к 192.168.218.10 и, наоборот, с полем Protocol, отмеченным как FTP. Wireshark получает трафик, предназначенный для машины Kali. Переключитесь на целевую машину Linux Ubuntu, войдите в систему и запустите сервис доступа к серверу FTP на цели Windows ХР, а затем вернитесь обратно на Wireshark в Kali, чтобы убедиться, что никакие дополнительные пакеты FTP не были получены. В моделируемой коммутируемой сети любой трафик, не предназначенный для машины Kali, не будет замечен сетевым интерфейсом и, таким образом, не будет получен в Wireshark. (Далее будут рассмотрены способы исправления этой ситуации.) Объем сетевого трафика, полученного Wireshark, может быть очень большим, потому что в дополнение к трафику FTP будет получен любой пакет, предназначенный Kali. Чтобы найти определенные пакеты, можно использовать фильтры Wireshark. Поле Filter расположено под командной строкой GUI Wireshark. Очень простой пример - Wireshark, фильтрующий весь трафик, который использует протокол FTP. Введите FTP protocol в поле Filter и щелкните по кнопке APPLY (рис. 110). Как и ожидалось, Wireshark отфильтрует полученные пакеты, чтобы показать только те, которые использует протокол FTP. Это и будет сессия FTP.
Для просмотра пакетов можно использовать более усовершенствованные фильтры, например, ip.dst == 192.168.218.10, чтобы отображать только пакеты с целевым IР-адресом 192.168.218.10. Можно даже объединить фильтры в цепочку, такие как ip.dst == 192.168.218.10 и протокол передачи файлов, чтобы прочитать только трафик FTP предназначенный для 192.168.218.10.
Чтобы получить трафик, не предназначенный для системы Kali, необходимо найти некий способ перенаправить ей соответствующие данные. Поскольку сетевой коммутатор принимает только пакеты, которые предназначены нам, мы должны обмануть целевую машину или маршрутизатор (идеально обоих) так, чтобы указать - этот трафик принадлежит нам. Выполним так называемую атаку «Человек посередине», которая позволит перенаправлять и прерывать трафик между двумя системами (кроме нашей собственной системы) прежде, чем передать пакеты на корректный узел. Рассмотрим один проверенный метод для того, чтобы подменить адрес приема трафика в сети - АRР-спуффинг.
Чтобы просмотреть кэш ARP в машине Kali, введите arp.
Рис 2. Результат команды arp
Перед тем, как обмануть цель Linux, передающую учетные данные для сервера FTP, необходимо указать машине Kali переправлять любые посторонние пакеты с определенным IР-адресом. Без передачи IP будет получен отказ в обслуживании (ДОС) в Сети, где законные клиенты будут неспособны получить доступ к службам. Например, если используется отправление кэшем ARP без IР-адреса передающего для перенаправления трафика от цели Linux, предназначенной для цели Windows ХР, к машине Kali, сервер FTP на машине Windows ХР не будет получать пакеты от машины Linux и наоборот. Установка для передачи IP на Kali находится по адресу /proc/sys/net/ipv4/ip_forward. Необходимо установить значение 1.
root@kali:~# echo 1 > /proc/sys/net/ipv4/ip_forward
Одним из удобных инструментов для отправления кэшем ARP является Arpspoof. Используя Arpspoof, необходимо указать сетевой интерфейс, цель атаки ARP и какой IР-адрес надо подменить. (Если не будет указана цель, то Вы отправите всю Сеть.) В рассматриваемом случае, чтобы обмануть Linux и сказать системе, что мы - машина Windows ХР, установим опцию i на ethO, чтобы определить интерфейс, +опцию как 192.168.20.11, чтобы определить цель - Linux, и 192.168.20.10 как IP Windows ХР, которой мы временно станем.
root@kali:-# arpspoof -i ethO -t 192.168.218.11 192.168.218.10
Arpspoof сразу начинает отправлять запросы ARP на цель Linux, сообщая ей, что машина Windows ХР имеет МАС-адрес Kali. (Записи кэша ARP обновлены, но рекомендуется выждать дополнительно немного времени, чтобы обновление ARP произошло наверняка.)
Рис 3. Результат работы arpspoof
Для реализации второго этапа атаки, нужно обмануть машину Windows ХР и передающий трафик, предназначенный для Linux, и также перенаправить Kali. Запустите другой экземпляр Программно-аппаратные средства анализа безопасности передачи данных в покапьных сетях 149 Arpspoof, выбрав машину Windows ХР как цель, а машину Linux как получатель.
root@kali:-# arpspoof -i ethO -t 192.168.218.10 192.168.218.11
Запустив отправление кэшем ARP, проверьте целевой кэш ARP Linux. Заметьте, что МАС-адрес, связанный с целью Windows ХР изменился
Рис 4. Проверка целевого кэша arp linux
Теперь войдите в систему Windows ХР на сервер FTP от цели Linux, использующей другую учетную запись
Убедившись, что после присоединения к IP 192.168.20.10 все работает в обычном режиме, и не вызывает у пользователя Linux беспокойства, можно вернуться в Wireshark, ознакомиться с полученным трафиком FTP и считать учетные данные входа в систему в тексте.
Можно также использовать отправление кэшем ARP, чтобы маскироваться под шлюз со значением по умолчанию и получать трафик входящий и исходящий Сети, предназначенный для Интернета. Остановите процессы Arpspoof, которые запустили, и попытайтесь обмануть Linux, переправляя весь трафик, передающийся к шлюзу машине Kali, маскирующейся под шлюз:
root@kali:-# arpspoof -1 ethO -t 192.168.218.11 192.168.218.1
root@kali:-# arpspoof -i ethO -t 192.168.218.1 192.168.218.11
Рис 5. Результаты спуфинга в Wireshark
Если просматривать Интернет из Linux, можно увидеть, что пакеты НТТР получены в Wireshark. Даже если уязвимая информация будет зашифрована с НТТР, то все равно будет видны адреса, куда пользователи заходили, и любая другая информация, отправленная (полученная) по НТТР. Например, если выполнить запрос Google, то простой текст запроса будет получен в Wireshark.
Рис 6. Перехват HTTP трафика в Wireshark
В дополнение к отправлению кэш ем ARP можно также отправить записи кэша службы доменных имен (DNS) (отображения доменных имен до IР-адресов), чтобы направить трафик, предназначенный для веб-сайта на управляемую машину. Подобно ARP, сопоставляющим IP и МАС-адреса, чтобы должным образом направлять трафик, DNS доменные имена, такие как www.sut.ru, сопоставляются с IР-адресом.
Отправления кэшем DNS и ARP работают одинаково. Отправляя набор поддельных ответов DNS, указывается неправильный IР-адрес для доменного имени. Далее удостоверьтесь, что сервер Арасhе работает, введя в командную строку:
root@kali:~# service apache2 start
Прежде чем использовать инструмент отправления кэшем DNS, необходимо создать файл, например, под именем hosts.txt, где будет храниться имитированная информация DNS, и адрес, куда необходимо направить трафик. Например, укажем любой системе, которая запрашивает DNS для www.sut.ru, что IР-адрес этого домена - машина Kali, добавляя запись 192.168.218.9 www.sut.ru к новому файлу под названием hosts.txt.
Перезапустите Arpspoof между целью Linux и шлюзом по умолчанию и наоборот, как делалось ранее. Теперь можно начать отправлять кэш DNS, используя инструмент спуффинга DNS Dnsspoof:
Рис 7. Результат работы DNS Spoof
Как только DNSspoof заработает, выполним команду nslookup от цели Linux
Рис 8. Результат работы nslookup на атакуемой машине
Теперь, если просмотреть http://www.sut.ru/ в Ubuntu, то панель URL должна показать адрес http://www.sut.ru/, т.е. фактически веб-сервер Kali. Можно сделать эту атаку более интересной, клонируя фактический вебсайт, при этом пользователь не заметит разницы.
Рис 9. Sut.ru на атакуемой машине
При отправлении кэшем ARP использовалась атака man-inthe-middled, трафик между целями Windows ХР и Ubuntu шел через машину Kali. Эти системы могли связаться друг с другом, но система Kali смогла получить трафик, находясь между ними. Можно сделать то же самое и атаковать трафик SSL, перехватив безопасную SSL-ceccию и перенаправляя трафик к и от www. facebook.com до системы Kali, таким образом получая конфиденциальную информацию. Для этого будем использовать Ettercap, многофункциональный комплект для атак «Человек посередине , который, в дополнение к атакам SSL, может также выполнить все атаки, которые до сих пор выполнялись с помощью инструментов Arpspoof и Dnsspoof. Выключите инструменты спуффинга, прежде чем запустить Ettercap.
Рис 10. Запуск Ettercap
С выполнением Ettercap будем ожидать пользователей, чтобы начать взаимодействовать с основанными на SSL веб-серверами. Переключитесь на цель Linux и попытайтесь выйти на вебсайт, используя SSL. Появится окно приветствия с сертификатом и предупреждением
Рис 11. Запрос сертификата SSL
Поскольку атака производится по принципу Человек посередине», безопасность сеанса SSL не может быть проверена. Сертификат, который представит Ettercap, допустим, для www. facebook.com, не будет иметь доверия браузера
Если щелкнуть на подтверждение и ввести учетные данные, Ettercap захватит их в простом тексте прежде, чем они будут переданы на сервер:
Рис 12. Результат который захватил Ettercap
Конечно, проблема с атаками «Человек посередине)> SSL со стоит в том, что пользователи могут и не щелкнуть по предупреждению сертификата SSL. Трудно сказать, насколько эффек тивны предупреждения сертификата для того, чтобы помешать пользователям посетить сайты HTTPS без допустимых сертификатов, хотя некоторые пользователи действительно щелкают по неподтвержденным сертификатам и посещают сайты. Более сложная атака позволит получать информацию в простом тек сте, не инициировав те очевидные предупреждения в браузере, что SSL-ceccия выдает пользователю.
С разделением SSL-ceccии Человек посередине осуществляется НТТР-соединение прежде, чем оно будет перенаправлено к SSL, и добавляется функциональность SSL прежде, чем отправляется пакет на веб-сервер. Когда веб-сервер отвечает по SSL, разделяем трафик снова и удаляем теги HTTPS прежде, чем отправим пакет клиенту.
Инструмент SSLstrip реализует разделение SSL. Перед его запуском необходимо настроить функцию Iptables, чтобы передавать трафик, получаемый на порт 80 через SSLstrip. Будем выполнять SSLstrip на порте 8080, затем перезапускать Arpspoof и имитировать шлюз со значением по умолчанию. После запустите sslstrip
root@kali:# iptaЫes -t nat -А PREROUТING -р tcp --destination-port 80 -j REDIRECT --to-port 8080 root@kali:# sslstrip -l 8080
Затем просмотрите сайт, который использует SSL (попробуйте любой сайт, который требует учетных данных входа в систему) от цели Linux, например страницу входа в систему Facebook. Как видно, НТТР заменил HTTPS в строке поиска
Рис 13. Стартовая страница facebook с подменённым http
Этот вид атаки сложнее, чем прямая атака «Человек посередине» SSL, из-за отсутствия предупреждающего сертификата, поскольку сервер завершает соединение SSL с SSLstrip, а не с браузером.
2015-12-28 19:16:35,323 SECURE POST Data {facebook.com): session %5Busername_or_email %5D=testuser&session %5 Bpassword %5D=testpassword&s cribe_log=&redirect_after_login= %2F &authenticity _token=a26a0faf67c2elle6738053 c81beb4b8ffa45c6a
SSLstrip сообщает о вводимых учетных данных (testuser: testpassword) в простом тексте.
Санкт-Петербург
2022