【braxiong】 在 https://github.com/istoreos/istoreos/issues/2131 发布:
访问URL:
http://路由器IP/cgi-bin/luci//"><iframe src=javascript:alert`test`
直接访问上述漏洞URL链接即可实现漏洞弹窗效果。
被网安判断为高危漏洞,请求修复
整改建议
(1) 对用户输入进行严格的验证,确保不接受任何可能导致脚本执行的输入。具体方法包括:
数据类型检查:验证输入数据的类型,如数字、字符串等。
长度限制:限制输入数据的长度。
正则表达式:使用正则表达式过滤掉潜在的恶意字符。
(2)对输出到HTML页面的数据进行编码,以防止恶意脚本在用户浏览器中执行。以下是几种常见的编码方法:
HTML实体编码:将特殊字符转换为HTML实体,如<转换为<,>转换为>。
JavaScript编码:对JavaScript中的特殊字符进行编码。
(3)使用已经过安全审查的API和库来处理HTML和JavaScript,如:
DOMPurify:一个DOM-only XSS清理库,用于清理HTML和SVG文档。
OWASP AntiSamy:一个开源的Java库,用于防止XSS攻击。
(4)设置适当的HTTP响应头,如:
Content-Security-Policy (CSP):限制资源的加载和执行,防止XSS攻击。