Уязвимость Preg_replace

slavon-x86

Well-known member
18.12.2005
215
0
#1
Мне сказали что в этом коде уязвимость, но я непонимаю где !? Помогите понять.

Код:
// Удаление неизвестных символов: целое число
function pr_a ($ee) { return preg_replace("/[^0-9]/", '', $ee); };
Вот что мне написали.
Если не хватает знаний чтобы понять почему я показал именно эту строку в качестве примера - Великий Гугл тебе поможет.
Скорми ему следующую волшебную фразу: "уязвимость preg_replace".
 

sn@ke

Member
08.10.2006
21
0
#2
Тут нету уязвимости, она была бы при таком коде
PHP:
// Удаление неизвестных символов: целое число
function pr_a ($ee) { return preg_replace("/[^0-9]/e", '', $ee); };
Модификатор e.
 
A

alexdrob

#3
http://php.net/manual/ru/function.preg-replace.php
PHP:
mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit ] )
Модификатор /e меняет поведение функции preg_replace() таким образом, что параметр replacement после выполнения необходимых подстановок интерпретируется как PHP-код
мне кажется не было бы тут уязвимости :)