关于合法性的问题
按键盘手指磨破皮
按键盘手指磨破皮 2017-09-01 14:07:24
0
3
1777

本人是新手,今天写代码突然想到个安全性问题。

对于ajax的各种请求,黑客是否能通过外部进行代码提交?因为JS文件浏览器都能看到,也就是能知道你的代码,那么如果黑客在外部用我们的域名进行提交,php能否判断是否合法呢?比如判断是否是我们自己的文件提交的?

比如我的js文件有段代码

$('input').click(function(){
    $.post('index.php',{a:xx,b:xx},function(a){
        xxxxx
    })
})
那么如果黑客通过外部提交
xxxxxxxxxxx
$('input').click(function(){
xxxxxx
    $.post('http://www.xxxx.com/index.php',{a:xx,b:xx},function(a){
        xxxxx
    })
xxxxxx
})
xxxxxxxxxxx

PHP里面要如何写才能防止呢?

按键盘手指磨破皮
按键盘手指磨破皮

全部回复(3)
MrSwan

CSRF了解下?

phpcn_u22108

外部提交是正常的,需要通过程序来阻止注入。

ringa_lee

按照你这样的说法的话,外面ajax模拟提交过来的数据就属于是跨域了。

这个你有多个方式去处理。比如:

1、可以设定访问权限,比如说只有登录会员才可查看或者是限定域名,这样会给别人的抓取造成一定难度。但这个障碍总能被解决的。

2、用session生成令牌,提交之后验证session,合法则马上注销这个session,确保每次都有一个新的令牌。

3、分析访问日志,从服务器级别限制可疑IP访问。

4、记录每个IP的操作密度,较频繁的可不定时要求输入验证码。

........

会有很多种方法,但没有哪种说是最好的,建议多管齐下。望采纳~

  • 回复 这些方法感觉都不太靠谱...用抓包软件抓包后 这些都是可以模拟出来的 比如session 可以通过访问文件返回抓取到 网上的IP也多 都能拿来用 感觉学PHP最重要的就是防止被黑啊 我网站老是被黑 被各种加代码 各种非法POST
    按键盘手指磨破皮 作者 2017-09-01 16:06:46
  • 回复 知道了,感谢回答
    按键盘手指磨破皮 作者 2017-09-01 16:22:31
  • 回复 没有什么方法是绝对的,安全类的方法太多了,你可以着重从服务器上下手,双管齐下,什么方法都用上,你多做几种防护措施,别人也不能轻易的去攻击你的站点,而且你不是什么太热门的站,人家也不可能整天闲的没事干,天天研究想着去攻击你的站啊
    ringa_lee 作者 2017-09-01 16:20:36
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板