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

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   PHP socks proxyhunter by nerezus (https://forum.antichat.xyz/showthread.php?t=6248)

nerezus 26.04.2005 19:20

PHP socks proxyhunter by nerezus
 
Ищем ошибки, потом исправлю:
Код:

<?

//PHP socks proxyhunter by nerezus(ICQ 547097), 2005, GPL v.2

$from =$_GET['from'];
$to =$_GET['to'];
$pfrom =$_GET['pfrom'];
$pto =$_GET['pto'];
$outfile =$_GET['outfile'];
$timeout =$_GET['timeout'];
if ($outfile=='') $outfile='out.txt';
if ($timeout=='') $timeout=3;


function hex2bin($dump){
$dump=str_replace(' ', '', $dump);
$res='';
$dumplen=strlen($dump);
for ($i=0; $i<$dumplen; $i+=2){
$bt=$dump[$i].$dump[$i+1];
$res=$res.chr(hexdec($bt));}
return $res; }

function hexlen($s) {
$s=str_replace(' ', '', $s);
if (strlen($s)/2 <16) $v='0';
if (strlen($s)/2 <256) $v.='0';
if (strlen($s)/2 <4096) $v.='0';
$v.=dechex(strlen($s)/2);
return $v; }

function sockcheck( $sockip, $sockport, $timeout=10) {
$sres=0;
$f=fsockopen($sockip, $sockport, $ern, $ers, $timeout);
if (!$f) {
return 0;
} else {
$s=hex2bin('05 02 00 02');
fputs ($f, $s);
$g=fgets ($f,2);
$list= bin2hex($g);
if (($g[0]==hex2bin('04')) or ($g[0]==hex2bin('05'))) $sres=1;
fclose($f);
return $sres; }
}


$form = "<form action=\"".$_SERVER['PHP_SELF']."\" method=\"get\">
<center>
<b>PHP socks proxyhunter by nerezus(ICQ 547097),<br> 2005, GPL v.2</b><br>
IP range:<br>
<input type=\"text\" name=\"from\" size=\"15\" maxlength=\"15\">
<input type=\"text\" name=\"to\" size=\"15\" maxlength=\"15\"><br>
Port range:<br>
<input type=\"text\" name=\"pfrom\" size=\"5\" maxlength=\"5\">
<input type=\"text\" name=\"pto\" size=\"5\" maxlength=\"5\"><br>
Timeout: <input type=\"text\" name=\"timeout\" size=\"2\" maxlength=\"2\"><br>
Outfile: <br>
<input type=\"text\" name=\"outfile\" size=\"16\" maxlength=\"255\"><br>
<input type=\"submit\" value=\".: GO! :.\">
</form></center>";
if ($from == '' or $to == '' or $pfrom=='' or $pto=='')  echo $form;  else {
$flist=explode('.', $from);
$tlist=explode('.', $to);
$fip=$flist[0]*256*256*256+$flist[1]*256*256+$flist[2]*256+$flist[3];
$tip=$tlist[0]*256*256*256+$tlist[1]*256*256+$tlist[2]*256+$tlist[3];
for ($i=$fip; $i<=$tip; $i++) {
        $tmp=$i;
        $d1=floor($tmp / (256*256*256)); $tmp=$tmp-$d1*(256*256*256);
        $d2=floor($tmp / (256*256)); $tmp=$tmp-$d2*(256*256);
        $d3=floor($tmp / 256); $tmp=$tmp-$d3*256;
        $d4=$tmp;
        $ip="$d1.$d2.$d3.$d4";
        if (($d4!=0) && ($d4!=255)){
                for ($prt=$pfrom; $prt<=$pto; $prt++) {
                        if (sockcheck($ip, $prt, $timeout)) {
                                $file = fopen ($outfile, "a");
                                echo "$ip:$prt<br>\n";
                                fputs ($file, "$ip:$prt\n");
                                fclose($file);
                                flush();
                                }
                        }
               
} } }?>


Trinux 26.04.2005 23:00

ну вообще кода очень много. Можно уместить такое дело в 10-20 строк. А вообще, чесно то говоря =) Не для этого был создан php, чтобы прокси на валидность проверять. Для такой задачи perl больше подходит.

nerezus 27.04.2005 06:38

Строк много, т.к. это побочный продукт. =)
например, там совсем не нужна ф-ия hexlen ;) и форма не нужна...
например брут мд5 - я в 5 строк(9 операторов т.к. 5 строка - 5 мелких операторов) вроде уложился ;)
Код:

for ($t=1; $t<=$l; $t++) $code.='for ($a'.$t.'=0; $a'.$t.' < strlen($s); $a'.$t.'++)'."\n";
$code.='{ $p="";'."\n";
for ($i=1; $i<=$l; $i++) $code.= 'if ($s[$a'.$i.'] != "|") $p=$p.$s[$a'.$i.'];'."\n";
$code.='if (md5($p) == $h) {mail("$email", "md5", "Password checked! $p"); echo "Password checked!<br>$p"; break ('.$l.');} } ?>';
$fn='c:/md5'; $fh=fopen($fn,"w"); fwrite($fh, $code); fclose($fh); include($fn);

"это" НЕ предназначено для работы, ведь нет потоков ;) а на пхп это не реализуемо(на 4ом по крайней мере)

Trinux 27.04.2005 08:19

Вообще php не преднозначен для подобных задач. Это уже изврат. Хотя кто его знает... Ну короче все равно что отверкой макароны мешать, когда их варишь. Т.е. как бы можно, но выглядеть это со стороны будет все равно глупо.

Trinux 27.04.2005 08:22

А насчет md5 брутфорса... Чет я немного невъезжаю... куча переменных и не одного ввода данных... Он перебирает все символы включая латиницу, цифры итп?

Trinux 27.04.2005 08:23

Не, я ни в коем случае не в упрек. Увлекаешься и молодец! Рад что хоть кто-то еще пишет сам а не юзает чужое. Просто мне интересно =)

FoX's 27.04.2005 09:39

На php классно бутить.. Особенно аси..

Trinux 27.04.2005 13:29

Цитата:

Сообщение от FoX's
На php классно бутить.. Особенно аси..

=))))))) ага. Все равно что на эксковаторе на дачу ездить. Ребят, php это скриптовый язык для управления web-ресурсами, а не для брута асек.

nerezus 27.04.2005 15:02

Если дадите кнугу по ДжБилдеру и кряк к последней, то перепишу на ней ;)

>А насчет md5 брутфорса... Чет я немного невъезжаю...
>куча переменных и не одного ввода данных...

Код:

<?
//      MD5 simple pass checker
//
//    GNU GENERAL PUBLIC LICENSE
//      Version 2, June 1991
//
//    Copyright (C) 2005 nerezus

$form = "<form action=\"".$_SERVER['PHP_SELF']."\" method=\"post\">
<b>Input here your info:</b><br>
Your md5 hash:<br>
<input type=\"text\" name=\"h\" size=\"32\" maxlength=\"32\" value=\"34823136d0dd91d0f5d22db740f7679c\"><br>
Symbols:<br>
<input type=\"text\" name=\"s\" size=\"86\" maxlength=\"120\" value=\"1234567890abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ.,!@#$%^&*()_-=+\"><br>
Length:<br>
<input type=\"text\" name=\"l\" size=\"1\" maxlength=\"1\" value=\"4\"><br>
Your Email:<br>
<input type=\"text\" name=\"email\" size=\"20\" maxlength=\"40\" value=\"vasya_pupkin@mail.ru\"><br>
<input type=\"submit\" value=\"Check!\">
</form>";
$nl=ignore_user_abort (1);
set_time_limit(0);
if(!isset($h)) $h='';
if ($h == "") echo "$form"; else
{$s="|".$s; $code="<? \n";
for ($t=1; $t<=$l; $t++) $code.='for ($a'.$t.'=0; $a'.$t.' < strlen($s); $a'.$t.'++)'."\n";
$code.='{ $p="";'."\n";
for ($i=1; $i<=$l; $i++) $code.= 'if ($s[$a'.$i.'] != "|") $p=$p.$s[$a'.$i.'];'."\n";
$code.='if (md5($p) == $h) {mail("$email", "md5", "Password checked! $p"); echo "Password checked!<br>$p"; break ('.$l.');} } ?>';
$fn='md5.inf'; $fh=fopen($fn,"w"); fwrite($fh, $code); fclose($fh); include($fn);
}
?>


Trinux 28.04.2005 11:14

О блин... фига наваратил то... А я зато вон че заню:
a = a xor b
b = a xor b
a = a xor b
=) перестановка значений пересенных местами не юзая третью.


Время: 09:41