Sunday, July 22nd, 2018

Профилирование операционной системы (Часть 2)

Published on Февраль 4, 2009 by   ·   Комментариев нет

Если вы хотите ознакомиться с остальными частями этой статьи, пожалуйста, прочитайте:

Профилирование операционной системы (часть II)

В первой части этой статьи мы остановились на том, что видели, что отправит вам компьютер в ответ на посланный нами SYN пакет. Так же мы увидели, что может скрывать вернувшийся пакет SYN/ACK. Это говорит о том, что вы пытаетесь обнаружить открытый порт на компьютере, для которого был послан этот пакет. В случае компьютера из первой части этой статьи мы послали пакет на TCP порт 135. Обычно этот пакет должен быть закрыт брандмауэром в корпоративной среде, или в действительности, просто закрыт на граничном маршрутизаторе.

Теперь мы продолжим нашу работу и пошлем еще несколько пакетов на этот компьютер. Теперь мы будем немного изменять те, которые посылали ранее, чтобы посмотреть, есть ли что-нибудь интересное в ответе или отсутствии такового. Два посланных нами пакета будут пакет RST и пакет ACK. На этом месте давайте приступим непосредственно к заданию.

Посылка неожиданного стимула

Вся задача сводится к посылке некого неожиданного стимула, в нашем случае будет использоваться операционная система Windows 2000 Professional, и посмотреть, как он на него отреагирует. Синтаксис, который будет использоваться для Hping, в этом случае будет следующим.


Hping –R 192.168.1.105 –p 135 –c 1

С помощью вышеупомянутого синтаксиса для Hping будет послан один пакет RST на TCP порт 135 на тестовый компьютер с операционной системой Windows 2000 Professional. Что вернется в ответ на такой запрос? Давайте посмотрим ниже.


18:14:44.140625 IP (tos 0x0, ttl  64, id 484, offset 0, flags [none], proto: TCP(6), length: 40) 192.168.1.101.2210 > 192.168.1.105.135: R, cksum 0x5a49 (correct), 1691534017:1691534017(0) win 512
 0x0000:  4500 0028 01e4 0000 4006 f4cd c0a8 0165  E..(....@......e
 0x0010:  c0a8 0169 08a2 0087 64d2 c2c1 6fa7 2f14  ...i....d...o./.
 0x0020:  5004 0200 5a49 0000 0000 0000 0000       P...ZI........

Итак, как мы можем увидеть, мой ноутбук, с установленным на нем Hping (IP 192.168.1.101), послал пакет RST по адресу 192.168.1.105 на TCP порт 135. Однако я не получил никакого ответа от компьютера с операционной системой Windows 2000 Professional. По существу компьютер просто проигнорировал. Интересно. Таким образом, мы знаем, что операционная система W2K Pro просто игнорирует любой RST пакет, посланный на его слушающий служебный порт. Хорошо. Теперь сделаем некую другую работу. Давайте попробуем послать новый пакет ACK на слушающий порт. Синтаксис для Hping для этого выглядит следующим образом.


Hping –A 192.168.1.105 –p 135 –c 1

Ниже мы можем увидеть, что в этот раз компьютер с операционной системой W2K Pro ответил на запрос.


18:21:27.906250 IP (tos 0x0, ttl  64, id 24642, offset 0, flags [none], proto: TCP (6), length: 40) 192.168.1.101.1455 > 192.168.1.105.135: ., cksum 0x8a42 (correct), ack 1793737102 win 512
0x0000:  4500 0028 6042 0000 4006 966f c0a8 0165  E..(`B..@..o...e
0x0010:  c0a8 0169 05af 0087 20d5 cbef 6aea 418e  ...i........j.A.
0x0020:  5010 0200 8a42 0000 0000 0000 0000       P....B........
18:21:27.906250 IP (tos 0x0, ttl 128, id 682, offset 0, flags [none], proto: TCP
(6), length: 40) 192.168.1.105.135 > 192.168.1.101.1455: R, cksum 0xcc9a (correct), 1793737102:1793737102(0) win 0
 0x0000:  4500 0028 02aa 0000 8006 b407 c0a8 0169  E..(...........i
 0x0010:  c0a8 0165 0087 05af 6aea 418e 6aea 418e  ...e....j.A.j.A.
 0x0020:  5004 0000 cc9a 0000                      P.......

Теперь в самом верху мы видим пакет АСК, который мой ноутбук (IP 192.168.1.101) послал на компьютер с операционной системой W2K Pro на его TCP порт 135. Я подчеркнул “ack”, а также значение “10”, т.к. это шестнадцатиричное значение соответствует флагу ACK, который устанавливается в поле флагов в заголовке TCP header. В пакете, расположенном немного ниже первого, мы видим, что ответил компьютер с операционной системой W2K Pro на посланный ему пакет ACK packet. В этом случае он вернул назад пакет RST packet. Не RST/ACK, а просто RST. Другими словами, он просто сбрасывает соединение (RST), убивает его, если вам будет угодно. Именно так настроен работать стек TCP/IP в операционной системе W2K Pro.

Этот простой запрос RST является еще одним кирпичиком информации, которая постепенно у нас накапливается, т.к. она помогает нам профилировать компьютер с операционной системой W2K Pro. Вы можете также обратить внимание, что я подчеркнул раздел “win 0”. Он показывает, что операционная система W2K Pro сообщает другому компьютеру (моему ноутбуку) не посылать никакую информацию, т.к. она содержит нулевой размер, для его буфера приема (receive buffer) или win size. Это полезно знать также, что стек TCP/IP в операционной системе W2K Pro ведет себя именно так. Это еще одна частичка полезной информации.

На компьютере с Windows XP Pro

Итак, мы рассмотрели, как ведет себя операционная система W2K Pro, и как она отвечает на пакеты SYN, RST и ACK, которые были посланы на ее слушающий порт. Теперь мы займемся тем, что отправим тот же самый набор пакетов на компьютер с операционной системой Windows XP Pro box. Целью такого эксперимента является то, что стек TCP/IP в операционной системе XP Pro может вести себя совершенно не так, как в операционной системе W2K Pro. А раз так, то с помощью этого мы сможем отличить операционную систему W2K Pro от операционной системы XP Pro.

Для краткости я не буду включать пакеты, которые я послал на компьютер с операционной системой XP Pro, и которые получил в ответ на свой ноутбук. Достаточно сказать, что операционная система XP Pro действовала точно также, как и операционная система W2K Pro. Она ответила пакетом SYN/ACK на пакет с SYN, игнорировала пакет RST packet, который был ей послан, и ответила пакетом RST packet, когда получила пакет ACK. Поэтому нет различий в том, как стеки операционных систем W2K Pro и XP Pro TCP/IP реагируют на различные пакеты, чтобы помогло нам отличить эти две системы.

Но достаточно четкую идентификацию, что мы работаем с различными операционными системами Windows, мы можем получить с помощью ttl 128. Размер win size тут не поможет, т.к. он соответствует предыдущим результатам, как можно увидеть, перейдя по ссылке, которую я приводил в первой части этой статьи. Хотя я не знаю этого точно, большой размер win size говорит о том, что компьютеры находятся в одном сетевом сегменте. Не тратя время на поиски, я просто настроил быстрый тестовый сценарий. Я послал пакет SYN на свой вебсайт (http://www.bridonsecurity.com/) на порт 80. Вебсайт ответил с размеров win size равным 5840. Теперь все становится понятно, и четко укладывается в то, что мы знаем об операционной системе Windows. Мой вебсайт располагается во внешней сети компании.

Резюме

На этом месте я завершу эту часть статьи, а в третье части мы займемся тем, что произведем тот же самый тест на операционной системе Windows 2003 Standard, чтобы посмотреть, как она ответит. Далее, мы посмотрим на информацию о профилируемом компьютере с помощью nbtstat. Хотя многие люди слышали об этом инструменте, лишь не многие знают о том, какую информацию можно получить с его помощью, и как это сделать. Об этом мы расскажем в третьей части этой статьи. До скорых встреч!

Источник www.windowsecurity.com


Смотрите также:

Tags: ,

Readers Comments (Комментариев нет)




Да человек я, человек! =)

Exchange 2007

Проведение мониторинга Exchange 2007 с помощью диспетчера System Center Operations Manager 2007 (часть 3)

Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам: Проведение мониторинга Exchange 2007 с помощью диспетчера System ... [+]

Практическое рассмотрение перехода с Exchange 2003 на Exchange 2007 (часть 1)

Введение В этой статье из нескольких частей я хочу показать вам процесс, который недавно использовал для перехода с существующей среды Exchange 2003 ... [+]

Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (часть 2)

Если вы пропустили первую часть этой серии, пожалуйста, прочтите ее по ссылке Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (Часть ... [+]

Мониторинг Exchange 2007 с помощью диспетчера System Center Operations Manager 2007 (часть 2)

Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Мониторинг Exchange 2007 с помощью диспетчера System Center Operations ... [+]

Подробное рассмотрение подготовки Active Directory для Exchange 2007 (часть 5)

Если вы пропустили предыдущие части этой серии статей, перейдите по ссылкам: Подробное рассмотрение подготовки Active Directory для Exchange 2007 (часть 1) ... [+]

Установка и настройка Exchange 2007 из командной строки (Часть 3)

If you missed the previous parts in this article series please read: Exchange 2007 Install and Configuration from the command line (Part ... [+]

Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (часть 1)

Инструмент ExRCA Текущий выпуск инструмента предоставляется только в целях тестирования и оснащен 5 опциями: Тест подключения Outlook 2007 Autodiscover Тест подключения Outlook 2003 RPC ... [+]

Развертывание сервера Exchange 2007 Edge Transport (часть 5)

Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам: Развертывание сервера Exchange 2007 Edge Transport (часть 1) Развертывание ... [+]

Установка и настройка Exchange 2007 из командной строки (часть 2)

Если вы пропустили первую статью данного цикла, пожалуйста, перейдите по ссылке: Exchange 2007 Install and Configuration from the command line (Part ... [+]

Использование интегрированных сценариев Using Exchange Server 2007 – часть 2: генерирование отчетов агента Transport AntiSpam Agent

Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Использование интегрированных сценариев Using Exchange Server 2007 – часть ... [+]