![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#1
|
|
![]() Junior Member ![]() ![]() Группа: Пользователи Сообщений: 96 Регистрация: 13.1.2008 Пользователь №: 20 ![]() |
Вобщем набаянил тут на коленке:
Код <?php error_reporting(0); ?> <? include "inc/head.php" ?> <?php function display_form() { ?> <center> <table width="596" border="0" cellspacing="1" cellpadding="2" bgcolor="#00A0F0"> <tr> <td align=left bgcolor="000000" colspan="2" width="586"></center> <center> port scanner </td> </tr> <tr> <td bgcolor="black" colspan="2" width="586"><font face="Verdana" size="1"><br><center> <?php ?> <form action="scan.php" method="post"> *Хост или IP: <input type="text" style="background-color : #c0c0c0; border-style: solid;border-width: 1;" name="host"> *От: <input type="text" style="background-color : #c0c0c0; border-style: solid;border-width: 1;" name="ot"> *До: <input type="text" style="background-color : #c0c0c0; border-style: solid;border-width: 1;" name="do"><br><br> <input type="submit" style="background-color : #cccccc; border-style: solid;border-width: 1;" name="ok" value="Сканировать"></form></center> <tr><td align=left bgcolor="000000" colspan="2"><p align="right"> </font></p></td></tr> </td> </tr> </table> <?php } ?> <?php function process_form() { global $host, $ot, $do; if ($host == "" or "us3r.ru" or "213.155.1.91" or "localhost" or "127.0.0.1" or $ot == "" or $do ==""){echo "Заполните все поля или выберите сервер для сканирования отличный от us3r.ru";exit;} if(!eregi("^[0-9]+$", $ot) or !eregi("^[0-9]+$", $do)) { echo "Ошибка :( Значения портов должны содержать только цифры!";exit;} for($q=$ot;$q<=$do;$q++) { if(fsockopen ($host, $q, $errno, $errstr, 5)) { if(!$host){echo "Ошибка : $errno - $errstr<br>";exit;} if($q=="21"){$z="Сервис | FTP.";} if($q=="22"){$z="Сервис | RAW или SSH.";} if($q=="23"){$z="Сервис | Telnet.";} if($q=="80" or $q=="8080"){$z="Сервис | HTTP.";} if($q !="21" and $q != "22" and $q != "23" and $q != "80" and $q !="8080"){$z="Сервис | ...";} $stat .= "<center>Порт: $q открыт. | $z</center><br>";}} echo "<center><table width=\"596\" border=\"0\" cellspacing=\"1\" cellpadding=\"2\" bgcolor=\"#00A0F0\"><tr><td align=left bgcolor=\"000000\" colspan=\"2\" width=\"586\"></center><center> port scanner<br></center></td></tr><tr><td bgcolor=\"black\" colspan=\"2\" width=\"586\"><font face=\"Verdana\" size=\"1\"><br>"; echo "<center>Результаты сканирования: $host с $ot до $do порта.</center><br>"; if ($stat != ""){echo "<center>$stat</center>";} if ($stat == "") {echo "<center>Открытых портов нет.</center><br>";} echo "<center>... Я буду помнить.</center><tr><td align=left bgcolor=\"000000\" colspan=\"2\"><p align=\"right\"><font color=\"black\" face=\"Verdana\" size=\"1\"> </font></p></td></tr></td></tr></table>"; } ?> <?php if (empty($ok)) { display_form(); } else { process_form(); } ?> <? include "inc/foot.php" ?> Пример работы: http://us3r.ru/scan.php И вот появилась задумка сделать так, чтоб он не просто порты сканировал, а сначала подставлял себе прокси, которую брал скажем отсюда . Есть какие нибудь мысли как реализовать? =) |
|
|
![]()
Сообщение
#2
|
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Главные администраторы Сообщений: 14349 Регистрация: 12.10.2007 Из: Twilight Zone Пользователь №: 1 ![]() |
Тебе показать пример работы с Proxy или что? Ладно, смотри:
Код <?php $proxy_name = "proxy.ru"; // URL Proxy $proxy_port = 3128; $proxy_user = "user"; $proxy_pass = "pass"; $proxy_cont = ""; $proxy_fp = fsockopen($proxy_name, $proxy_port); if ($proxy_fp) { $req = "GET " . $argv[1] ." HTTP/1.1\r\n"; $req .= "Host: " . $argv[2] . "\r\n"; $req .= "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.1.4) Gecko/20070515 Firefox/2.0.0.4\r\n"; // $req .= "Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5\r\n"; // $req .= "Accept-Language: en-us,en;q=0.5\r\n"; // $req .= "Accept-Encoding: gzip,deflate\r\n"; // $req .= "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\r\n"; $req .= "Keep-Alive: 300\r\n"; $req .= "Proxy-Connection: keep-alive\r\n"; $req .= "Proxy-Authorization: Basic ". base64_encode ("$proxy_user:$proxy_pass") . "\r\n"; $req .= "\r\n"; fputs($proxy_fp, $req); while(!feof($proxy_fp)){ $proxy_cont .= fread($proxy_fp,4096); } fclose($proxy_fp); $proxy_cont = substr($proxy_cont, strpos($proxy_cont,"\r\n\r\n")+4); // обрезаем HTTP echo $proxy_cont; } ?> Скрипт считывает в своих аргументах URL страницы и адрес хоста, выкачивает ее содержимое через Proxy и выводит на экран. Использовать можно например так: php.exe script.php http://yandex.ru yandex.ru > yandex.txt После чего скрипт соединится через proxy с хостом yandex.ru и выкачает в файл yandex.txt содержимое URL - http://yandex.ru, естественно только страничку, без изображений и т.п. Так что, Phoen, не ты один скрипты на коленке ваяяешь ![]() p.s. Только это пример работы с HTTP проксей для HTTP-запросов ... как реализовать через HTTP Proxy сканирование портов - пока что загадка ... гуглить надо ибо ) Но судя например по тому что OpenVPN Portable клиент может работать с OpenVPN сервером через произвольный порт, используя HTTP Proxy - реализовать подобное скорее всего возможно. -------------------- |
|
|
![]()
Сообщение
#3
|
|
![]() Junior Member ![]() ![]() Группа: Пользователи Сообщений: 96 Регистрация: 13.1.2008 Пользователь №: 20 ![]() |
p.s. Только это пример работы с HTTP проксей для HTTP-запросов ... как реализовать через HTTP Proxy сканирование портов - пока что загадка ... гуглить надо ибо ) Но судя например по тому что OpenVPN Portable клиент может работать с OpenVPN сервером через произвольный порт, используя HTTP Proxy - реализовать подобное скорее всего возможно. Вот как раз этот момент более всего и интересует + как рациональней реализовать нахождение онлайн прокси в списке и её подстановку (слишком быстро мрут анонимки чтоб всегда к одной конектится)?)) |
|
|
![]() ![]() |
Текстовая версия | Сейчас: 26.4.2025, 23:08 | |
|