【问题标题】:Webpack vendors JS bundle (Vue CLI) includes code not listed in dependencies or package-lock.json?Webpack 供应商 JS 包 (Vue CLI) 包含未在依赖项或 package-lock.json 中列出的代码?
【发布时间】:2021-08-14 10:09:35
【问题描述】:

信息安全审计工具针对在我们的 webpack 捆绑(由 Vue CLI)chunk-vendors.js 文件中发现的具有已知漏洞的过时库提出了一个标志:

YUI 2.9.0

似乎这个库甚至没有完整包含,因为它只是这个简短的 sn-p 代码:

/*! Copyright (c) 2011, Yahoo! Inc. All rights reserved. Code licensed under the BSD License: http://developer.yahoo.com/yui/license.html version: 2.9.0 */if(void 0===a)var a={};a.lang={extend:function(e,n,i){if(!n||!e)throw new Error("YAHOO.lang.extend failed, please check that all dependencies are included.");var a=function(){};if(a.prototype=n.prototype,e.prototype=new a,e.prototype.constructor=e,e.superclass=n.prototype,n.prototype.constructor==Object.prototype.constructor&&(n.prototype.constructor=n),i){var o;for(o in i)e.prototype[o]=i[o];var s=function(){},c=["toString","valueOf"];try{/MSIE/.test(r.userAgent)&&(s=function(t,e){for(o=0;o<c.length;o+=1){var n=c[o],r=e[n];"function"==typeof r&&r!=Object.prototype[n]&&(t[n]=r)}})}catch(t){}s(e.prototype,i)}}};

我期待找到由 NPM 安装的 YUI 依赖项,因此在 package-lock.json 中找到,但是在锁定文件中没有找到 yui

如何将这个依赖包含在chunk-vendors.js文件中而不包含在package-lock.json中,或者如何调试它?

【问题讨论】:

  • 只需通过node_modules做一个简单的文件grep查找以上版权文本
  • @IVOGELOV 谢谢,这有帮助!当我在 Windows 机器上时,在node_modules 文件夹中执行此命令会查明与此相关的依赖文件:findstr /s /i /m \<developer.yahoo.com\> *.* > results.out - 请回答,以便我将其标记为正确答案。

标签: javascript npm webpack package.json vue-cli


【解决方案1】:

为了找到有罪的依赖,您可以简单地通过node_modules 执行 grep 搜索以查找上述版权文本。 对于 Windows,您可以使用 PowerGREP 或 CLI 命令 findstr /s /i /m \<developer.yahoo.com\> *.* > results.outs 用于递归搜索,i 用于不区分大小写的搜索,m 仅打印文件名而不是匹配的确切行)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-02-26
    • 2019-03-26
    • 1970-01-01
    • 1970-01-01
    • 2017-12-12
    • 1970-01-01
    • 2020-11-19
    • 2019-04-06
    相关资源
    最近更新 更多