Что такое атака DNS Spoofing ?


Peek-a-boo

?!
Форумчанин
Регистрация
18.11.2012
Сообщения
523
Репутация
143
DNS spoofing - это простой метод обмана dns сиситемы, блок преобразования имён dns, использующий ложную информацию, полученную от хоста, который - не отвещает за ту информацию.
Каждый пакет dns имеет 16 битный id номер, id номер это чась dns пакета которая разрешает идентифицировать каждый dns пакет, который идёт через порт 53 и так же запрос может быть больше чем один раз. id это единственный способ разлечить различные запросы dns, связанный с этим, которое серверы dns используют, чтобы определить каков первоначальный был запрос. В случае BIND, этот номер увеличивается на 1 уровень для каждого запроса. Нападение, подобное TCP seq id может быть сделано, хотя это более трудней.
Даже если BIND не может кэшировать информацию которую вы посылаете, он передаст ответ к оригинальному хосту. В случае ircd сделает запрос на PTR в ответ к хосту, соединяющемуся с ним, пакет ответа может быть сформулирован, чтобы содержать дополнительную информацию, из которой ircd будет делать внутреннее кэширование. Для этой атаки нужен доступ root'a на сервере dns, ответственном за in-addr.arpa блок информации dns. Также, ircd может кэшировать только один домен.
Существует ещё одна атака, т.к. id состоит из 16 битов. Пользователь смогбы перебрать весь idspace. Для того чтобы подделать свой dns допустим на DALNet'e, нужно послать 65000 сгенерированных запросов на ns сервер, как только компьютер получает ответ на запрос, нужно будет прочитать пакет, и в нём будет написан правильный id. Как только получите id, нужно найти какой нибуть "packet creation tool" чтобы сделать dns пакет. Остаёться только подделать dns пакетет, послать на ns.dal.net и получаете спуфнутуе TCP соединение.
формат dns пакета:
+---------------+--------------+
| ID номер | флаги |
+---------------+--------------+
|кол-во запросов|кол-во ответов|
+----------+----+--------------+
|кол-во RR | Дополнительные RR |
+----------+-------------------+
| Запрос |
+------------------------------+
| Ответ |
|------------------------------+

Где, RR - resource records (такие как a records,ptr records,loc,host,mx и т.д.)
Так же есть ещё один способ.
Существуют разные типы записей такие как a,ptr,ns,cname,soa,hinfo,mx,txt,pr,loc и т.д.

SOA (Start Of Authority) - заголовок зоны
NS (Name Server) - сервер DNS
A (Address) - IP-адрес (host => ip)
MX (Mail Exchanger) - обработчик почты
CNAME (Canonical Name) - каноническое имя
PTR (Pointer) - запрос по обратной зоне, reverse mapping(ip => host)
Запрос в этом случае должен состоять из имени домена, а не отдельного хоста.
Если первоначальный запрос был spoof.hax0r.com, нужно сделать a,cname или ns записи для spoof.hax0r.com, указывающего на информацию, которую Вы хотите кэшировать. bind будет его кэшировать, так как это связано с первоначальным запросом.
Обязательно нужно держать соединение с irc сервером, т.к. при рассоединении Dal.net проверяет reverse и forward dns, замечает что они не совпадают, и не разрешает использовать имя хоста, и вместо хоста высвечивается настоящий ip.
все dns Записи по умолчанию находятся в директории /var/named
; type domain source file

cache . root.cache
primary x25.cc x25.db
secondary nerf.ru nerf.db

В файле /usr/named/x25.db для каждого имени хоста из домена x25.cc указан ip-адрес и dns records.
====================/usr/named/x25.db====================
@ IN SOA ns.x25.cc. root.ns.x25.cc. (
2002042002 ; Serial
3600 ; Refresh
1200 ; Retry
604800 ; Expire
8640 ) ; Minimum

IN NS ns.x25.cc.
IN NS ns.nameserver.com.
IN MX 10 mail.x25.cc.
IN A 127.0.0.1
localhost IN A 127.0.0.1
====================/usr/named/x25.db====================

первая линия отвечает за конфигурацию домена, как часто обновлять, expire date и т.д.

ns - name server
mx - mail exchange
a - adress
следует так же посмотреть файл /etc/named.conf - это конфигурация named. в нём прописанны опции, зоны и пути файлов такие как x25.db.
Некоторые DNS spoof триксы можно проделывать например с помощью утилиты ADM-spoof.c от ADM team.


 
Верх Низ