В настоящее время я улучшаю свои знания о дырах в области безопасности в HTML, PHP, JavaScript и т.д.
Несколько часов назад я наткнулся на модификатор /e
в регулярных выражениях, и я до сих пор не понимаю, как это работает. Я взглянул на документацию, но это не помогло.
Я понял, что этот модификатор можно манипулировать, чтобы дать кому-то возможность выполнить PHP-код (например, preg_replace()
). Я видел следующий пример, описывающий дыру в безопасности, но это не объяснялось, так что может кто-нибудь объяснить мне, как вызвать phpinfo()
в следующем коде?
$input = htmlentities("");
if (strpos($input, 'bla'))
{
echo preg_replace("/" .$input ."/", $input ."<img src='".$input.".png'>", "bla");
}