Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
книги хакеры / Михаил_Флёнов_Компьютер_глазами_хакера.pdf
Скачиваний:
16
Добавлен:
19.04.2024
Размер:
6.23 Mб
Скачать

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

d

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

 

F

 

 

 

 

 

 

 

t

 

 

232P

 

 

 

 

 

i

 

 

P

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

r

 

D

 

Глава 5

 

D

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

r

 

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

NOW!

o

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

wвыявляет попытки подбора и сигнализирует об этом. Убедитесь, что ваш сетевой

w Click

to

 

 

 

 

 

m

 

w Click

to

 

 

 

 

 

 

m

 

экранdf

содержитn

подобную функцию.

w

 

df

 

 

n

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

 

w

 

 

 

 

 

 

 

 

o

 

.

 

 

 

 

g

.c

 

 

 

.

 

 

 

 

g

.c

 

 

 

p

 

 

 

 

 

 

 

 

 

 

p

 

 

 

 

 

 

 

 

 

 

 

-xcha

e

 

 

 

 

 

 

-x cha

 

e

 

Но прежде чем приступать к подбору пароля, нужно хорошо отредактировать словари имен и паролей. Очень важно знать, какую систему вы взламываете. Именно для этого мы определяли версию ОС. Например, если это серверный вариант Windows, то желательно, чтобы среди логинов был "Администратор". Ну а если это UNIX-подобная система, то обязательно должен присутствовать "root", а все имена типа "Администратор" нужно убрать, потому что в UNIX-системе таких логинов не создают, особенно на русском языке.

Если перед нами ОС Windows, то желательно знать и локализацию. В русской версии "Администратор" пишется по-русски, а в английской это "Administrator".

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

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

Например, я сталкивался с MS SQL Server 7.0, в котором включена встроенная учетная запись "sa", и при этом абсолютно без пароля. Наверное, поэтому Microsoft собирается убрать это имя своего сервера баз данных, а в SQL Server 2000 на каждом шагу предупреждает, что нужно указывать пароль. Если администратор не увидит таких откровенных предупреждений, то я бы его уволил первым паровозом.

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

Для подбора пароля я опять могу посоветовать Shadow Scan или CyD NET Utils, в которую включен очень хороший генератор словарей и реализованы подборщики по всем основным протоколам для соответствующих сервисов.

5.8.4. Локальная сеть

Взлом в локальной сети может быть проще по многим причинам:

компьютеры подключены по скоростному соединению от 10 Мбит/с и выше;

есть возможность прослушивать трафик других компьютеров в сети;

 

 

hang

e

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

 

C

E

 

 

X

 

 

 

 

 

 

 

 

 

 

X

 

 

 

 

-

 

 

 

 

 

d

 

 

 

 

 

-

 

 

 

 

d

 

F

 

 

 

 

 

 

t

 

 

 

 

F

 

 

 

 

 

t

 

 

 

 

 

 

 

 

i

 

 

 

для хакера

P

 

 

 

 

 

 

 

i

 

ИнтернетP

D

 

 

 

233

D

 

 

 

 

 

 

 

r

 

 

 

 

 

 

 

 

r

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

NOW!

o

 

 

to

BUY

 

 

 

 

 

w

 

 

to BUY

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

wможно создавать подставные серверы;

 

 

 

 

 

 

 

 

w Click

 

 

 

 

 

 

o

m

 

 

w Click

 

 

 

 

o

m

w

очень-xcha

 

редко используются профессиональные сетевые экраны,

 

w

 

 

 

 

 

 

 

.

 

 

потому что-x cha

 

их

p

 

 

 

 

g

 

 

 

 

 

 

 

p

 

 

 

g

 

 

 

df

 

 

n

e

 

 

 

 

 

 

 

df

 

n

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ставят в основном перед выходом в Интернет, а персональные экраны далеки от идеала.

Рассмотрим различные варианты взломов, которые получили наибольшее распространение.

Прослушивание трафика

В локальной сети есть свои особенности. Соединения могут осуществляться различными способами. От выбранного типа топологии сети зависят используемый вид кабеля, разъем и используемое оборудование. При подключении по коаксиальному кабелю могут применяться две схемы: все компьютеры объединяются напрямую в одну общую шину (рис. 5.15) или кольцо. Во втором случае крайние компьютеры тоже соединены между собой (на рисунке показано пунктирной линией), и когда они обмениваются данными, все пакеты проходят через сетевую карту соседнего компьютера.

Компьютер

Компьютер

Компьютер

Рис. 5.15. Соединение по общей шине

Если используется такая топология, то весь трафик обязательно проходит через все компьютеры сети. Почему же вы его не видите? Просто ОС и сетевой адаптер сговорились и не показывают чужой трафик. Но если очень сильно захотеть, то, воспользовавшись программой-снифером, можно и просмотреть все данные, проходящие мимо сетевой карточки, даже если они предназначены не вам.

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

Соединение по коаксиальному кабелю встречается все реже, потому что оно ненадежно, позволяет передавать данные максимум на скорости 10 Мбит/с, сильно ограничено в длине и кабель неудобен в прокладке.

При объединении компьютеров через хаб (hub) или коммутатор (switch) используется топология "звезда" (рис. 5.16). В этом случае компьютеры с помощью витой пары получают в одну общую точку.

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

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

d

 

 

-

 

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

F

 

 

 

 

 

 

 

 

t

 

 

234P

 

 

 

 

 

i

 

P

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

r

D

 

 

Глава 5

 

D

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

r

 

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

NOW!

o

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

wмутатором пакеты будет видеть только получатель, потому что коммутатор имеет

w Click

to

 

 

 

 

 

m

w Click

to

 

 

 

 

 

 

m

 

встроенныеdf n

w

 

 

 

 

 

n

на

 

возможности маршрутизации, которые реализуются в основномdf

 

w

 

 

 

 

 

 

 

o

 

 

w

 

 

 

 

 

 

 

 

 

o

 

.

 

 

 

 

g

.c

 

 

.

 

 

 

 

 

g

.c

 

 

 

p

 

 

 

 

 

 

 

 

 

p

 

 

 

 

 

 

 

 

 

 

 

 

-xcha

e

 

 

 

 

 

 

-x cha

 

e

 

уровне MAC-адреса. В локальной сети, даже если вы отправляете данные на IP-адрес, используется физический адрес компьютера. При работе через Интернет всегда используется IP-адресация, и на этом уровне работают далеко не все комму-

таторы. Для того чтобы пакеты проходили по правильному пути, нужны уже более интеллектуальные устройства — маршрутизаторы. Они также передают набор данных только на определенную машину или другому маршрутизатору, который знает, где находится компьютер получателя. Маршрутизаторы оперируют IP-адресами.

Linux-сервер NT-сервер

Сервер

баз данных

SQL

NT

Коммутатор

Компьютер Компьютер Компьютер

Рис. 5.16. Соединение через хаб или коммутатор

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

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

Сейчас в сети можно скачать громадное количество сниферов и дополнений к ним. Всевозможные версии "заточены" под разные нужды, и тут необходимо выбирать, исходя именно из этих соображений. Если вы ищете непосредственно пароли, то вам требуется снифер, который умеет выделять данные о регистрации из общего трафика сети. В принципе, это не так сложно, если учесть, что все пароли и любая информация пересылается в Интернет в открытом виде как текст, если не используется протокол SSL. Так уж получилось, что большинство интернет-протоколов текстовые и передают все данные в открытом виде.

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

-

 

 

 

 

 

d

 

 

 

F

 

 

 

 

 

 

i

 

 

 

F

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

t

 

для хакера

 

 

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

o

P

D

 

 

 

 

 

 

 

 

o

 

 

 

 

 

 

 

 

r

 

 

 

 

 

 

 

 

 

r

 

ИнтернетP

 

 

 

 

 

 

235

 

 

 

 

to

BUY

NOW!

 

 

 

 

 

 

 

to

BUY

NOW!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

wПреимущество от использования сниферов при взломе в том, что ониwникак не

w Click

 

 

 

 

 

o

m

 

w Click

 

 

 

 

 

 

o

m

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

.c

 

 

 

.

 

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

 

e

 

 

 

 

p

 

 

 

 

 

e

-

 

 

 

 

 

 

g

 

 

 

 

 

 

 

 

 

 

g

 

 

 

влияютdf n

 

на атакуемую машину, и, значит, вычислить его очень сложно. В большинdf n

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

-x cha

 

 

 

 

 

 

стве случаев даже невозможно узнать, что ваш трафик кем-то прослушивается в поисках паролей.

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

Связь обеспечивалась через простой сетевой интерфейс и протокол TCP/IP. Я подключил снифер и прослушал все пакеты, которыми обменивалось устройство со стандартной программой. Потом написал собственный простой пример, чтобы убедиться в работоспособности определенного мной протокола, и передал полученную информацию представителю фирмы. Компании это стоило лишних денег, а ведь не так уж и сложно было самостоятельно прослушать трафик.

Жаль, что сниферы не позволяют изменять пакеты. Мы можем только увидеть передаваемые другими компьютерами данные.

Подставной адрес

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

На первый взгляд, защита безупречна. Но существует такой метод атаки, как спуфинг, который подразумевает подделку IP-адреса авторизованного пользователя и вход в штурмуемый сервер. Старые сетевые экраны (да и дешевые современные) не могут определить фальшивый адрес в пакетах.

Фиктивный сервер

В локальной сети намного проще производить атаку через подставные серверы или сервисы. Например, одна из знаменитых атак через некорректные ARP-записи может быть воспроизведена именно в локальной сети.

Как мы уже знаем, когда вы обращаетесь к какому-либо компьютеру по IP-адресу, сначала определяется его MAC-адрес, а потом уже на него отсылается сообщение. Как определить MAC-адрес, когда нам неизвестно, какой сетевой интерфейс установлен, а мы знаем только IP? Для этого используется протокол ARP (Address Resolution Protocol, протокол разрешения адресов), который рассылает широкове-

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

-

 

 

 

 

d

 

 

-

 

 

 

 

 

d

 

 

 

F

 

 

 

 

 

 

t

 

 

F

 

 

 

 

 

 

 

t

 

 

236P

 

 

 

 

 

i

 

P

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

r

D

 

 

Глава 5

 

D

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

r

 

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

NOW!

o

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

wщательный запрос всем компьютерам сети и выясняет, где находится экземпляр

w Click

to

 

 

 

 

 

m

w Click

to

 

 

 

 

 

 

m

 

с указаннымdf n

w

 

 

 

 

 

 

 

 

 

-

 

IP-адресом. В этом пакете заполнен только IP-адрес, а вместо искомоdf n

 

w

 

 

 

 

 

 

 

o

 

 

w

 

 

 

 

 

 

 

 

 

o

 

.

 

 

 

 

g

.c

 

 

.

 

 

 

 

 

g

.c

 

 

 

p

 

 

 

 

 

 

 

 

 

p

 

 

 

 

 

 

 

 

 

 

 

 

 

-xcha

e

 

 

 

 

 

 

-x cha

e

 

 

го MAC-адреса указано значение FFFFFFFFFFFFh. Если в сети есть компьютер с запрошенным IP, то в ответном пакете будет указан MAC-адрес. В противном случае ответ может прислать маршрутизатор, который сообщит свой MAC-адрес.

Тогда компьютер будет обмениваться данными с ним, а тот уже в свою очередь будет пересылать пакеты дальше в сеть или другому маршрутизатору, пока они не достигнут получателя. Работа ARP-протокола происходит незаметно для пользователя.

А что если ответит не тот компьютер, а другой, с иным IP-адресом? Ведь в локальной сети передача осуществляется по MAC-адресу, поэтому пакет получит тот компьютер, который откликнется, вне зависимости от его IP. Получается, что задача хакера — вычислить ARP-запрос и ответить на него вместо реального адресата. Таким образом можно перехватить чужое соединение.

Допустим, что компьютер запросил соединение с сервером. Если мы ответим на него и сэмулируем запрос на ввод параметров для входа в сервер, то пароль будет перехвачен. Сложность такого метода в том, что вручную его реализовать практически невозможно. Для этого нужно писать соответствующую программу, а тут без знания программирования и сетевых протоколов не обойтись.

Есть еще один нюанс, о котором стоит упомянуть. После того как компьютер определил какой-либо физический адрес, то соответствие MAC и IP сохраняется в локальном кэше. У вас есть возможность управлять этим кэшем с помощью утилиты arp, встроенной в ОС. Она запускается из командной строки и не совсем удобна. Более подходящей я считаю уже не раз описанную мною CyD NET Utils. Запустите эту программу и выберите меню Manage | IP ARP. Перед вами появится окно, в котором можно просматривать текущее содержимое таблицы ARP-записей, добавлять и удалять их.

Когда вы вручную добавляете запись ARP, то она становится статической и может быть удалена из системы только вручную. Если запись была создана автоматически, то она считается динамической и через определенное время удаляется системой.

С таким же успехом можно подменять DNS-запросы. Если ARP-протокол предназначен для преобразования IP-адреса в MAC, то DNS сопоставляет символьные имена и IP-адреса. Задача та же самая — использовать параметры компьютера, который будет перехватывать DNS-запросы, и подделывать ответ. Таким способом было проведено уже несколько широкомасштабных и знаменитых атак в Интернете.

Основная цель, которую может преследовать хакер — перенаправление трафика на себя для выявления пароля или переадресации пакетов на другой сервер. Если переправить весь трафик какого-либо DNS-сервера, например, на http://www. yahoo.com/, то даже мощный веб-сервер Yahoo не выдержит такого количества запросов и может зависнуть или просто перестать откликаться. Но это уже из серии атак DoS, о которых мы поговорим позже (см. разд. 5.8.6).