Man*_*hah 0 javascript xss json eval code-injection
我正在经历使用 eval() 对于基于 XSS 的攻击的不良影响。我需要保护一段代码免受可能的 XSS 攻击,我猜 JSON.parse() 应该可以正常工作。
var request = new XMLHttpRequest();
var url = encDataPath + "/jcr:content/metadata.json?_charset_=utf-8";
url = Granite.HTTP.externalize(url);
request.open("GET", url ,false);
request.send(null);
var jsonData =eval("(" + request.responseText + ")"); // <-- here
var assetTitle = jsonData["dc:title"];
var mimetype = jsonData["dc:format"];
Run Code Online (Sandbox Code Playgroud)
有人可以建议我如何将eval()(jsonData)更改为JSON.parse?
只需将该行替换为:
var jsonData = JSON.parse(request.responseText);
Run Code Online (Sandbox Code Playgroud)
如果响应是正确的 JSON,这应该可以正常工作。
| 归档时间: |
|
| 查看次数: |
1464 次 |
| 最近记录: |