2010-09-26 32 views
1

比方说,我在我的网站上有一个表格<form action="delete_post.php" method="post">...</form>http://mysite.com和文件action/delete_post.php用匹配表单中给定的ID删除帖子。针对表单处理不同网站上的文件

有人可以尝试通过建立一个网站有一个表单,删除我的网站随机职位:

<form action="http://mysite.com/action/delete_post.php' method="post">...</form> 

,并沿着他想要删除[只是被乐趣帖子ID的传球邪恶或造成对并发网站的损害或其他]?

你可以想象一下,有人可以针对你的表单处理文件做一大堆事情,所以我需要保护我的文件免受这种威胁?

PS:我不跟http://mysite.com

+0

让这些用户都登录到您的网站?如果是这样的话,你可以将id与原始海报匹配。 – Cups 2010-09-26 13:39:08

+0

是的,我想到了会话保护,因为这些操作是在受保护的管理区域内执行的 – Samuel 2010-09-26 13:44:16

回答

3

是,这种类型的攻击被称为跨站请求伪造(CSRF)下属,和很多网站都容易受到它。

阻止这种攻击的常见方法是在随机生成的表单令牌中包含一个隐藏输入(即使只是像md5(microtime(true))就足够了)。在用户的会话中保留最近有效表单标记的列表,并在使用后将其销毁(并且只保留最近的5个或10个)。如果用户没有有效的表单令牌,则不要让该操作完成。

相关问题