Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
12
Добавлен:
20.04.2024
Размер:
20.93 Mб
Скачать

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

 

E

 

 

 

 

X

 

 

 

 

 

 

 

 

-

 

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

wClick

 

BUY

o m

АДМИН

 

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

.c

 

 

.

 

 

c

 

 

 

 

 

 

p

df

 

 

 

 

e

 

 

 

-x

 

n

 

 

 

 

 

 

 

ha

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

← НАЧАЛО СТАТЬИw Click

 

BUY

 

m

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

.

 

 

c

 

 

 

.c

 

 

 

p

df

 

 

 

e

 

 

 

 

 

 

g

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

-x ha

 

 

 

 

 

ВОССОЗДАЕМ СХЕМУ ПОДКЛЮЧЕНИЙ ИЗ ДАМПА ТРАФИКА

МНОГО ЛИ МОЖЕТ РАССКАЗАТЬ CDP?

 

 

 

Проток­ ол CDP

служи­ т для обнаруже­ ния­

соседних­

сетевых устройств­

под управлением­

Cisco IOS и может предос­ тавить­

много­ полезной­ информа ­

ции. Рассмот­ рим­ подробно­

его самые интерес­ ные­ поля.

 

В перву­ ю очередь­ смотрим­ на несущий Ethernet-кадр и определя­ ­ем, что адрес назначения­ мультикас­ ­товый. А если глянуть­ на адрес источника­ (00: 19:56:bb:41:09), то становит­ ­ся понятно­ , что это MAC-адрес того самого маршру­ ­тиза­тора на нашей схеме­ .

Идем дальше­ и обращаем­ внимание­ на поле Device ID, которому­ прис ­ воено значение­ gateway. Это не что иное, как имя устройства­ , которое зада ­ ется командой­ hostname в Cisco IOS.

Следующие­ поля — Software Version и Platform — обознача­ ют­ версию­ прошив­ ки­ и модель самого устройства­ соответс­ твен­ но­ . Итак, мы имеем­ дело с маршру­ тиза­ тором­ Cisco 2821 с установ­ ленным­ програм­ мным­ обеспечени­ ­

ем C2800NM-ADVIPSERVICESK9-M, Version 12.4(3f), RELEASE SOFTWARE (fc3). Отобразим­ эту информаци­ ю на схеме­ и пойдем­ дальше­ .

Поле­ Port ID содержи­ т название­ и номер порта­ устройства­ , через который был отправлен­ данный­ CDP-пакет. В нашем случае­ это порт GigabitEthernet0/1. Теперь давай собирать пазл: только­ что мы выяснили­ , что пакет CDP отправлялся­ через порт G0/1, а MAC-адрес отправите­ ля­ в Ethernet-заголовке­ 00:19:56:bb:41:09. Делаем­ вывод, что MAC-адрес 00: 19:56:bb:41:09 принад­ лежи­ т порту­ G0/1.

Но это еще не все. Смотрим­ на поле Addresses и видим значение­ 192.168. 20.1. Это свидетель­ ству­ е­ т о том, что интерфейс, с которого­ был отправлен­ CDP-пакет (G0/1), имее­ т IP-адрес 192.168.20.1. Вроде­ бы ничего примеча­ ­ тельного­ , но давай вернемся­ назад и посмотрим­ на четвертый­ пакет DHCP ACK: в этом сообщении­ клиенту­ отвеча­ л DHCP-сервер­ с IP-адресом­ 192. 168.30.1 и — внимание­ — MAC-адресом­ 00:19:56:bb:41:09! А ведь до это ­ го мы определи­ ли­ , что порт G0/1 имее­ т IP-адрес 192.168.20.1 и MAC-адрес 00:19:56:bb:41:09. Выходит, на порте­ G0/1 висит два айпишника­ : 192.168.

20.1 и 192.168.30.1.

Как так получается­ ? А все дело в «роутере­ на палочке­ » — router on a stick — способе­ маршру­ ­тиза­ции между­ VLAN. В таком варианте­ маршру­ ­тиза ­ ции роутер соединяет­ ­ся с коммутато­ ­ром единствен­ ­ным проводом­ , а на физическом­ интерфейсе­ роутера­ создают­ ­ся логические­ субинтерфей­ ­сы (они еще называются­ подынтерфей­ ­сы), которым назнача­ ­ются IP-адреса­ из разных­ подсетей­ . Причем­ MAC-адреса­ у них идентичные­ , так как они часть одного­ физическог­ о порта­ (в нашем случае­ порта­ G0/1). Давай максималь­ ­но незамыслова­ то отобразим­ это на схеме­ .

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

Последнее­ поле, которое мы изучим­ в CDP-пакете, — это поле IP Prefxes. В нашем случае­ оно имее­ т три значения­ : 192.168.30.0/25, 192.168.20.0/ 27 и 66.1.66.0/24. Каждое­ значение­ представ­ ляе­ т один из непосредс­ твен­ но­ подклю­ чен­ ных­ к роутеру­ сегментов­ IP-сети. Про сети 192.168.30.0/25 и 192.168.20.0/27 мы уже знаем­ , а вот сегмен­ т 66.1.66.0/24 видим впер ­ вые. Тем не менее один из интерфейсов­ маршру­ тиза­ тора­ входи­ т в этот сег ­ мент сети.

ROUTING INFORMATION PROTOCOL

RIP — устарев­ ший­

внутренний­

протоко­

л динамичес­ кой­ маршру­ тиза­

ции­ . Его

характеризу­

ет­ 520-й UDP-порт, мультикас­

товый­

IP-адрес 224.0.0.9 и муль ­

тикастовый­

MAC-адрес.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

MAC-адрес отправите­

ля­ уже до боли знакомый­

. Значит­ , это сообщение­

было отправлен­ о во внутренн­

юю пользователь­

скую­

сеть, где, скорее­

всего­ ,

нет других­ роутеров­ . Таким образом­ , на этом роутере­ не сконфигури­

рован­

порт G0/1 как пассивный­

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Возможно­

, смотря­ на TTL, ты ожида­ л увидеть­

значение­

1, а на деле оно

равн­ о 2. Это сделан­ о для того, чтобы­ протоко­

л RIP мог работать в NBMA-

сетях. В общем, здесь ничего интерес­ ного­

. Рассмот­

рим­

непосредс­

твен­

но­

сам заголовок­

RIP.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Итак, поле Command обознача­

е­ т тип сообщения­

: для запроса­

значение­

устанав­

лива­

ется­

в 1, а для отклика­ или ответа­ — в 2. Но это не значит­ , что

кто то запроси­

л маршрут­

ну­ ю информаци­ ю от нашего роутера­ , так как RIP

каждые­

несколь­

к­ о секунд сам ее рассыла­

ет­ .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Поле­ Version, как ни странно­ , означае­ т верси­ ю протоко­

ла­ RIP. Вторая­ вер ­

сия отличает­

ся­ от первой­

лишь тем, что поддержи­

вае­ т бесклас­

совую­

адре ­

сацию. Простыми­

словами­

, RIPv2, помимо данных­ о сетях, передае­ т сведения­

о масках­ этих сетей и тем самым в современ­

ных­ реалиях имее­ т хоть какой то

шанс на существо­ вание­

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

И самое интерес­ ное­

 

— это поля, отобража­

ющие­

 

данные­

о

сетях,

до которых можн­ о добрать­

ся­ через наш маршру­ тиза­

тор­ . IP Address — здесь

отобража­

ется­

адрес сети назначения­

. В нашем примере­

их два: 192.168.30.

0 и 66.1.66.0. Метрика­ у обоих­ маршру­ ­тов равна­ единице­ . Это значит­ , что, чтобы­ добрать­ ­ся до этих сетей, другому­ роутеру­ нужно­ сделать­ один переход до места­ назначения­ . Значение­ поля Netmask, думаю, не нуждает­ ­ся в объ ­ яснении­ .

Router Tag, или метка­ маршру­ та­ , использует­ ся­ для того, чтобы­ обес ­ печить разделение­ внутренних­ маршру­ тов­ (маршру­ ты­ для сетей в пределах­ домена маршру­ тиза­ ции­ RIP) от внешних­ , которые, возможно­ , были импорти ­ рованы­ из EGP или другого­ IGP.

Значение­ Next Hop выставля­ ­ется как 0.0.0.0 в том случае­ , если сеть нап ­ рямую подсоеди­ ­нена к роутеру­ , тем самым роутер отправитель­ говорит, что он является­ хопом по пути к сети назначения­ .

Возможно­ , у тебя возник­ вопрос­ : почему в анонсе­ нет сети 192.168.20.0? Если взглянуть­ на IP-заголовок­ , то видно­ , что IP-адрес источника­ — 192.168. 20.1, который как раз таки входи­ т в сеть 192.168.20.0. Поэтому­ анон ­ сировать информаци­ ю об этой же сети ей же просто­ не нужно­ .

Итак, анализи­ ­руя пакет RIP, мы подтвер­ ­дили, что сеть 66.1.66.0/24 нап ­ рямую присоеди­ ­нена к нашему маршру­ ­тиза­тору.

THREE-WAY HANDSHAKE И HTTP-ЗАПРОС

Здесь мы снова­ видим TCP-протокол­ , однако­ IP- и MAC-адреса­ нам нез ­ накомы. Давай их изучать­ . Некий 192.168.20.2 с MAC-адресом­ f0:bf:97: 6a:a0:8b хочет установить­ связь с неким 5.9.243.178, отправляя­ SYN-зап ­ рос на шлюз по умолчани­ ю 00:19:56:bb:41:09 (Cisco Router).

Кроме­ того, в TCP-заголовке­ виден всем известный­ 80-й порт назначения­ . То есть хост 192.168.20.2 пытается­ установить­ TCP-сесси­ ю с HTTP-сер ­ вером. Также­ , если посмотреть­ на TTL (оно равно­ 64), можн­ о предположить­ , что инициато­ ­ром установ­ ­ления сессии­ выступа­ ­ет Unix-система­ . Добавим эту информаци­ ю на схему­ .

По 11-му и 12-му пакетам, очевид­ но­ , идет продол­ жение­ установ­ ки­ TCP-сес ­ сии и сервер­ в сторону­ клиента­ отправляе­ т пару флагов­ SYN/ACK. Опять же смотрим­ на TTL сервера­ : значение­ равно­ 49, что также­ предположи­ тель­ но­ указыва­ е­ т на ОС Unix на стороне­ веб сервера­ . Ведь пакет от сервера­ про ­ ходит определен­ ное­ количество­ маршру­ тизи­ рующих­ устройств­ , которые каж ­ дый раз уменьша­ ют величину­ TTL на единицу­ .

Ну и тольк­ о после­ завершения­ установ­ ки­ TCP-сессии­ клиен­ т формиру­ ет­ HTTP-запрос­ . Поглядим­ на него.

Тут, кроме­ того, что клиен­ т запрашива­ ­ет веб страницу­ http://xgu.ru/wiki/ HSRP, нет ничего интерес­ ­ного.

Наконец­ мы рассмот­ ­рели последний­ перехвачен­ ­ный пакет и получили­ сле ­ дующую картину­ .

Тут мы отобразили­ все интересу­ ющие­ нас данные­ , взятые­ из дампа­ . Осталось­ навести­ марафет, чтобы­ схема­ выглядела­ более понятной­ .

ВЫВОДЫ

Мы проана­ лизи­ рова­ ли­ всего­ тринад­ цать­ сетевых пакетов и извлекли­ из них мног­ о ценной­ информации­ об исходной сети. Этот подход­ к визуали­ зации­ будет полезен, к примеру­ , при поиске­ инциден­ тов­ в сети и траблшу­ тин­ ге­ . Как минимум подобное­ «чтение­ » сетевого­ трафика­ повысит твой скилл в сетевых технологи­ ях­ и прокача­ е­ т понимание­ принципов­ взаимо­ дей­ ствия­ сетевых устройств­ и протоко­ лов­ .

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

 

E

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

 

m

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

c

 

 

 

 

o

 

 

.

 

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

 

g

 

 

 

 

 

df

-x

 

n

e

 

 

 

 

 

ha

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

c

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x ha

 

 

 

 

«Хакеру» нужны новые авторы, и ты можешь стать одним из них! Если тебе интересно то, о чем мы пишем, и есть желание исследовать эти темы вместе с нами, то не упусти возможность вступить в ряды наших авторов и получать за это все, что им причитается.

Авторы получают денежное вознаграждение. Размер зависит от сложности и уникальности темы и объема проделанной работы (но не от объема текста).

Наши авторы читают «Хакер» бесплатно: каждая опубликованная статья приносит месяц подписки и значительно увеличивает личную скидку. Уже после третьего раза подписка станет бесплатной навсегда.

Кроме того, наличие публикаций — это отличный способ показать работодателю и коллегам, что ты в теме. А еще мы планируем запуск англоязычной версии, так что у тебя будет шанс быть узнанным и за

рубежом.

И конечно, мы всегда указываем в статьях имя или псевдоним автора. На сайте ты можешь сам заполнить характеристику, поставить фото, написать что-то о себе, добавить ссылку на сайт и профили в соцсетях. Или, наоборот, не делать этого в целях конспирации.

Я ТЕХНАРЬ, А НЕ ЖУРНАЛИСТ. ПОЛУЧИТСЯ ЛИ У МЕНЯ НАПИСАТЬ СТАТЬЮ?

Главное в нашем деле — знания по теме, а не корочки журналиста. Знаешь тему — значит, и написать сможешь. Не умеешь — поможем, будешь сомневаться — поддержим, накосячишь — отредактируем. Не зря у нас работает столько редакторов! Они не только правят буквы, но и помогают с темами и форматом и «причесывают» авторский текст, если в этом есть необходимость. И конечно, перед публикацией мы согласуем с автором все правки и вносим новые, если нужно.

КАК ПРИДУМАТЬ ТЕМУ?

Темы для статей — дело непростое, но и не такое сложное, как может показаться. Стоит начать, и ты наверняка будешь придумывать темы одну за другой!

Первым делом задай себе несколько простых вопросов:

«Разбираюсь ли я в чем то, что может заинтересовать других?»

Частый случай: люди делают что-то потрясающее, но считают свое занятие вполне обыденным. Если твоя мама и девушка не хотят слушать про реверс малвари, сборку ядра Linux, проектирование микропроцессоров или хранение данных в ДНК, это не значит, что у тебя не найдется благодарных читателей.

«Были ли у меня в последнее время интересные проекты?» Если ты ресерчишь, багхантишь, решаешь crackme или задачки на CTF, если ты разрабатываешь что-то необычное или даже просто настроил себе какую-то удобную штуковину, обязательно расскажи нам! Мы вместе придумаем, как лучше подать твои наработки.

«Знаю ли я какую то историю, которая кажется мне крутой?»

Попробуй вспомнить: если ты буквально недавно рассказывал кому-то о чем-то очень важном или захватывающем (и связанным с ИБ или ИТ), то с немалой вероятностью это может быть неплохой темой для статьи. Или как минимум натолкнет тебя на тему.

«Не подмечал ли я, что в Хакере упустили что то важное?» Если мы о чем-то не писали, это могло быть не умышленно. Возможно, просто никому не пришла в голову эта тема или не было человека, который взял бы ее на себя. Кстати, даже если писать сам ты не собираешься, подкинуть нам идею все равно можно.

Уговорили, каков план действий?

1.Придумываешь актуальную тему или несколько.

2.Описываешь эту тему так, чтобы было понятно, что будет в статье и зачем ее кому-то читать. Обычно достаточно рабочего заголовка и нескольких предложений (pro tip: их потом можно пустить на введение).

3.Выбираешь редактора и отправляешь ему свои темы (можно главреду — он разберется). Заодно неплохо бывает представиться и написать пару слов о себе.

4.С редактором согласуете детали и сроки сдачи черновика. Также он выдает тебе правила оформления и отвечает на все интересующие вопросы.

5.Пишешь статью в срок и отправляешь ее. Если возникают какие-то проблемы, сомнения или просто задержки, ты знаешь, к кому обращаться.

6.Редактор читает статью, принимает ее или возвращает с просьбой

доработать и руководством к действию.

7. Перед публикацией получаешь версию с правками и обсуждаешь их

с редактором (или просто даешь добро).

8.Дожидаешься выхода статьи и поступления вознаграждения.

Если хочешь публиковаться в «Хакере», придумай тему для первой статьи и предложи редакции.

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

№6 (291)

Андрей­

Письмен­ ­ный

Вален­ тин­ Холмогоров­

Илья Русанен

Главный­ редактор­

 

Ведущий редактор­

Разработ­

­ка

pismenny@glc.ru

valentin@holmogorov.ru

rusanen@glc.ru

 

 

 

 

 

Евгени­

я Шарипова­

 

 

 

 

 

 

 

Литератур­ ный­ редактор­

 

 

MEGANEWS

Мари­ я Нефёдова­ nefedova@glc.ru

АРТ

yambuto yambuto@gmail.com

КОНСУЛЬТАЦИОННЫЙ СОВЕТ

Иван Андреев­ , Олег Афонин­ , Марк Бруцкий­ Стем ­ пковский, Алексей­ Глазков­ , Nik Zerof, Юрий Язев

РЕКЛАМА

Анна­ Яковлева­

Директор­ по спецпро­ ­ектам yakovleva.a@glc.ru

РАСПРОСТРАНЕНИЕ И ПОДПИСКА

Вопросы­

о подписке­

:

​Воп­росы о материалах­

:

 

lapina@glc.ru

 

 

support@glc.ru​

 

 

 

 

 

 

 

 

 

 

Адрес­ редакции­ : 125080, город Москва­ , Волоколам­ ­ское шоссе­ , дом 1, строение­ 1, этаж 8, помещение­ IX, комната­ 54, офис 7. Издатель­ : ИП Югай Александр­ Олегович­ , 400046, Волгоград­ ­ская область, г. Волгоград­ , ул. Дружбы­ народов, д. 54. Учредитель­ : ООО «Медиа Кар»​​125080, город Москва­ , Волоколам­ ­ское шоссе­ , дом 1, строение­ 1, этаж 8, помещение­ IX, комната­ 54, офис 7. Зарегистри­ ­рова­но в Федеральной­ службе­ по надзору­ в сфере­ связи­ , информацион­ ­ных технологий­ и массовых­ коммуника­ ­ций (Роскомнад­ ­зоре), свидетель­ ­ство ​Эл № ​ФС77-​67001 от ​30.​ 08.2016​ года. Мнение­ редакции­ не обязатель­ ­но совпада­ ­ет с мнение­ м авторов­ . Все материалы­ в номере предос­ ­тавля­ются как информация­ к размышле­ ­нию. Лица, использующие­ данную­ информацию­ в противо­ ­закон­ных целях, могут быть привлечены­ к ответствен­ ­ности. Редакция­ не несет ответствен­ ­ности за содержание­ рекламных­ объявле­ ­ний в номере. По вопросам­ лицензирова­ ­ния и получения­ прав на использование­ редакцион­ ­ных материало­ в журнала­ обращай­ ­тесь по адресу­ : xakep@glc.ru. © Журнал­ «Хакер», РФ, 2022

Соседние файлы в папке журнал хакер