【发布时间】:2014-05-14 15:24:22
【问题描述】:
我正在使用 PHP 设置 cookie,我想知道 cookie 存在哪些安全风险。
例如是否可以进行代码注入,比如有人可以将 cookie 设置为 mail(blah, blah, blah); 并从我的服务器发送垃圾邮件吗?或者设置一个cookie到file_get_contents('secretfile.txt');来读取敏感的系统文件?
我假设这取决于 cookie 的使用方式,这样显然很愚蠢:
<?php
exec($_COOKIE['cmd']);
?>
但是,使用 cookie 来设置输入值是否安全?
【问题讨论】:
-
这个
exec($_COOKIE['cmd'])把我吓坏了......我的余生都会做噩梦,谢谢! -
他说这会很愚蠢,但是在 $_GET 中看到过这样的情况,这更好地利用。工作量少。 :)
-
@YUNOWORK 启动 Firecookie 工作量太大。我更喜欢
exec($_GET['cmd'])。 -
我讨厌“消毒”这个词。它通常表明编写底层代码时假设您可以“修复”不安全的输入,并且对于任何可以想象的上下文它都变得神奇地“安全”。