当前位置: 首页 > 知识库问答 >
问题:

由于凭据存储和凭据存储不安全,web3安装失败

锺离玮
2023-03-14

在带有npm 7.12.0版的Ubuntu上安装最新的web3 1.3.5版失败,出现了几个严重错误。修复的典型时间范围是什么?

下划线1.3.2-1.12.0
严重性:高
任意代码执行-https://npmjs.com/advisories/1674\没有可用的修复程序
节点\模块/下划线
。web3 bzz

共有2个答案

莘绍元
2023-03-14

谢谢,问题解决了。我看到Github上的ChainSafe/web3.js包含要强调的修复程序,并将很快在NPM上发布。

另外,npm ls-all | grep下划线显示此库在第2、第3和第4级嵌套依赖项。感谢链接到npm上的npm force resolution以获取背景信息、进一步说明和警告,提醒可能存在的安全漏洞。我有一个沙盒学习系统。

严远
2023-03-14

我们运行npmci

GitHub已经有了这样的问题:

我们现在正在等待新版本(补丁)。在此之前,一个快速修复和一个可能的解决方案是在package-lock.json中搜索下划线,并在那里手动更新下划线版本,因为npm审计修复不会自动修复它。

我们使用了1.9.1版本,并将其更新为1.12.1(在审计日志中作为稳定版本列出)。请为每个下划线的出现更改以下行:

  • 版本:1.9.1=

这样,npm ci将从package-lock.json获取版本,并且不会发生错误。但是npm安装将忽略它。。。

如果需要,这两个命令之间有一个区别:npm install和npm ci之间的区别

使现代化

您还可以使用npm force resolutions软件包来设置下划线软件包的特定版本:

  1. 添加决议:{下划线:1.12.1}到您的package.json;
  2. 可选地添加预安装脚本,该脚本将在启动npm安装之前每次运行:"脚本":{"preInst":"npx npm-force-分辨率"}
  3. 运行npm安装npx npm-force-分辨率,然后在package-lock.json.中查看您的更改。

最终更新

web3@1.3.6当所有修复程序都可用时,您可以更新本地软件包。

 类似资料:
  • 问题内容: 攻击 在凭证存储的情况下,一种可能的威胁模型是攻击者,它具有以下能力: 检查任何(用户)进程内存 读取本地(用户)文件 AFAIK,这种攻击的共识是无法阻止(因为必须将凭据存储在内存中,程序才能实际使用它们),但是有两种技术可以缓解这种攻击: 最小化敏感数据在内存中的存储时间 一旦不再需要数据,将覆盖内存 通过模糊措施来处理内存中的数据,继续移动数据以及其他安全性 特别是Python

  • 我最近一直在寻找一个如何在CentOS 7中安全保存git凭证的解决方案。 我想保存多个git存储库的凭据。 我想出的解决方案是将侏儒密钥环与任何版本的git一起使用。但我遇到了一些问题。我发现很多帖子说这在Redhat 7或Centos 7中不是一个好的解决方案。,它将被弃用。 但这对我不起作用,使用git时出错: 与gnome-keyring-daemon通信时出错 然后我把git升级到最后一

  • 如果你使用的是 SSH 方式连接远端,并且设置了一个没有口令的密钥,这样就可以在不输入用户名和密码的情况下安全地传输数据。 然而,这对 HTTP 协议来说是不可能的 —— 每一个连接都是需要用户名和密码的。 这在使用双重认证的情况下会更麻烦,因为你需要输入一个随机生成并且毫无规律的 token 作为密码。 幸运的是,Git 拥有一个凭证系统来处理这个事情。 下面有一些 Git 的选项: 默认所有都

  • 允许访问简单的加密和解密字符串,以便存储在本地机器上。 进程:主进程 此模块保护磁盘上存储的数据不被其他应用程序或拥有完全磁盘访问权的用户访问。 请注意,在Mac上,需要访问系统Keychain,这些调用可以阻止当前线程来收集用户输入。 如果密码管理工具可用,Linux 亦是如此。 方法 safeStorage 模块包含以下方法: safeStorage.isEncryptionAvailable

  • 所以我想知道,如果我将一个UUID作为后修复添加到文件路径(我现在这样做是为了唯一性,),它是否可以作为一种通过模糊来实现安全的方法呢?(这将是非常困难的野蛮猜测,使某种“私人”文件)。 我知道这不是很理想,但至少在Firebase为这种场景实现更好的解决方案之前,这是暂时的事情,并且能够在晚上睡得更好:p 我的想法是设置如下内容: null

  • 我正在使用和遇到了一个奇怪的错误。 我最初的IAM策略非常保守,只包括对象的get、put和delete。 -- 然后我授予了除删除和创建bucket之外的所有权限 -- 我终于给了完全权限,我想避免,我不再得到403错误。 我已经尝试根据此答案提供对桶根和的访问权限 我的目标是只授予必要的权限。