我使用rawurlencode方法以json格式向客户端发送数据。它显示了hpfortify中rawurlencode方法中的跨站点脚本差验证。如何删除此问题。任何建议都非常感谢。
我的代码是 -
$json_encoded = rawurlencode($json);
$json_encoded = (preg_match("/[%\da-zA-Z-_]+/",htmlspecialchars($json_encoded,ENT_QUOTES, 'UTF-8')) ? $json_encoded : 0);
echo $json_encoded;
我在 echo $ json_encoded 时遇到错误(xss验证不佳)。
答案 0 :(得分:0)
如果您使用任何非标准验证功能,它将始终报告此问题,您需要为此功能编写自定义规则集(数据流)以从将来的扫描报告中删除并且好处是,它将删除具有此函数调用的所有问题。
URL编码不是XSS问题的正确解决方案所以无论如何它都是正确指出的。 (虽然你在Json响应中发送这个,所以xss exploit实际上是不可能的)
我不确定htmlspecialchars功能正在做什么,请参考OWASP cheat sheet以确保您使用正确的验证方式。