Tow*_*wer 4 html javascript php security ajax
我正在考虑向JavaScript提供HTML和JSON的安全方法.目前我只是输出JSON,如:
Run Code Online (Sandbox Code Playgroud)ajax.php?type=article&id=15
{
"name": "something",
"content": "some content"
}
Run Code Online (Sandbox Code Playgroud)
但我确实意识到这是一个安全风险 - 因为文章是由用户创建的.因此,有人可以为内容插入脚本标记(只是一个示例),并直接在AJAX API中链接到他的文章.因此,我现在想知道防止此类问题的最佳方法是什么.一种方法是从输入中编码所有非字母数字字符,然后在JavaScript中解码(并在放入某处时再次编码).
另一种选择可能是发送一些标题,迫使浏览器永远不会呈现AJAX API请求的响应(Content-Type和X-Content-Type-Options).
如果您设置为Content-Type,application/json则NO浏览器将在该页面上执行JavaScript.这是RFC-4627的一部分,Google使用它来保护自己.其他Application/内容类型遵循类似的规则.
您仍然需要担心基于DOM的XSS,但这会是您的JavaScript的问题,而不是json的内容.Json的另一个更奇特的安全问题是像gmail中的此漏洞一样的信息泄漏.
确保始终测试您的代码.有Sitewatch免费的xss扫描仪,或开源的Skipfish ,最后你可以用一个简单的手动测试<script>alert(/xss/)</script>.
| 归档时间: |
|
| 查看次数: |
938 次 |
| 最近记录: |