hari Posted August 13, 2010 Report Posted August 13, 2010 Salut! M-am gandit sa fac si eu un challenge pentru ca pare a fi amuzant. Se da urmatoarea bucata de cod. <?php # filtreaza aberatia de "magic_quotes"if (get_magic_quotes_gpc()) $input = stripslashes($_GET[input]);else $input = $_GET[input];# input-ul trebuie sa aiba un anumit format$pattern = '#^\s*\'[^\']*\'\s*\=\>\s*\'[^\']*\'\s*$#';# daca formatul corespunde atunci executa codulif(preg_match($pattern, $input)){ print "ok"; @eval($q="\$arr = array(\n" . $input . "\n);");}?>Se cere sa se treaca de preg_match si sa se poata executa cod PHP.Desi pare putin complex, regex-ul este destul de simplu de inteles. Executia codului PHP este putin mai complexa.Codul este luat din context si adaptat dar exista intr-o aplicatie reala care este vulnerabila la PHP code execution. Aplicatia este foarte folosita, si daca cineva rezolva chalenge-ul o sa-i zic despre ce aplicatie este vorba.Exista mai multe rezolvari, eu stiu cel putin 2 rezolvari la acest challenge.Noroc si va rog sa-mi trimiteti PM-uri daca stiti cum se rezolva! Quote