После того, как пользователь отправил сообщение формы, я по сути делаю это: Очистите JSON с помощью php , чтобы очистить мой ввод json_decoded.
json_decode создает объект, который я передаю пользовательскому методу класса:
$body = json_decode($_POST['body']);
$form_id = $_POST['form_id'];
$errors = $this->validate_form( $form_id, $body, $options );
В $ this-> validate_form я немедленно выполняю валидацию аналогично решениям в ссылке выше.
Есть ли пробел в безопасности при назначении декодированных json, form_id переменным во время выполнения и последующей передаче этих значений в пользовательский метод, даже если первым делом после них выполняется санация?
Т.е. есть ли какой-нибудь эксплойт, такой как причудливый json-кодированный call_user_func и т. Д., Который можно реализовать здесь, просто передавая значения / сохраняя значения времени выполнения?
edit: (также просто чтобы уточнить, я неделать что-то явно ужасное после того, как call_user_func($form_id);
)