将$ _GET放在标题中是否安全?(PHP)

ggf*_*fan 0 php security

在我的profile.php脚本中,我有一个标志功能,允许用户标记该用户.

如果他们标记用户,它会将数据(user_id,reason等)发送到一个文件,该文件flag.php会执行所有禁止操作.数据flag.php通过发送

header("Location: flag.php?user_id=___&reason=___")
Run Code Online (Sandbox Code Playgroud)

然后flag.php,在完成所有禁止之后,它会通过另一个标头将用户重定向回配置文件.用户永远不会看到flag.php.

flag.php安全吗?因为他们从未看过剧本?

编辑你永远不应该认为它对GET来说是安全的......要么做一个banuser功能,要么通过会话发送它.

wai*_*933 6

不.该URL将记录在浏览器历史记录中,您刚刚禁止的用户将因禁用user_id参数而禁止任何他们想要禁止的用户.我建议你创建一个函数ban_user($user_id,$reason).