X-Download-Options 默认启用

原文链接

简介:该中间件设置X-Download-Options报头以阻止IE浏览器下载您网站中的内容。

攻击方式

这种攻击只会影响老版本的IE浏览器。

有一些web应用让用户下载不受信任的HTML。比方说,您可以设置成允许用户上传和下载HTML文件。

默认情况下,老版本的IE浏览器允许您在网站环境下打开这些HTML文件,这就意味着一个不受信任的HTML页面可能据此搞事情。更多信息请参阅这篇MSDN博客文章

响应头详解

X-Download-Options报头可以设置成noopen。这将防止旧版本的IE浏览器允许在您网站环境中执行恶意HTML下载。

扩展阅读

代码

Helmet的isNoOpen中间件并不复杂,它仅仅将您的X-Download-Options报头可以设置成noopen

您可以作为Helmet的内部方法使用:

// Make sure you run "npm install helmet" to get the Helmet package.
const helmet = require('helmet')

// Sets "X-Download-Options: noopen".
app.use(helmet.ieNoOpen())
1
2
3
4
5

还可以作为单独的模块使用:

// Make sure you run "npm install ienoopen" to get the ienoopen package.
const ieNoOpen = require('ienoopen')

// Sets "X-Download-Options: noopen".
app.use(ieNoOpen())
1
2
3
4
5
上次更新: 1/19/2020, 5:49:54 PM