攻击者可以欺骗AJAX / POST请求吗?

时间:2018-02-21 17:48:40

标签: javascript php ajax

我是网络开发的新手,所以请事先原谅我。

在我正在设计的网站上(从头开始在Ubuntu 16.04 VPS上使用LAMP),我创建了一个管理页面,我可以在其中验证新用户,帖子等。我创建了两个简单的AJAX函数,所以当我点击一个按钮时,一个帖子在数据库中被批准或删除。

我的问题是,首先,如果我在public_html / php目录中拥有大部分管理级PHP脚本(delete_post.php等) - 这看起来是不是很糟糕?围绕这个使用PHP的唯一方法包括这些脚本并将它们保存在更高的目录中吗?用户可以欺骗对这些脚本的POST请求吗?

其次,除了第一个问题,我已经创建了一些用于管理帖子的管理级AJAX函数,并且想知道它们是否也是易受攻击的。例如,在我的管理页面上,我创建了按钮,以便我可以轻松验证帖子或从数据库中删除它。如果用户在管理员列表中,则JavaScript仅包含在服务器端;但是,考虑到我最近学到的关于JavaScript注入的知识,用户是否可能会编写自己的欺骗性AJAX请求?

2 个答案:

答案 0 :(得分:1)

是的,他们很脆弱。你不应该认为POST请求比查询更安全,因为对于恶意用户来说编辑它们同样微不足道。使用令牌和\或会话对象来保护您的数据

答案 1 :(得分:0)

是的,有些工具允许开发人员测试请求和ajax调用。其中一个是众所周知的“邮差”

浏览器设置 Origin 标头,用户无法覆盖此值,但恶意用户可以制作 curl 请求手动设置 Origin 标题

我的建议不是使用 CORS ,而是使用 Cookie OAuth 令牌来提供受保护的数据