Я подумываю использовать PHP_SELF, чтобы захватить имя страницы, которую пользователь посещает. Я хорошо осведомлен об опасностях использования PHP_SELF в таких местах, как действия формы, хотя я не уверен, где было бы больно использовать в hrefs? Но это не относится к основному вопросу. , , так или иначе.
Существуют ли какие-либо опасности при использовании PHP_SELF для захвата страницы, на которой находится пользователь, и использования str_replace()
для получения необходимой мне информации? Я не могу думать ни о чем, но это, конечно, отличное место, чтобы спросить. 😉
Благодаря!
Да, это может быть потому, что это контролируемая атакующая переменная. Это может привести к уязвимости, например xss.
<?php print $_SERVER['PHP_SELF']?> http://localhost/self.php/<script>alert(1)</script>
Если возможно, вы должны использовать переменную, которую злоумышленник не может контролировать как $_SERVER["SCRIPT_FILENAME"]
. Есть еще пара других, просто проверьте phpinfo () .
Ну, если вам нужен весь URL, ознакомьтесь с этим уроком . В противном случае используйте $ _SERVER ['REQUEST_URI'], чтобы получить URI текущей страницы (если url example.com/foo/bar.php даст вам foo / bar.php).