对于我的网络应用程序,我配置了一组OWASP安全标头,例如X-Frame-Options
或X-Content-Type-Options
。现在,我想知道是否应该为每个请求发送所有这些标头,或者我是否应该仅将它们用于特定请求,例如,使用" full"一堆安全标头,用于获取,发布,删除,放置和仅发送预检请求的CORS标头。
答案 0 :(得分:2)
为您投放的每种内容类型(例如text/html
,application/java
)和每种请求方法(GET
,PUT
输出完整的安全标头没有任何害处等等。)
但是,适用于不同请求和响应的那些将在下面讨论。
关于返回的内容类型:
X-Content-Type-Options
尤其需要适用于所有内容类型,因为Internet Explorer及其内容嗅探可能会对application/java
等类型进行不同的解释。X-Frame-Options
表示所有内容类型都可以阻止它们被加框,但这并不能阻止它们通过其他方式加载(例如<img>
标记)。X-XSS-Protection
应该足够了。Content-Security-Policy
仅适用于HTML内容类型。关于HTTP方法(GET
,POST
,PUT
等):
Strict-Transport-Security
如果在每个请求上输出都会更好,因为它会更新滑动到期时间,并且还会根据资源首次请求的方式设置HSTS策略。Strict-Transport-Security
标头的方式非常相似,一旦输出,就会设置策略。因为这越快越好,如果网站为所有请求执行此操作,则更有可能提前设置。