четверг, 22 ноября 2007 г.

Вы - охотник

Оговоримся, что мы будем исходить из предположения, что имя
домена или IP адрес пользователя в IRC подделать очень сложно, и
подавляющее большинство людей этим не занимаются, хотя такие методы и
есть.
На ум приходят два метода: IP spoofing и использование
специального прокси сервера, способного поддерживать IRC протокол.
Техника, называемая IP spoofing (обман IP), весьма сложна в
применении. Хакерские сайты предлагают пользователям Windows 95 с
версией Winsock 2.0 и выше несколько программ для подобных проделок.
1. *Поиск пользователей по домену, имени, и userid*. Довольно
мощным средством поиска по какой-либо известной части информации о
пользователе (или группе пользователей) является команда /who, о
которой почему-то нет ни слова в mIRC'овском Help файле. Странно,
правда. Делая запрос о пользователе командой /whois, мы обычно
получаем примерно такой текст:

ShowTime ~mouse@ml1_12.linknet.net * May flower
ShowTime on #ircbar #newbies
ShowTime using Oslo-R.NO.EU.Undernet.org [194.143.8.106] Scandinavia
Online AS
End of /WHOIS list.

Команда /who позволяет задать маску для поиска пользователей по
любой части их доменного имени, userid или имени (то, что в поле Real
Name). Допустим, мы ищем людей из домена global.de. Синтаксис таков:

/who *global.de*

Или ищем всех пользователей из Сингапура:

/who *.sg*

Или мы уже общались с господином ShowTime, и хотим найти его
опять:

/who *mouse*, или
/who *flower*

Так же могут найти и вас, если вы не воспользуйтесь командой
/mode $me +i, как было описано выше.
2. *Определение адреса электронной почты*. Задача довольно
сложная, но иногда выполнимая. Начнем с "лобовой" атаки. Команда /ctcp
ShowTime userinfo (или, проще, через меню) покажет нам e-mail address,
указанный самим пользователем. Поскольку мало кто сообщает свой
настоящий адрес, надежды на правдивый ответ мало. Если домен
полученного адреса совпадает с тем, что следует за знаком @ в ответе,
полученном на запрос /whois, то вероятность того, что адрес указан
правдивый, повышается.
Следующая возможность - использовать информацию, содержащуюся в
ответе на запрос /whois. Имя домена подделать крайне сложно, поэтому
мы наверняка знаем, что пользователь ShowTime из домена linknet.net.
Это первый шаг. Часто вместо буквенной строки после знака @ следует
цифровой IP адрес, который по той или иной причине не определился при
подключении пользователя к серверу. Его можно попытаться определить
командой /DNS ShowTime. Если результат получен, то переходим к
следующему абзацу. Если нет, то попробуем еще один способ.
Воспользовавшись программами типа Netlab или CyberKit, сделаем
TraceRoute с указанием цифрового адреса. Программа проследит путь от
вашего IP адреса до искомого IP, принадлежащего ShowTime. Последний из
определившихся по имени адресов укажет, скорее всего, на имя домена
пользователя.
Идем дальше. У нас есть либо полное имя, соответствующее IP
адресу пользователя под кличкой ShowTime (ml1_12.linknet.net), либо, в
худшем случае, только имя домена (linknet.net). В первом случае мы
можем попытаться, воспользовавшись командой finger (либо в одной из
двух вышеупомянутых программ, либо прямо в mIRC, где есть кнопка
Finger прямо на Tool Bar'е), определить всех текущих пользователей из
домена linknet.net. Для этого мы делаем finger адреса @linknet.net
(userid не указываем). При удачном стечении обстоятельств мы получим
что-нибудь в этом роде:

Trying linknet.net
Attempting to finger @linknet.net



[linknet.net]
Login Name TTY When Where
root 0000-Admin console Fri 16:27
henroam John Brown pts/1 Tue 10:57 pckh68.linknet.net
pailead Jack White pts/2 Tue 11:03 ml4_17.linknet.net
oneguy Michael Lee pts/3 Tue 11:08 ml1_12.linknet.net
sirlead6 Joan Jackson pts/4 Tue 11:05 ml4_16.linknet.net

End of finger session

Вот он наш ml1_12, принадлежит oneguy@linknet.net. Отметим, что
иногда информация в ответ на finger-запрос может быть выдана только
пользователю из того же домена, к которому принадлежит адрес, который
вы хотите идентифицировать. Решение простое: найдите пользователя из
искомого домена (/who *linknet.net*), и попросите его сделать finger
запрос.
И в первом, и во втором случае есть еще одна возможность. Если
"охотнику" известно реальное имя или фамилия искомого пользователя,
можно послать figer-запрос в виде имя@домен или фамилия@домен.
Например, finger на John@some.net может нам дать список всех
пользователей по имени John с их login'ами.

К вопросу о маскировке IP адресов

Если оставить в стороне IP spoofing, который весьма сложен и вряд
ли осуществим на платформе Windows 95, остаются два способа маскировки
реального IP адреса: использование специального прокси сервера,
способного поддерживать IRC протокол, и использование SOCKS firewall
на неком удаленном хосте.

SOCKS

В последнее время получила широкое распространение программа
Wingate, которая связывает несколько компьютеров в локальную сеть и
позволяет работать с Интернетом через модем. При этом большинство
пользователей удовлетворяется настройками "по умолчанию", не
подозревая, что эти настройки позволяют любому человеку использовать
их SOCKS прокси. Если найти IP адрес, по которому в данный момент
расположен компьютер под Wingate, то можно попробовать подсоединиться
к IRC, настроив клиент на нужный IP адрес и порт 1080 (в mIRC Setup
это в разделе firewall). Заметим, что доступ к SOCKS дает не только
Wingate, но и многие другие программные продукты, так что не
удивляйтесь, если какой-нибудь web-сервер по адресу www.some.net
позволяет подключиться к порту 1080. Остается чисто практический
вопрос: как найти такой IP адрес. Очевидно, проверять в каком-нибудь
диапазоне, причем предположительно богатом пользователями Wingate, все
адреса на предмет отклика порта 1080. Один из энтузиастов даже
благородно ведет список подобных IP адресов. Его страница находится
здесь: http://members.xoom.com/ircproxy/

Прокси

Итак, со всей ответственностью заявляем: IRC прокси серверы
существуют и работают, все заверения на сайте Анонимайзера и в
newsgroups, посвященных IRC, о том, что протокол IRC не может работать
через прокси, что свой IP адрес скрыть нельзя и т.д. и т.п. являются
ПОЛНОЙ ЧУШЬЮ. Вокруг этого вопроса в Интернете какая-то стена
молчания.
Адрес прокси вписывается вместо адреса IRC сервера. Прокси
намертво связан с одной из IRC сетей, так что если вы нашли адрес
прокси в DALnet, то только в далнет им и можно пользоваться. Теперь
самое интересное: как найти подобный IRC прокси сервер. Это вполне
возможно, хотя и довольно сложно. Постулат первый: похоже, что
большинство прокси обитает в странах с различными кодировками
национального алфавита, т.е. в Японии, Тайване, Сингапуре, России и
т.д. Ищите пользователей из этих доменов, смотрите на их имена хостов,
отбрасывайте заведомо нереальные для прокси адреса (dialup, ppp, и
т.д.) и обращайте внимание на адреса короткие и "говорящие", вроде
iso.aaa.com.tr, gateway.nuc.tw, win.irc.connect.jp, но только ими не
ограничивайтесь, например по адресу loxnet.loxley.co.th тоже
расположен прокси, но он пароль требует. Постулат второй: IRC прокси
обитают и в западных странах, причем часто имеют в имени хоста слово
proxy. Итак, нашли адрес, попробовали подсоединиться (обычно порт
6667), что удобно делать во втором окне, не работает - ищите дальше.
Короче говоря, чистое творчество, точного рецепта нет. Дерзайте.