通过 AJAX 注入受控 HTML 是否存在安全问题?

4
我有一个特定的案例需要一些安全建议。基本上我的问题是,“如果我控制数据库中的内容(没有用户提交的数据),通过AJAX以HTML的形式返回数据库查询结果是否存在安全问题”?
以下是正在发生的过程:
1.每天生成一个XML文档
2.我的服务器检索此XML文档,使用PHP解析并将其输入到数据库中。
3.用户访问网站,发送AJAX请求(参数包括要返回的结果数、如何排序和必要时的搜索词)
4.PHP脚本查询数据库,将结果返回给AJAX回调函数
5.AJAX回调将结果注入页面以供查看
这是相当标准的流程...
更多背景:我使用预编译SQL语句,因此限制了用户提供的搜索查询和任何URL篡改以创建任意查询。XML文件仅包含字母数字字符,没有代码。我想要返回HTML的原因是尽可能减少客户端工作量,使用HTML,无需烦恼于JS生成页面(除了使用jQuery注入html块)。
对我有什么建议吗?
谢谢您的帮助。
PS-这仍处于规划阶段,因此没有真正的代码可展示。
3个回答

6
只要您完全控制输入,注入或XSS攻击的风险非常小。无论您采取什么安全措施,都可能发生一些攻击,例如在传输过程中替换部分内容或注入内容。
只需保护好您的数据库即可。

3
听起来你正在做很标准的事情。许多人会使用AJAH(HTML而不是XML或JSON)出于你提到的同样的原因。

感谢您的输入。我只是不想创建某种可能的XSS漏洞之类的东西。我知道我需要进行清理,但只要有一个遗漏... - TCCV

1

可能存在XSS漏洞的地方是在ajax响应中显示搜索词。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接