Php & Sql Injection - UTF8 POC

Много говорят о том, что addlashes и mysql_real_escape небезопасны для предотвращения инъекций. По правде говоря, даже большие фреймворки или CMS, такие как Wordpress, используют эти функции, и пока они делают отличную работу.

Я знаю, что есть некоторые специфические сценарии при использовании кодировки GBK, или utf8_decode можно использовать для внедрения некоторого кода sql, или несколько простых примеров, таких как 1 'OR 1 - , которые можно использовать, когда есть простой, где задействован.

Однако после небольшого исследования кажется, что очень сложно вставить что-то в простой запрос с дополнительными косыми чертами или mysql_real_escape, если кодировка UTF-8 и давайте признаем это, это наиболее распространенный сценарий.

Итак, учитывая этот сценарий для новичков, пожалуйста, предоставьте sql-инъекцию POC (помните кодировку UTF-8)

$mysql['username'] = addslashes($_POST['username']);
$mysql['password'] = addslashes($_POST['password']);

$sql = "SELECT *
FROM users
WHERE username = '{$mysql['username']}'
AND password = '{$mysql['password']}'";

Обновление - мне просто нужен простой пример, а не полное раскрытие процесса. Даже ссылка из Google может работать.

15
задан danidacar 28 February 2011 в 07:28
поделиться