Показать сообщение отдельно

  #25  
Старый 23.08.2007, 02:07
[53x]Shadow
Leaders of Antichat
Регистрация: 25.01.2007
Сообщений: 341
С нами: 10153766

Репутация: 2565
По умолчанию

Вот Вам брутер только не сорьтесь, писал сам(код брутера в конце) так, что особо не парился...=\

use:
Код:
http://www.test.com/la_brute.php?dict=полный_путь_до словаря.txt&hash=0xb1bd38c382153333069fb9b974eec8c8
PHP код:
<?php

// crap! {not mine}
    
function la_encrypt($str) {
        
$key = array();
        
$dst = array();
        
$i = 0;

        
$nBytes = strlen($str);
                while (
$i < $nBytes){
                 
$i++;
                        
$key[$i] = ord(substr($str, $i - 1, 1));
                        
$dst[$i] = $key[$i];
        }

        
$rslt = $key[1] + $key[2]*256 + $key[3]*65536 + $key[4]*16777216;
        
$one = $rslt * 213119 + 2529077;
        
$one = $one - intval($one/ 4294967296) * 4294967296;

        
$rslt = $key[5] + $key[6]*256 + $key[7]*65536 + $key[8]*16777216;
        
$two = $rslt * 213247 + 2529089;
        
$two = $two - intval($two/ 4294967296) * 4294967296;

        
$rslt = $key[9] + $key[10]*256 + $key[11]*65536 + $key[12]*16777216;
        
$three = $rslt * 213203 + 2529589;
        
$three = $three - intval($three/ 4294967296) * 4294967296;

        
$rslt = $key[13] + $key[14]*256 + $key[15]*65536 + $key[16]*16777216;
        
$four = $rslt * 213821 + 2529997;
        
$four = $four - intval($four/ 4294967296) * 4294967296;

        
$key[4] = intval($one/16777216);
        
$key[3] = intval(($one - $key[4] * 16777216) / 65535);
        
$key[2] = intval(($one - $key[4] * 16777216 - $key[3] * 65536) / 256);
        
$key[1] = intval(($one - $key[4] * 16777216 - $key[3] * 65536 - $key[2] * 256));

        
$key[8] = intval($two/16777216);
        
$key[7] = intval(($two - $key[8] * 16777216) / 65535);
        
$key[6] = intval(($two - $key[8] * 16777216 - $key[7] * 65536) / 256);
        
$key[5] = intval(($two - $key[8] * 16777216 - $key[7] * 65536 - $key[6] * 256));

        
$key[12] = intval($three/16777216);
        
$key[11] = intval(($three - $key[12] * 16777216) / 65535);
        
$key[10] = intval(($three - $key[12] * 16777216 - $key[11] * 65536) / 256);
        
$key[9] = intval(($three - $key[12] * 16777216 - $key[11] * 65536 - $key[10] * 256));

        
$key[16] = intval($four/16777216);
        
$key[15] = intval(($four - $key[16] * 16777216) / 65535);
        
$key[14] = intval(($four - $key[16] * 16777216 - $key[15] * 65536) / 256);
        
$key[13] = intval(($four - $key[16] * 16777216 - $key[15] * 65536 - $key[14] * 256));

        
$dst[1] = $dst[1] ^ $key[1];

        
$i=1;
        while (
$i<16){
                
$i++;
                
$dst[$i] = $dst[$i] ^ $dst[$i-1] ^ $key[$i];
        }

        
$i=0;
        while (
$i<16){
                
$i++;
                if (
$dst[$i] == 0) {
                        
$dst[$i] = 102;
                }
        }

        
$encrypt = "0x";
        
$i=0;
        while (
$i<16){
                
$i++;
                if (
$dst[$i] < 16) {
                        
$encrypt = $encrypt . "0" . dechex($dst[$i]);
                } else {
                        
$encrypt = $encrypt . dechex($dst[$i]);
                }
        }

        return 
$encrypt;
    }
//Сам брут
    
$dict = $_GET['dict'];
    
$hash = $_GET['hash'];
    
$fd = fopen($dict,"r");
    while(
$pass = fgets($fd))
    {
        if(
$hash == la_encrypt(trim($pass)))
        {
            echo 
"Password is: ".$pass;
            exit();
        }
    }
    echo 
"Password not found!";
    
fclose($fd);
?>
 
Ответить с цитированием