我正试图为我的应用程序提供Ajax,
在我这样做之前,我想知道几个有效的方法来保护请求闪存盗窃的ajax,这些方法满足以下条件;
说有2个文件;它们是index.php,ajax.php。 Index.php发送请求到ajax.php文件&它处理请求并提供输出
条件1:我需要确保,请求只来自frm index.php
条件2:说即使用户是有效用户并且他/她更改了ajax请求值,但它(请求)也不会影响(请求不会处理)ajax.php
要实现这两个条件,简单的解决办法是传递一个无法猜测的令牌/代码!
所以我的问题是什么是用于令牌生成的最佳方法/流程/算法???
* info:chk一些想法,但没有任何意义; 不使用SSL; 不使用会话 更严厉的表现是平均的。
p.s:阅读本文并有其他解决方案,但希望有比我更好的方法;)
谢谢!
答案 0 :(得分:0)
您无法确定条件1,因为HTTP_REFERER可能会被欺骗。
就使用令牌而言,创建令牌并将其与会话ID配对将是相当简单的。然后令牌被发送到index.php,并且对Ajax Web服务的请求必须包括令牌,该令牌与服务器上的会话ID进行比较。这不完全是防弹的,它可以被黑客攻击,但它会相当安全。