如何防止恶意用户上传的zips破坏Node.js中的服务

时间:2018-02-17 04:44:17

标签: node.js web unzip

我正在尝试在Node.js Web服务中处理用户上传的zip文件。但是,在某些情况下可能出现问题:

  1. 用户上传包含符号链接的zip文件
  2. zip文件包含的文件太大
  3. 对于情况1,我可以在解压缩后检查符号链接,但此解决方案是黑名单方法。有更好的解决方案吗?

    对于情况2,我可以在解压缩之前检查解压缩的大小,但是此字段可以被任意修改,并且无法检查以防止坏用户。

    那么有更普遍的解决方案吗?

1 个答案:

答案 0 :(得分:0)

for 1:尝试按encodeURIComponent()编码链接,我不确定它是否正常

for 2:使用Nginx来限制文件大小