本文主要是纪录一些资安相关的HTTP Security Headers设置,
在Web.Config 设定档加入以下标籤即可。
1.伺服器资讯隐藏
X-Powered-By
、X-AspNet-Version
、X-AspNetMvc-Version
、Server
关闭。
<!--隐藏 X-Powered-By 栏位,隐藏网页应用程式的技术--><system.webServer> <httpProtocol> <customHeaders> <remove name="X-Powered-By" /> </customHeaders> </httpProtocol></system.webServer><!--隐藏 X-AspNet-Version 栏位,隐藏 ASP.NET 版本编号--><system.web> <httpRuntime enableVersionHeader="false" /></system.web><!--隐藏 Server 栏位--><system.webServer> <security> <requestFiltering removeServerHeader="true" /> </security></system.webServer>
2.Debug Mode关闭
避免正式环境Debug。
<system.web> <compilation debug="false" /></system.web>
3.HttpOnly
防止经由JavaScript 存取使用者的session、cookie。
<system.web> <httpCookies httpOnlyCookies="true" /></system.web>
4.防止HTTP Header 注入 (HTTP Header Injection)
<system.web> <httpRuntime targetFramework="*" enableHeaderChecking="true" /></system.web>
5.X-Content-Type-Options
Content Security Policy (CSP) 内容安全政策,限制网页中对外部的请求来源,防止XSS 攻击(Cross-site Scripting),
<!--将全面禁止载入任何来自其他网站资源--><system.webServer> <httpProtocol> <customHeaders> <add name="Content-Security-Policy" value="default-src 'self';" /> </customHeaders> </httpProtocol></system.webServer>
参考资料
1.https://cheatsheetseries.owasp.org/cheatsheets/HTTP_Headers_Cheat_Sheet.html
2.https://sdwh.dev/posts/2020/10/Cyber-Security-Web-Config-Configuration/
3.https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP