Домашняя » как » Отпечатки пальцев хакерской ОС с размерами окон TTL и TCP

    Отпечатки пальцев хакерской ОС с размерами окон TTL и TCP

    Знаете ли вы, что вы можете узнать, в какой операционной системе работает сетевое устройство, просто взглянув на то, как оно взаимодействует в сети? Давайте посмотрим, как мы можем узнать, на какой операционной системе работают наши устройства..

    Зачем ты это делаешь?

    Определение операционной системы, на которой работает машина или устройство, может быть полезным по многим причинам. Сначала давайте взглянем на повседневную жизнь. Представьте, что вы хотите переключиться на нового интернет-провайдера, который предлагает безлимитный интернет за 50 долларов в месяц, чтобы вы могли попробовать их сервис. Используя дактилоскопию ОС, вы скоро обнаружите, что они имеют мусорные маршрутизаторы и предлагают услугу PPPoE, предлагаемую на множестве компьютеров с Windows Server 2003. Похоже, это уже не так выгодно, да?

    Другое использование для этого, хотя и не столь этичного, - факт, что дыры в безопасности являются специфическими для ОС. Например, вы выполняете сканирование портов и обнаруживаете, что порт 53 открыт, а на компьютере установлена ​​устаревшая и уязвимая версия Bind. У вас есть ОДИН шанс получить возможность использовать дыру в безопасности, поскольку неудачная попытка может привести к сбою демона..

    Как работает фингерпринтинг ОС?

    При пассивном анализе текущего трафика или даже при просмотре захвата старых пакетов один из самых простых и эффективных способов сделать отпечатки пальцев ОС - просто посмотреть на размер окна TCP и время жизни (TTL) в заголовке IP первого пакет в сеансе TCP.

    Вот значения для более популярных операционных систем:

    Операционная система Время жить Размер окна TCP
    Linux (ядро 2.4 и 2.6) 64 5840
    Google Linux 64 5720
    FreeBSD 64 65535
    Windows XP 128 65535
    Windows Vista и 7 (Server 2008) 128 8192
    iOS 12.4 (маршрутизаторы Cisco) 255 4128

    Основная причина того, что операционные системы имеют разные значения, связана с тем, что в RFC для TCP / IP не предусмотрены значения по умолчанию. Еще одна важная вещь, которую следует помнить, это то, что значение TTL не всегда будет соответствовать одному в таблице, даже если ваше устройство работает под управлением одной из перечисленных операционных систем, вы видите, когда вы отправляете IP-пакет по сети, операционная система отправляющего устройства устанавливает TTL на значение по умолчанию TTL для этой ОС, но по мере прохождения пакетов маршрутизаторами TTL уменьшается на 1. Поэтому, если вы видите TTL 117, можно ожидать, что это будет пакет, который был отправлен с TTL 128 и прошел 11 роутеров перед тем как быть захваченным.

    Использование tshark.exe - это самый простой способ увидеть значения, поэтому после получения пакета перехвата убедитесь, что у вас установлен Wireshark, а затем перейдите к:

    C: \ Program Files \

    Теперь удерживайте кнопку Shift и щелкните правой кнопкой мыши папку Wireshark и выберите здесь открыть окно команд из контекстного меню.

    Теперь введите:

    tshark -r "C: \ Users \ Taylor Gibb \ Desktop \ blah.pcap" "tcp.flags.syn eq 1" -T поля -e ip.src -e ip.ttl -e tcp.window_size

    Обязательно замените «C: \ Users \ Taylor Gibb \ Desktop \ blah.pcap» абсолютным путем к захвату вашего пакета. Как только вы нажмете Enter, вам будут показаны все пакеты SYN из вашего захвата в более удобном для чтения формате таблицы.

    Теперь это случайный захват пакетов, который я сделал, подключившись к сайту How-To Geek, и среди всего остального, что делает Windows, я могу точно сказать вам две вещи:

    • Моя локальная сеть 192.168.0.0/24
    • Я на Windows 7 коробке

    Если вы посмотрите на первую строку таблицы, то увидите, что я не вру, мой IP-адрес - 192.168.0.84, мой TTL - 128, а мой размер окна TCP - 8192, что соответствует значениям для Windows 7..

    Следующее, что я вижу, это адрес 74.125.233.24 с TTL 44 и размером окна TCP 5720. Если я посмотрю на свою таблицу, то не будет ОС с TTL 44, однако там будет сказано, что Linux - это серверы Google. запустить есть размер окна TCP 5720. После быстрого поиска в Интернете по IP-адресу вы увидите, что это на самом деле сервер Google.

    Для чего еще вы используете tshark.exe, сообщите нам в комментариях.