[英]Classic ASP — Protect Against HTTP Header Injection
我正在尝试保护经典ASP Web应用程序免受HTTP Header Injected XSS攻击,并且无法找到阻止用户代理字符串中找到的脚本的解决方案。
以下是Web应用程序的示例HTTP请求:
HTTP Request GET /WebApp/Login.aspx HTTP/1.1 Host: WebServer.Webapp.Com User‐Agent: Mozilla/5.0 (X11; Linux x86_64; rv:41.0) Gecko/20100101 Firefox/41.0**alert(1)** Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept‐Language: en‐US,en;q=0.5 Accept‐Encoding: gzip, deflate Cookie: ASP.NET_SessionId=foobarID Connection: keep‐alive
基本上我们要做的是保持用户代理字符串中的警报脚本在加载页面时触发。 我一直在做很多研究,并且无法为这个旧应用程序找到太多帮助。 我们确实将validateRequest和EnableHeaderChecking设置为true,但此脚本仍然执行。 任何帮助都非常感谢。
问题来自用户代理字符串(带有恶意脚本)在底部的页面上呈现以进行调试。 如果您遇到此问题,请检查您是否在页面上显示带有错误脚本的对象。
如果您是,请记住使用HTML编码安全地呈现它。
感谢the_lotus和Lankymart的快速解答。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.