Курсовая работа:

advertisement
Курсовая работа:
Исследование возможности
удаленной идентификации
сетевых устройств.
Введение в предметную
область
• Большинство устройств в сети содержит
некоторую доступную для других
устройств информацию.
• Сетевой сканер nmap определяет ОС
удалённой машины.
Постановка задачи
Целью данной курсовой работы является исследование возможности
удалённой идентификации сетевых устройств в сетях TCP/IP/Ethernet.
Для успешного выполнения работы требуется:
1. Формализовать задачу удаленной идентификации сетевых устройств с
помощью активного сканирования.
2. Построить набор параметров для идентификации узлов общего
назначения (серверов и рабочих станций) в локальных сетях
архитектуры TCP/IP/Ethernet
3. Определить граничные условия применимости для каждого из
параметров.
4. Выбрать ограниченный набор параметров для пилотной реализации.
5. Разработать алгоритм построения профиля сетевого устройства.
6. Разработать и реализовать систему удаленной идентификации
сетевых устройств по данному набору параметров.
7. Провести экспериментальные исследования в локальной сети ЛВК с
целью оценки эффективности идентификации.
Задача удалённой
идентификации
1.
Требуется построить набор параметров сетевых
устройств, каждый из которых может служить
уникальной характеристикой устройства в пределах
заданных граничных условий (назовём такой набор
профилем сетевого устройства)
2.
Разработать метод идентификации устройств на
основе профиля. Метод идентификации должен
быть устойчив к изменениям наблюдаемого
профиля в пределах граничных условий - при
смене способа подключения устройства к сети,
географического положения, частичном изменении
программной или аппаратной конфигурации.
Набор параметров для
удалённой идентификации.
• Информацию об удалённом хосте можно получить двумя
способами: при помощи активного и пассивного сканирования.
Уровни стека протоколов TCP/IP:
4.Прикладной
FTP, TELNET, SMTP, TFTP, DNS, Сужба времени, Эхо
3.Транспортный
TCP, GGP, HMP, EGP, UDP
2.Internet
IP/ICMP
1.Уровень доступа к сети
Локальные сети, ARPANET, SATNET, Пакетная радиосеть
Набор параметров для
пилотной реализации
• Сервисы.
• Тесты обработки TCP-пакетов.
Тесты обработки TCP-пакетов.
•
Tseq ( Class = i800 ) - тест определения закона изменения ISN хоста.
•
T1(DF=N%W=C000|EF2A%ACK=S++%Flags=AS%Ops=MNWNNT) - тест определения TCP-опций.
В данном тесте на открытый порт сервера хост посылает SYN-пакет с набором TCP-опций. В скобках записаны
параметры, возвращаемые в ответе на посланный SYN-пакет
•
T2(Resp=Y%DF=N%W=0%ACK=S%Flags=AR%Ops=) - тест обработки NULL-пакета.
На открытый порт сервера хост отправляет "пустой" пакет с указанием TCP-опций, аналогичных предыдущему
тесту.
•
T3(Resp=Y%DF=N%W=C000|EF2A%ACK=0%Flags=A%Ops=NNT) - тест обработки SYN|FIN|PSH|URG-пакета.
На открытый порт сервера хост посылает пакет с указанием соотв. набора флагов и без указания TCP-опций.
•
T4(DF=N%W=0%ACK=0%Flags=R%Ops=) - тест обработки ACK-пакета.
На открытый порт сервера хост отправляет ACK-пакет
•
T5(DF=N%W=0%ACK=S++%Flags=AR%Ops=) - тест обработки SYN-пакета.
На закрытый порт сервера хост отправляет SYN-пакет.
•
T6(DF=N%W=0%ACK=0%Flags=R%Ops=)- тест обработки ACK-пакета на закрытый порт.
На закрытый порт сервера хост отправляет ACK-пакет.
•
T7(DF=N%W=0%ACK=S%Flags=AR%Ops=) - тест обработки FIN|PSH|URG-пакета.
На закрытый порт сервера хост отправляет соответствующий пакет.
•
PU(DF=N%TOS=0%IPLEN=38%RIPTL=148%RID=E%RIPCK=E%UCK=E%ULEN=134%DAT=E) - тест формата ICMPсообщения Port Unreachable.
На закрытый порт сервера с большим номером хост отправляет запрос (TCP и UDP-пакет), и анализируется
прибывшее в ответ ICMP-сообщение Port Unreachable
Архитектура и алгоритмы работы
системы идентификации
./fpbase [OPTIONS] HOST | FILENAME
Программа поддерживает следующие опции:
-s, --scan - Указывает, что должно быть проведено сканирование хоста.
Следовательно последним параметром должно быть имя хоста, либо его ipадрес
-f, --file - Указывает, что результаты сканирования следует взять из файла.
Последним параметром должен быть путь к файлу.
-o, --output - Используется в комбинации с опцией –s для перенаправления потока
вывода в файл. Следующим параметром должен быть путь к файлу для вывода
результатов.
-i, --identificate - Указывает, что требуется идентифицировать устройство по
полученным (из файла, либо в процессе сканирования) результатам
сканирования.
Архитектура и алгоритмы работы
системы идентификации
• Для удобства распознавания файлов с результатами
cканирования, вывод осуществляется в формате
похожем на формат вывода сканера nmap.
• При указании опции -i, результат представляет собой
набор строк следующего вида:
profile name(ip) in base = zigzag.lvk.cs.msu.su(158.250.17.23), probability 78%
profile name(ip) in base = ghostwalk.lvk.cs.msu.su(158.250.17.87), probability
89%
profile name(ip) in base = ka50.lvk.cs.msu.su(158.250.17.90), probability 78%
Результаты экспериментов
• Просканировано 18 компьютеров лаборатории
5 из них имеют абсолютно идентичные профили(один открытый
порт 7777/tcp и одинаковую реакцию на tcp-пакеты), а 3 хоста не
имеют ни одного открытого порта, и, соответственно,
проведение полного tcp-сканирования невозможно
• Оставшиеся 10 компьютеров удачно
идентифицировались после повторного их
сканирования.
Заключение
Как показали эксперименты, из просканированных 18ти машин, отфильтровать пришлось 8. А это
немалая часть. Но успех эксперимента с 10-ю
оставшимися машинами также нельзя считать
доказательством возможности идентификации
узлов, которые не отфильтровываются после
первого взгляда.
Успеху эксперимента содействовали 2 факта:
•
Слишком мало машин содержалось в базе.
•
Почти все машины содержали избыточное
количество информации.
Download