【问题标题】:prevent returning pem files from nodejs express防止从 nodejs express 返回 pem 文件
【发布时间】:2016-04-19 15:52:42
【问题描述】:

我想阻止 nodejs 将我的秘密 pem 文件返回给世界。使用快递,我有

app.use(express.static('html'), function (req, res, next)
{
  var pathname = parseurl(req).pathname
  if (pathname.indexOf('.pem') >= 0)
    res.status(403).send('<h1>403 Forbidden</h1>')
  else
    next()
});

但我仍然可以从我的网站下载 .pem 文件(这对我来说是一个安全问题)

【问题讨论】:

    标签: node.js security express pem


    【解决方案1】:

    我建议您将 .pem(和任何其他敏感文件)完全移出 node/express 认为可提供内容的任何路径。

    我会担心,即使您的示例代码能够正常工作,您的 pem 也容易受到当前或未来节点/express 漏洞的攻击。

    您不希望用车门锁来保护您的秘密 ;-)

    【讨论】:

    • 这是有道理的。因此,如果我将 .pem 文件上移一个目录(在 html 目录之外),我仍然可以通过说 var path_to_pem='../mypem.pem'; 在我的 javascript 中访问它
    • 当你在你的javascript中说,你是指节点中的服务器端,还是客户端?我认为您不希望任何客户端能够访问敏感文件。但是服务器端,是的,你可以把它放在你有 RW 访问权限的任何目录中。
    • 是的,所以我会为 /api/push 创建一个端点(这是公共的......我仍在考虑如何处理它),但 .pem 不在 html 中提供的内容
    猜你喜欢
    • 2014-03-26
    • 2016-03-23
    • 2020-09-16
    • 1970-01-01
    • 2020-10-05
    • 2014-07-20
    • 1970-01-01
    • 1970-01-01
    • 2013-11-14
    相关资源
    最近更新 更多