Skip to content

Bundler cannot continue #8993

@thetsopotsa1

Description

@thetsopotsa1

--- ERROR REPORT TEMPLATE -------------------------------------------------------

Errno::EINVAL: Invalid argument @ rb_sysopen - /home/amost/metasploit-framework/vendor/bundle/ruby/3.2.0/cache/metasploit_payloads-mettle-1.0.45.gem
  /usr/lib/ruby/vendor_ruby/rubygems/package/file_source.rb:18:in `read'
          /usr/lib/ruby/vendor_ruby/rubygems/package/file_source.rb:18:in `start'
          /usr/lib/ruby/vendor_ruby/rubygems/package.rb:161:in `new'
          /usr/lib/ruby/vendor_ruby/rubygems/installer.rb:114:in `at'
          /home/amost/metasploit-framework/vendor/bundle/ruby/3.2.0/gems/bundler-2.5.22/lib/bundler/source/rubygems.rb:172:in `install'
          /home/amost/metasploit-framework/vendor/bundle/ruby/3.2.0/gems/bundler-2.5.22/lib/bundler/installer/gem_installer.rb:55:in `install'
          /home/amost/metasploit-framework/vendor/bundle/ruby/3.2.0/gems/bundler-2.5.22/lib/bundler/installer/gem_installer.rb:17:in `install_from_spec'
          /home/amost/metasploit-framework/vendor/bundle/ruby/3.2.0/gems/bundler-2.5.22/lib/bundler/installer/parallel_installer.rb:133:in `do_install'
          /home/amost/metasploit-framework/vendor/bundle/ruby/3.2.0/gems/bundler-2.5.22/lib/bundler/installer/parallel_installer.rb:124:in `block in worker_pool'
          /home/amost/metasploit-framework/vendor/bundle/ruby/3.2.0/gems/bundler-2.5.22/lib/bundler/worker.rb:62:in `apply_func'
          /home/amost/metasploit-framework/vendor/bundle/ruby/3.2.0/gems/bundler-2.5.22/lib/bundler/worker.rb:57:in `block in process_queue'
          /home/amost/metasploit-framework/vendor/bundle/ruby/3.2.0/gems/bundler-2.5.22/lib/bundler/worker.rb:54:in `loop'
          /home/amost/metasploit-framework/vendor/bundle/ruby/3.2.0/gems/bundler-2.5.22/lib/bundler/worker.rb:54:in `process_queue'
          /home/amost/metasploit-framework/vendor/bundle/ruby/3.2.0/gems/bundler-2.5.22/lib/bundler/worker.rb:90:in `block (2 levels) in create_threads'

Environment

Bundler       2.5.22
  Platforms   ruby, x86_64-linux-gnu
Ruby          3.2.3p157 (2024-01-18 revision 52bb2ac0a6971d0391efa2275f7a66bff319087c) [x86_64-linux-gnu]
  Full Path   /usr/bin/ruby3.2
  Config Dir  /etc
RubyGems      3.4.20
  Gem Home    /home/amost/metasploit-framework/vendor/bundle/ruby/3.2.0
  Gem Path    /home/amost/metasploit-framework/vendor/bundle/ruby/3.2.0
  User Home   /home/amost
  User Path   /home/amost/.local/share/gem/ruby/3.2.0
  Bin Dir     /home/amost/metasploit-framework/vendor/bundle/ruby/3.2.0/bin
OpenSSL
  Compiled    OpenSSL 3.0.13 30 Jan 2024
  Loaded      OpenSSL 3.0.13 30 Jan 2024
  Cert File   /usr/lib/ssl/cert.pem
  Cert Dir    /usr/lib/ssl/certs
Tools
  Git         2.43.0
  RVM         not installed
  rbenv       not installed
  chruby      not installed
Gem.ruby      /usr/bin/ruby3.2
bundle #!     /usr/bin/ruby

Bundler Build Metadata

Built At          2024-10-16
Git SHA           342d4542fda
Released Version  true

Bundler settings

disable_version_check
  Set for your local app (/home/amost/metasploit-framework/.bundle/config): true
jobs
  Set for the current command: 4
path
  Set for your local app (/home/amost/metasploit-framework/.bundle/config): "vendor/bundle"

Gemfile

Gemfile

source 'https://rubygems.org'
# Add default group gems to `metasploit-framework.gemspec`:
#   spec.add_runtime_dependency '<name>', [<version requirements>]
gemspec name: 'metasploit-framework'

# separate from test as simplecov is not run on travis-ci
group :coverage do
  # code coverage for tests
  gem 'simplecov', '0.18.2'
end

group :development do
  # Markdown formatting for yard
  gem 'redcarpet'
  # generating documentation
  gem 'yard'
  # for development and testing purposes
  gem 'pry-byebug'
  # Ruby Debugging Library - rebuilt and included by default from Ruby 3.1 onwards.
  # Replaces the old lib/debug.rb and provides more features.
  gem 'debug', '>= 1.0.0'
  # module documentation
  gem 'octokit'
  # memory profiling
  gem 'memory_profiler'
  # cpu profiling
  gem 'ruby-prof'
  # Metasploit::Aggregator external session proxy
  # disabled during 2.5 transition until aggregator is available
  # gem 'metasploit-aggregator'
end

group :development, :test do
  # For ./tools/dev/update_gem_licenses.sh
  gem 'license_finder', '5.11.1'
  # running documentation generation tasks and rspec tasks
  gem 'rake'
  # Define `rake spec`.  Must be in development AND test so that its available by default as a rake test when the
  # environment is development
  gem 'rspec-rails'
  gem 'rspec-rerun'
  # Required during CI as well local development
  gem 'rubocop', '1.75.7'
end

group :test do
  # automatically include factories from spec/factories
  gem 'test-prof'
  gem 'factory_bot_rails'
  # Make rspec output shorter and more useful
  gem 'fivemat'
  # rspec formatter for acceptance tests
  gem 'allure-rspec'
  # Manipulate Time.now in specs
  gem 'timecop'
end

Gemfile.lock

PATH
  remote: .
  specs:
    metasploit-framework (6.4.91)
      aarch64
      abbrev
      actionpack (~> 7.2.0)
      activerecord (~> 7.2.0)
      activesupport (~> 7.2.0)
      aws-sdk-ec2
      aws-sdk-ec2instanceconnect
      aws-sdk-iam
      aws-sdk-s3
      aws-sdk-ssm
      base64
      bcrypt
      bcrypt_pbkdf
      benchmark
      bigdecimal
      bootsnap
      bson
      chunky_png
      csv
      dnsruby
      drb
      ed25519
      elftools
      em-http-request
      eventmachine
      faker
      faraday (= 2.7.11)
      faraday-retry
      faye-websocket
      ffi (< 1.17.0)
      fiddle
      filesize
      getoptlong
      hrr_rb_ssh-ed25519
      http-cookie
      irb
      jsobfu
      json
      lru_redux
      metasm
      metasploit-concern
      metasploit-credential
      metasploit-model
      metasploit-payloads (= 2.0.221)
      metasploit_data_models (>= 6.0.7)
      metasploit_payloads-mettle (= 1.0.45)
      mqtt
      msgpack (~> 1.6.0)
      mutex_m
      nessus_rest
      net-imap
      net-ldap
      net-sftp
      net-smtp
      net-ssh
      network_interface
      nexpose
      nokogiri
      octokit (~> 4.0)
      openssl-ccm
      openvas-omp
      ostruct
      packetfu
      parallel
      patch_finder
      pcaprub
      pdf-reader
      pg
      puma
      rack
      railties
      rasn1 (= 0.14.0)
      rb-readline
      recog
      redcarpet
      reline
      rex-arch
      rex-bin_tools
      rex-core
      rex-encoder
      rex-exploitation
      rex-java
      rex-mime
      rex-nop
      rex-ole
      rex-powershell
      rex-random_identifier
      rex-registry
      rex-rop_builder
      rex-socket
      rex-sslscan
      rex-struct2
      rex-text
      rex-zip
      rinda
      ruby-macho
      ruby-mysql
      ruby_smb (~> 3.3.15)
      rubyntlm
      rubyzip
      sinatra
      sqlite3 (= 1.7.3)
      sshkey
      stringio (= 3.1.1)
      swagger-blocks
      syslog
      thin
      tzinfo
      tzinfo-data
      unix-crypt
      warden
      win32api
      windows_error
      winrm
      xdr
      xmlrpc
      zeitwerk

GEM
  remote: https://rubygems.org/
  specs:
    Ascii85 (2.0.1)
    aarch64 (2.1.0)
      racc (~> 1.6)
    abbrev (0.1.2)
    actionpack (7.2.2.1)
      actionview (= 7.2.2.1)
      activesupport (= 7.2.2.1)
      nokogiri (>= 1.8.5)
      racc
      rack (>= 2.2.4, < 3.2)
      rack-session (>= 1.0.1)
      rack-test (>= 0.6.3)
      rails-dom-testing (~> 2.2)
      rails-html-sanitizer (~> 1.6)
      useragent (~> 0.16)
    actionview (7.2.2.1)
      activesupport (= 7.2.2.1)
      builder (~> 3.1)
      erubi (~> 1.11)
      rails-dom-testing (~> 2.2)
      rails-html-sanitizer (~> 1.6)
    activemodel (7.2.2.1)
      activesupport (= 7.2.2.1)
    activerecord (7.2.2.1)
      activemodel (= 7.2.2.1)
      activesupport (= 7.2.2.1)
      timeout (>= 0.4.0)
    activesupport (7.2.2.1)
      base64
      benchmark (>= 0.3)
      bigdecimal
      concurrent-ruby (~> 1.0, >= 1.3.1)
      connection_pool (>= 2.2.5)
      drb
      i18n (>= 1.6, < 2)
      logger (>= 1.4.2)
      minitest (>= 5.1)
      securerandom (>= 0.3)
      tzinfo (~> 2.0, >= 2.0.5)
    addressable (2.8.7)
      public_suffix (>= 2.0.2, < 7.0)
    afm (0.2.2)
    allure-rspec (2.26.0)
      allure-ruby-commons (= 2.26.0)
      rspec-core (>= 3.8, < 4)
    allure-ruby-commons (2.26.0)
      mime-types (>= 3.3, < 4)
      require_all (>= 2, < 4)
      rspec-expectations (~> 3.12)
    arel-helpers (2.16.0)
      activerecord (>= 3.1.0, < 8.1)
    ast (2.4.3)
    aws-eventstream (1.3.2)
    aws-partitions (1.1065.0)
    aws-sdk-core (3.220.1)
      aws-eventstream (~> 1, >= 1.3.0)
      aws-partitions (~> 1, >= 1.992.0)
      aws-sigv4 (~> 1.9)
      base64
      jmespath (~> 1, >= 1.6.1)
    aws-sdk-ec2 (1.511.0)
      aws-sdk-core (~> 3, >= 3.216.0)
      aws-sigv4 (~> 1.5)
    aws-sdk-ec2instanceconnect (1.55.0)
      aws-sdk-core (~> 3, >= 3.216.0)
      aws-sigv4 (~> 1.5)
    aws-sdk-iam (1.119.0)
      aws-sdk-core (~> 3, >= 3.216.0)
      aws-sigv4 (~> 1.5)
    aws-sdk-kms (1.99.0)
      aws-sdk-core (~> 3, >= 3.216.0)
      aws-sigv4 (~> 1.5)
    aws-sdk-s3 (1.182.0)
      aws-sdk-core (~> 3, >= 3.216.0)
      aws-sdk-kms (~> 1)
      aws-sigv4 (~> 1.5)
    aws-sdk-ssm (1.191.0)
      aws-sdk-core (~> 3, >= 3.216.0)
      aws-sigv4 (~> 1.5)
    aws-sigv4 (1.11.0)
      aws-eventstream (~> 1, >= 1.0.2)
    base64 (0.2.0)
    bcrypt (3.1.20)
    bcrypt_pbkdf (1.1.1)
    benchmark (0.4.1)
    bigdecimal (3.2.3)
    bindata (2.4.15)
    bootsnap (1.18.4)
      msgpack (~> 1.2)
    bson (5.1.1)
    builder (3.3.0)
    byebug (11.1.3)
    chunky_png (1.4.0)
    coderay (1.1.3)
    concurrent-ruby (1.3.5)
    connection_pool (2.5.3)
    cookiejar (0.3.4)
    crass (1.0.6)
    csv (3.3.2)
    daemons (1.4.1)
    date (3.4.1)
    debug (1.10.0)
      irb (~> 1.10)
      reline (>= 0.3.8)
    diff-lcs (1.6.2)
    dnsruby (1.72.4)
      base64 (~> 0.2.0)
      logger (~> 1.6.5)
      simpleidn (~> 0.2.1)
    docile (1.4.1)
    domain_name (0.6.20240107)
    drb (2.2.3)
    ed25519 (1.4.0)
    elftools (1.3.1)
      bindata (~> 2)
    em-http-request (1.1.7)
      addressable (>= 2.3.4)
      cookiejar (!= 0.3.1)
      em-socksify (>= 0.3)
      eventmachine (>= 1.0.3)
      http_parser.rb (>= 0.6.0)
    em-socksify (0.3.3)
      base64
      eventmachine (>= 1.0.0.beta.4)
    erb (5.0.2)
    erubi (1.13.1)
    eventmachine (1.2.7)
    factory_bot (6.5.4)
      activesupport (>= 6.1.0)
    factory_bot_rails (6.5.0)
      factory_bot (~> 6.5)
      railties (>= 6.1.0)
    faker (3.5.1)
      i18n (>= 1.8.11, < 2)
    faraday (2.7.11)
      base64
      faraday-net_http (>= 2.0, < 3.1)
      ruby2_keywords (>= 0.0.4)
    faraday-net_http (3.0.2)
    faraday-retry (2.2.1)
      faraday (~> 2.0)
    faye-websocket (0.11.3)
      eventmachine (>= 0.12.0)
      websocket-driver (>= 0.5.1)
    ffi (1.16.3)
    fiddle (1.1.6)
    filesize (0.2.0)
    fivemat (1.3.7)
    forwardable (1.3.3)
    getoptlong (0.2.1)
    gssapi (1.3.1)
      ffi (>= 1.0.1)
    gyoku (1.4.0)
      builder (>= 2.1.2)
      rexml (~> 3.0)
    hashery (2.1.2)
    hrr_rb_ssh (0.4.2)
    hrr_rb_ssh-ed25519 (0.4.2)
      ed25519 (~> 1.2)
      hrr_rb_ssh (>= 0.4)
    http-cookie (1.0.8)
      domain_name (~> 0.5)
    http_parser.rb (0.8.0)
    httpclient (2.9.0)
      mutex_m
    i18n (1.14.7)
      concurrent-ruby (~> 1.0)
    io-console (0.8.1)
    ipaddr (1.2.7)
    irb (1.15.2)
      pp (>= 0.6.0)
      rdoc (>= 4.0.0)
      reline (>= 0.4.2)
    jmespath (1.6.2)
    jsobfu (0.4.2)
      rkelly-remix
    json (2.10.2)
    language_server-protocol (3.17.0.5)
    license_finder (5.11.1)
      bundler
      rubyzip (>= 1, < 3)
      thor
      toml (= 0.2.0)
      with_env (= 1.1.0)
      xml-simple
    lint_roller (1.1.0)
    little-plugger (1.1.4)
    logger (1.6.6)
    logging (2.4.0)
      little-plugger (~> 1.1)
      multi_json (~> 1.14)
    loofah (2.24.1)
      crass (~> 1.0.2)
      nokogiri (>= 1.12.0)
    lru_redux (1.1.0)
    memory_profiler (1.1.0)
    metasm (1.0.5)
    metasploit-concern (5.0.5)
      activemodel (~> 7.0)
      activesupport (~> 7.0)
      drb
      mutex_m
      railties (~> 7.0)
      zeitwerk
    metasploit-credential (6.0.16)
      bigdecimal
      csv
      drb
      metasploit-concern
      metasploit-model
      metasploit_data_models (>= 5.0.0)
      mutex_m
      net-ssh
      pg
      railties
      rex-socket
      rubyntlm
      rubyzip
    metasploit-model (5.0.4)
      activemodel (~> 7.0)
      activesupport (~> 7.0)
      bigdecimal
      drb
      mutex_m
      railties (~> 7.0)
    metasploit-payloads (2.0.221)
    metasploit_data_models (6.0.9)
      activerecord (~> 7.0)
      activesupport (~> 7.0)
      arel-helpers
      metasploit-concern
      metasploit-model (>= 3.1)
      pg
      railties (~> 7.0)
      recog
      webrick
    metasploit_payloads-mettle (1.0.45)
    method_source (1.1.0)
    mime-types (3.6.0)
      logger
      mime-types-data (~> 3.2015)
    mime-types-data (3.2025.0304)
    mini_portile2 (2.8.9)
    minitest (5.25.5)
    mqtt (0.6.0)
    msgpack (1.6.1)
    multi_json (1.15.0)
    mustermann (3.0.3)
      ruby2_keywords (~> 0.0.1)
    mutex_m (0.3.0)
    nessus_rest (0.1.6)
    net-imap (0.5.6)
      date
      net-protocol
    net-ldap (0.19.0)
    net-protocol (0.2.2)
      timeout
    net-sftp (4.0.0)
      net-ssh (>= 5.0.0, < 8.0.0)
    net-smtp (0.5.1)
      net-protocol
    net-ssh (7.3.0)
    network_interface (0.0.4)
    nexpose (7.3.0)
    nio4r (2.7.4)
    nokogiri (1.18.9)
      mini_portile2 (~> 2.8.2)
      racc (~> 1.4)
    nori (2.7.1)
      bigdecimal
    octokit (4.25.1)
      faraday (>= 1, < 3)
      sawyer (~> 0.9)
    openssl-ccm (1.2.3)
    openssl-cmac (2.0.2)
    openvas-omp (0.0.4)
    ostruct (0.6.1)
    packetfu (2.0.0)
      pcaprub (~> 0.13.1)
    parallel (1.27.0)
    parser (3.3.8.0)
      ast (~> 2.4.1)
      racc
    parslet (1.8.2)
    patch_finder (1.0.2)
    pcaprub (0.13.3)
    pdf-reader (2.14.1)
      Ascii85 (>= 1.0, < 3.0, != 2.0.0)
      afm (~> 0.2.1)
      hashery (~> 2.0)
      ruby-rc4
      ttfunk
    pg (1.5.9)
    pp (0.6.2)
      prettyprint
    prettyprint (0.2.0)
    prism (1.4.0)
    pry (0.14.2)
      coderay (~> 1.1)
      method_source (~> 1.0)
    pry-byebug (3.10.1)
      byebug (~> 11.0)
      pry (>= 0.13, < 0.15)
    psych (5.2.6)
      date
      stringio
    public_suffix (6.0.1)
    puma (6.6.0)
      nio4r (~> 2.0)
    racc (1.8.1)
    rack (2.2.17)
    rack-protection (3.2.0)
      base64 (>= 0.1.0)
      rack (~> 2.2, >= 2.2.4)
    rack-session (1.0.2)
      rack (< 3)
    rack-test (2.2.0)
      rack (>= 1.3)
    rackup (1.0.1)
      rack (< 3)
      webrick
    rails-dom-testing (2.3.0)
      activesupport (>= 5.0.0)
      minitest
      nokogiri (>= 1.6)
    rails-html-sanitizer (1.6.2)
      loofah (~> 2.21)
      nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0)
    railties (7.2.2.1)
      actionpack (= 7.2.2.1)
      activesupport (= 7.2.2.1)
      irb (~> 1.13)
      rackup (>= 1.0.0)
      rake (>= 12.2)
      thor (~> 1.0, >= 1.2.2)
      zeitwerk (~> 2.6)
    rainbow (3.1.1)
    rake (13.3.0)
    rasn1 (0.14.0)
      strptime (~> 0.2.5)
    rb-readline (0.5.5)
    rdoc (6.14.2)
      erb
      psych (>= 4.0.0)
    recog (3.1.14)
      nokogiri
    redcarpet (3.6.1)
    regexp_parser (2.10.0)
    reline (0.6.2)
      io-console (~> 0.5)
    require_all (3.0.0)
    rex-arch (0.1.18)
      rex-text
    rex-bin_tools (0.1.10)
      metasm
      rex-arch
      rex-core
      rex-struct2
      rex-text
    rex-core (0.1.34)
    rex-encoder (0.1.8)
      metasm
      rex-arch
      rex-text
    rex-exploitation (0.1.44)
      bigdecimal
      jsobfu
      metasm
      racc
      rex-arch
      rex-encoder
      rex-text
      rexml
    rex-java (0.1.8)
    rex-mime (0.1.11)
      rex-text
    rex-nop (0.1.4)
      rex-arch
    rex-ole (0.1.9)
      rex-text
    rex-powershell (0.1.103)
      bigdecimal
      rex-random_identifier
      rex-text
      ruby-rc4
    rex-random_identifier (0.1.20)
      bigdecimal
      rex-text
    rex-registry (0.1.6)
    rex-rop_builder (0.1.6)
      metasm
      rex-core
      rex-text
    rex-socket (0.1.62)
      dnsruby
      rex-core
    rex-sslscan (0.1.13)
      rex-core
      rex-socket
      rex-text
    rex-struct2 (0.1.5)
    rex-text (0.2.61)
      bigdecimal
    rex-zip (0.1.6)
      rex-text
    rexml (3.4.4)
    rinda (0.2.0)
      drb
      forwardable
      ipaddr
    rkelly-remix (0.0.7)
    rspec (3.13.0)
      rspec-core (~> 3.13.0)
      rspec-expectations (~> 3.13.0)
      rspec-mocks (~> 3.13.0)
    rspec-core (3.13.5)
      rspec-support (~> 3.13.0)
    rspec-expectations (3.13.5)
      diff-lcs (>= 1.2.0, < 2.0)
      rspec-support (~> 3.13.0)
    rspec-mocks (3.13.5)
      diff-lcs (>= 1.2.0, < 2.0)
      rspec-support (~> 3.13.0)
    rspec-rails (8.0.1)
      actionpack (>= 7.2)
      activesupport (>= 7.2)
      railties (>= 7.2)
      rspec-core (~> 3.13)
      rspec-expectations (~> 3.13)
      rspec-mocks (~> 3.13)
      rspec-support (~> 3.13)
    rspec-rerun (1.1.0)
      rspec (~> 3.0)
    rspec-support (3.13.4)
    rubocop (1.75.7)
      json (~> 2.3)
      language_server-protocol (~> 3.17.0.2)
      lint_roller (~> 1.1.0)
      parallel (~> 1.10)
      parser (>= 3.3.0.2)
      rainbow (>= 2.2.2, < 4.0)
      regexp_parser (>= 2.9.3, < 3.0)
      rubocop-ast (>= 1.44.0, < 2.0)
      ruby-progressbar (~> 1.7)
      unicode-display_width (>= 2.4.0, < 4.0)
    rubocop-ast (1.44.1)
      parser (>= 3.3.7.2)
      prism (~> 1.4)
    ruby-macho (4.1.0)
    ruby-mysql (4.2.0)
    ruby-prof (1.7.2)
      base64
    ruby-progressbar (1.13.0)
    ruby-rc4 (0.1.5)
    ruby2_keywords (0.0.5)
    ruby_smb (3.3.15)
      bindata (= 2.4.15)
      openssl-ccm
      openssl-cmac
      rubyntlm (>= 0.6.5)
      windows_error (>= 0.1.4)
    rubyntlm (0.6.5)
      base64
    rubyzip (2.4.1)
    sawyer (0.9.2)
      addressable (>= 2.3.5)
      faraday (>= 0.17.3, < 3)
    securerandom (0.4.1)
    simplecov (0.18.2)
      docile (~> 1.1)
      simplecov-html (~> 0.11)
    simplecov-html (0.13.1)
    simpleidn (0.2.3)
    sinatra (3.2.0)
      mustermann (~> 3.0)
      rack (~> 2.2, >= 2.2.4)
      rack-protection (= 3.2.0)
      tilt (~> 2.0)
    sqlite3 (1.7.3)
      mini_portile2 (~> 2.8.0)
    sshkey (3.0.0)
    stringio (3.1.1)
    strptime (0.2.5)
    swagger-blocks (3.0.0)
    syslog (0.3.0)
      logger
    test-prof (1.4.4)
    thin (1.8.2)
      daemons (~> 1.0, >= 1.0.9)
      eventmachine (~> 1.0, >= 1.0.4)
      rack (>= 1, < 3)
    thor (1.4.0)
    tilt (2.6.0)
    timecop (0.9.10)
    timeout (0.4.3)
    toml (0.2.0)
      parslet (~> 1.8.0)
    ttfunk (1.8.0)
      bigdecimal (~> 3.1)
    tzinfo (2.0.6)
      concurrent-ruby (~> 1.0)
    tzinfo-data (1.2025.1)
      tzinfo (>= 1.0.0)
    unicode-display_width (3.1.4)
      unicode-emoji (~> 4.0, >= 4.0.4)
    unicode-emoji (4.0.4)
    unix-crypt (1.3.1)
    useragent (0.16.11)
    warden (1.2.9)
      rack (>= 2.0.9)
    webrick (1.9.1)
    websocket-driver (0.7.7)
      base64
      websocket-extensions (>= 0.1.0)
    websocket-extensions (0.1.5)
    win32api (0.1.0)
    windows_error (0.1.5)
    winrm (2.3.9)
      builder (>= 2.1.2)
      erubi (~> 1.8)
      gssapi (~> 1.2)
      gyoku (~> 1.0)
      httpclient (~> 2.2, >= 2.2.0.2)
      logging (>= 1.6.1, < 3.0)
      nori (~> 2.0, >= 2.7.1)
      rexml (~> 3.0)
      rubyntlm (~> 0.6.0, >= 0.6.3)
    with_env (1.1.0)
    xdr (3.0.3)
      activemodel (>= 4.2, < 8.0)
      activesupport (>= 4.2, < 8.0)
    xml-simple (1.1.9)
      rexml
    xmlrpc (0.3.3)
      webrick
    yard (0.9.37)
    zeitwerk (2.7.3)

PLATFORMS
  ruby

DEPENDENCIES
  allure-rspec
  debug (>= 1.0.0)
  factory_bot_rails
  fivemat
  license_finder (= 5.11.1)
  memory_profiler
  metasploit-framework!
  octokit
  pry-byebug
  rake
  redcarpet
  rspec-rails
  rspec-rerun
  rubocop (= 1.75.7)
  ruby-prof
  simplecov (= 0.18.2)
  test-prof
  timecop
  yard

BUNDLED WITH
   2.5.22

Gemspecs

metasploit-framework.gemspec

# coding: utf-8

# During build, the Gemfile is temporarily moved and
# we must manually define the project root
if ENV['MSF_ROOT']
  lib = File.realpath(File.expand_path('lib', ENV['MSF_ROOT']))
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
  require 'metasploit/framework/version'
  require 'metasploit/framework/rails_version_constraint'
  require 'msf/util/helper'
else
  # XXX: Use explicit calls to require_relative to ensure that static analysis tools such as dependabot work
  require_relative 'lib/metasploit/framework/version'
  require_relative 'lib/metasploit/framework/rails_version_constraint'
  require_relative 'lib/msf/util/helper'
end

Gem::Specification.new do |spec|
  spec.name          = 'metasploit-framework'
  spec.version       = Metasploit::Framework::GEM_VERSION
  spec.authors       = ['Metasploit Hackers']
  spec.email         = ['[email protected]']
  spec.summary       = 'metasploit-framework'
  spec.description   = 'metasploit-framework'
  spec.homepage      = 'https://www.metasploit.com'
  spec.license       = 'BSD-3-clause'

  # only do a git ls-files if the .git folder exists and we have a git binary in PATH
  if File.directory?(File.join(File.dirname(__FILE__), ".git")) && Msf::Util::Helper.which("git")
    spec.files         = `git ls-files`.split($/).reject { |file|
      file =~ /^external|^docs|^\.solargraph\.yml/
    }
  end
  spec.bindir = '.'
  if ENV['CREATE_BINSTUBS']
    spec.executables   = [
      'msfconsole',
      'msfd',
      'msfrpc',
      'msfrpcd',
      'msfvenom'
    ]
  end
  spec.test_files    = spec.files.grep(%r{^spec/})
  spec.require_paths = ["lib"]

  spec.required_ruby_version = '>= 3.1'

  # Database support
  spec.add_runtime_dependency 'activerecord', *Metasploit::Framework::RailsVersionConstraint::RAILS_VERSION
  # Need 3+ for ActiveSupport::Concern
  spec.add_runtime_dependency 'activesupport', *Metasploit::Framework::RailsVersionConstraint::RAILS_VERSION
  # Needed for config.action_view for view plugin compatibility for Pro
  spec.add_runtime_dependency 'actionpack', *Metasploit::Framework::RailsVersionConstraint::RAILS_VERSION
  # Needed for some admin modules (cfme_manageiq_evm_pass_reset.rb)
  spec.add_runtime_dependency 'bcrypt'
  # Improves bootup performance by caching expensive computations
  spec.add_runtime_dependency 'bootsnap'
  # Needed for Javascript obfuscation
  spec.add_runtime_dependency 'jsobfu'
  # Needed for some admin modules (scrutinizer_add_user.rb)
  spec.add_runtime_dependency 'json'
  # Metasm compiler/decompiler/assembler
  spec.add_runtime_dependency 'metasm'
  # Needed for aarch64 assembler support - as Metasm does not currently support Aarch64 fully
  spec.add_runtime_dependency 'aarch64'
  # Metasploit::Concern hooks
  spec.add_runtime_dependency 'metasploit-concern'
  # Metasploit::Credential database models
  spec.add_runtime_dependency 'metasploit-credential'
  # Database models shared between framework and Pro.
  spec.add_runtime_dependency 'metasploit_data_models', '>= 6.0.7'
  # Things that would normally be part of the database model, but which
  # are needed when there's no database
  spec.add_runtime_dependency 'metasploit-model'
  # Needed for Meterpreter
  spec.add_runtime_dependency 'metasploit-payloads', '2.0.221'
  # Needed for the next-generation POSIX Meterpreter
  spec.add_runtime_dependency 'metasploit_payloads-mettle', '1.0.45'
  # Needed by msfgui and other rpc components
  # Locked until build env can handle newer version. See: https://github.com/msgpack/msgpack-ruby/issues/334
  spec.add_runtime_dependency 'msgpack', '~> 1.6.0'
  # get list of network interfaces, like eth* from OS.
  spec.add_runtime_dependency 'network_interface'
  # NTLM authentication
  spec.add_runtime_dependency 'rubyntlm'
  # Needed by for XML parsing
  spec.add_runtime_dependency 'nokogiri'
  # Needed by db.rb and Msf::Exploit::Capture
  spec.add_runtime_dependency 'packetfu'
  # For sniffer and raw socket modules
  spec.add_runtime_dependency 'pcaprub'
  # Used by the Metasploit data model, etc.
  # bound to 0.2x for Activerecord 4.2.8 deprecation warnings:
  # https://github.com/ged/ruby-pg/commit/c90ac644e861857ae75638eb6954b1cb49617090
  spec.add_runtime_dependency 'pg'
  # Run initializers for metasploit-concern, metasploit-credential, metasploit_data_models Rails::Engines
  spec.add_runtime_dependency 'railties'
  # required for OS fingerprinting
  spec.add_runtime_dependency 'recog'
  # required for bitlocker fvek extraction
  spec.add_runtime_dependency 'openssl-ccm'
  # Needed for documentation generation - locked unitl Ruby 2.6 support is dropped
  spec.add_runtime_dependency 'octokit', '~> 4.0'
  spec.add_runtime_dependency 'redcarpet'
  # Needed for Microsoft patch finding tool (msu_finder)
  spec.add_runtime_dependency 'patch_finder'
  # Required for Metasploit Web Services
  spec.add_runtime_dependency 'puma'
  spec.add_runtime_dependency 'ruby-mysql'
  spec.add_runtime_dependency 'thin'
  spec.add_runtime_dependency 'sinatra'
  spec.add_runtime_dependency 'rack'
  spec.add_runtime_dependency 'warden'
  spec.add_runtime_dependency 'swagger-blocks'
  # Required for JSON-RPC client
  spec.add_runtime_dependency 'em-http-request'
  # TimeZone info
  spec.add_runtime_dependency 'tzinfo-data'
  # Gem for dealing with SSHKeys
  spec.add_runtime_dependency 'sshkey'
  # Library for interpreting Windows error codes and strings
  spec.add_runtime_dependency 'windows_error'
  # This used to be depended on by nokogiri, depended on by wmap
  if Gem::Version.new(RUBY_VERSION) >= Gem::Version.new('2.3.0')
    spec.add_runtime_dependency 'xmlrpc'
  end
  # Gem for handling Cookies
  spec.add_runtime_dependency 'http-cookie'
  # Needed for some modules (polkit_auth_bypass.rb)
  spec.add_runtime_dependency 'unix-crypt'
  # Needed for Kerberos structure parsing; Pinned to ensure a security review is performed on updates
  spec.add_runtime_dependency 'rasn1', '0.14.0'

  #
  # File Parsing Libraries
  #
  # Needed by auxiliary/gather/http_pdf_authors module
  spec.add_runtime_dependency 'pdf-reader'
  spec.add_runtime_dependency 'ruby-macho'
  # Needed for mongodb/bson
  spec.add_runtime_dependency 'bson'

  #
  # Protocol Libraries
  #
  spec.add_runtime_dependency 'dnsruby'
  spec.add_runtime_dependency 'mqtt'
  spec.add_runtime_dependency 'net-ssh'
  spec.add_runtime_dependency 'ed25519' # Adds ed25519 keys for net-ssh
  spec.add_runtime_dependency 'bcrypt_pbkdf'
  spec.add_runtime_dependency 'ruby_smb', '~> 3.3.15'
  spec.add_runtime_dependency 'net-imap' # Used in Postgres auth for its SASL stringprep implementation
  spec.add_runtime_dependency 'net-ldap'
  spec.add_runtime_dependency 'net-smtp'
  spec.add_runtime_dependency 'net-sftp'
  spec.add_runtime_dependency 'winrm'
  spec.add_runtime_dependency 'ffi', '< 1.17.0'

  #
  # REX Libraries
  #
  # Core of the Ruby Exploitation Library
  spec.add_runtime_dependency 'rex-core'
  # Text manipulation library for things like generating random string
  spec.add_runtime_dependency 'rex-text'
  # Library for Generating Randomized strings valid as Identifiers such as variable names
  spec.add_runtime_dependency 'rex-random_identifier'
  # library for creating Powershell scripts for exploitation purposes
  spec.add_runtime_dependency 'rex-powershell'
  # Library for processing and creating Zip compatbile archives
  spec.add_runtime_dependency 'rex-zip'
  # Library for parsing offline Windows Registry files
  spec.add_runtime_dependency 'rex-registry'
  # Library for parsing Java serialized streams
  spec.add_runtime_dependency 'rex-java'
  # Library for C-style structs
  spec.add_runtime_dependency 'rex-struct2'
  # Library which contains architecture specific information such as registers, opcodes,
  # and stack manipulation routines.
  spec.add_runtime_dependency 'rex-arch'
  # Library for working with OLE.
  spec.add_runtime_dependency 'rex-ole'
  # Library for creating and/or parsing MIME messages.
  spec.add_runtime_dependency 'rex-mime'
  # Library for Dynamic Multi-byte x86 NOP generation
  spec.add_runtime_dependency 'rex-nop'
  # Library for parsing and manipulating executable binaries
  spec.add_runtime_dependency 'rex-bin_tools'
  # Rex Socket Abstraction Layer
  spec.add_runtime_dependency 'rex-socket'
  # Library for scanning a server's SSL/TLS capabilities
  spec.add_runtime_dependency 'rex-sslscan'
  # Library and tool for finding ROP gadgets in a supplied binary
  spec.add_runtime_dependency 'rex-rop_builder'
  # Library for polymorphic encoders; used for payload encoding
  spec.add_runtime_dependency 'rex-encoder'
  # Library for exploit development helpers
  spec.add_runtime_dependency 'rex-exploitation'
  # Command line editing, history, and tab completion in msfconsole
  spec.add_runtime_dependency 'rb-readline'
  # Needed by some modules
  spec.add_runtime_dependency 'rubyzip'
  # Needed for some post modules
  spec.add_runtime_dependency 'sqlite3', '1.7.3'
  # required for Time::TZInfo in ActiveSupport
  spec.add_runtime_dependency 'tzinfo'
  # Needed so that disk size output isn't horrible
  spec.add_runtime_dependency 'filesize'
  # Needed for openvas plugin
  spec.add_runtime_dependency 'openvas-omp'
  # Needed by metasploit nessus bridge
  spec.add_runtime_dependency 'nessus_rest'
  # Nexpose Gem
  spec.add_runtime_dependency 'nexpose'
  # Needed for NDMP sockets
  spec.add_runtime_dependency 'xdr'
  # Needed for ::Msf...CertProvider
  spec.add_runtime_dependency 'faker'
  # SSH server library with ed25519
  spec.add_runtime_dependency 'hrr_rb_ssh-ed25519'
  # Needed for irb internal command
  spec.add_runtime_dependency 'irb'

  # AWS enumeration modules
  spec.add_runtime_dependency 'aws-sdk-s3'
  spec.add_runtime_dependency 'aws-sdk-ec2'
  spec.add_runtime_dependency 'aws-sdk-iam'
  spec.add_runtime_dependency 'aws-sdk-ssm'

  # AWS session support
  spec.add_runtime_dependency 'aws-sdk-ec2instanceconnect'

  # Needed for WebSocket Support
  spec.add_runtime_dependency 'faye-websocket'
  spec.add_runtime_dependency 'eventmachine'

  spec.add_runtime_dependency 'faraday', '2.7.11'
  spec.add_runtime_dependency 'faraday-retry'

  # Required for windows terminal colors as of Ruby 3.0
  spec.add_runtime_dependency 'win32api'

  spec.add_runtime_dependency 'zeitwerk'

  # Required for PNG payload support.
  # WARNING: Chunky_PNG is vulnerable to decompression bomb attacks.
  # Do not use this to process untrusted PNG files! This is only to be used
  # to generate PNG files, not to parse untrusted PNG files.
  spec.add_runtime_dependency 'chunky_png'

  # Needed for multiline REPL support for interactive SQL sessions
  spec.add_runtime_dependency 'reline'

  # Needed to parse sections of ELF files in order to retrieve symbols
  spec.add_runtime_dependency 'elftools'

  # Needed for generic in-memory cachine
  spec.add_runtime_dependency 'lru_redux'

  # Pinned on 3.1.1 as it is the version supported by our Ruby 3.3.8 dependency to avoid this issue https://github.com/rubygems/rubygems/issues/7657#issuecomment-2521083323
  # When Ruby ships with `gem --version` 3.6.0 or higher by default this can be removed
  spec.add_runtime_dependency 'stringio', '3.1.1'

  # Needed for caching validation
  spec.add_runtime_dependency 'parallel'

  # Standard libraries: https://www.ruby-lang.org/en/news/2023/12/25/ruby-3-3-0-released/
  %w[
    abbrev
    base64
    benchmark
    bigdecimal
    csv
    drb
    fiddle
    getoptlong
    mutex_m
    ostruct
    rinda
    syslog
  ].each do |library|
    spec.add_runtime_dependency library
  end
end

--- TEMPLATE END ----------------------------------------------------------------

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions