【问题标题】:Bundler could not find compatible versions for gem "sysrandom"Bundler 找不到 gem "sysrandom" 的兼容版本
【发布时间】:2019-05-07 11:13:48
【问题描述】:

在安装 PentestBox 以在 Windows 10 上安装渗透测试工具后,它运行良好,但有些工具已经过时,例如 metasploit,所以我尝试使用 PentestBox Update Manager 进行全部更新,但在完成更新后 msfconsole 继续提供我这个错误

Bundler could not find compatible versions for gem "sysrandom":
  In Gemfile:
    metasploit-framework x86-mingw32 was resolved to 5.0.0, which depends on sysrandom x86-mingw32

  Could not find gem 'sysrandom', which is required by gem 'metasploit-framework', in any of the sources.

我真的很喜欢 ruby​​ 语言,所以我该怎么办?

【问题讨论】:

  • 你试过从终端运行gem install sysrandom吗?
  • 其实不行,我试试谢谢

标签: ruby rubygems metasploit


【解决方案1】:

您链接到的 metasploit 版本似乎在几年内没有更新。它没有在 Gemfile 中将 sysrandom 列为依赖项。

这里有一个 newer version 确实有 sysrandom 作为依赖项:

https://github.com/rapid7/metasploit-framework/blob/master/metasploit-framework.gemspec#L106

我不确定为什么 pentestbox 使用这么旧的版本,但我假设“更新”实际上更新到 metasploit 的 rapid7 版本(因为它正在寻找只存在于那里的 sysrandom)。

您可以尝试以下几种方法:

  • bundle install 应该安装所有依赖项(不使用为 pentestbox 构建的控制台工具)
  • 删除Gemfile.lock 并运行bundle install。我通常不建议这样做,但如果某处似乎存在版本不匹配,有时这可以解决依赖关系错误。您应该能够再次重新检出此文件(假设它是本地版本)

如果您可以发布已下载的 metasploit 版本的 git commit 哈希,这可能有助于提供更多解决建议。

【讨论】:

    猜你喜欢
    • 2011-10-31
    • 2017-07-17
    • 2018-02-09
    • 2014-05-26
    • 2014-03-14
    • 2013-03-13
    • 2016-02-17
    • 2013-03-12
    • 2012-04-08
    相关资源
    最近更新 更多