diff --git a/Gemfile b/Gemfile index 4cc77883dbc5e..a4f8812aba7db 100644 --- a/Gemfile +++ b/Gemfile @@ -31,8 +31,8 @@ group :development do end group :development, :test do - # For ./tools/dev/update_gem_licenses.sh - gem 'license_finder', '5.11.1' + # For ./tools/dev/update_gem_licenses.sh - custom fork (branch: rapid7-rubyzip-dependency-bump) until https://github.com/pivotal/LicenseFinder/pull/1063 lands + gem 'license_finder', git: 'https://github.com/rapid7/LicenseFinder', ref: '8c81993200b491af33db6b93587dd402a9ade1a0' # 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 diff --git a/Gemfile.lock b/Gemfile.lock index 6282d6634a715..3849b729f9061 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,3 +1,17 @@ +GIT + remote: https://github.com/rapid7/LicenseFinder + revision: 8c81993200b491af33db6b93587dd402a9ade1a0 + ref: 8c81993200b491af33db6b93587dd402a9ade1a0 + specs: + license_finder (7.2.1) + bundler + csv (~> 3.2) + rubyzip (>= 1, < 4) + thor (~> 1.2) + tomlrb (>= 1.3, < 2.1) + with_env (= 1.1.0) + xml-simple (~> 1.1.9) + PATH remote: . specs: @@ -228,7 +242,7 @@ GEM bigdecimal rexml crass (1.0.6) - csv (3.3.2) + csv (3.3.5) daemons (1.4.1) date (3.4.1) debug (1.11.0) @@ -313,13 +327,6 @@ GEM addressable (~> 2.8) bigdecimal (>= 3.1, < 5) 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.7.0) @@ -341,7 +348,7 @@ GEM mutex_m railties (~> 7.0) zeitwerk - metasploit-credential (6.0.24) + metasploit-credential (6.0.25) bigdecimal csv drb @@ -354,7 +361,7 @@ GEM railties rex-socket rubyntlm - rubyzip (< 3.0.0) + rubyzip (>= 3.1.1, < 4.0) metasploit-model (5.0.4) activemodel (~> 7.0) activesupport (~> 7.0) @@ -427,7 +434,6 @@ GEM parser (3.3.9.0) ast (~> 2.4.1) racc - parslet (1.8.2) patch_finder (1.0.2) pcaprub (0.13.3) pdf-reader (2.14.1) @@ -614,7 +620,7 @@ GEM windows_error (>= 0.1.4) rubyntlm (0.6.5) base64 - rubyzip (2.4.1) + rubyzip (3.3.0) sawyer (0.9.2) addressable (>= 2.3.5) faraday (>= 0.17.3, < 3) @@ -645,12 +651,11 @@ GEM eventmachine (~> 1.0, >= 1.0.4) logger rack (>= 1, < 4) - thor (1.4.0) + thor (1.5.0) tilt (2.6.0) timecop (0.9.10) timeout (0.4.3) - toml (0.2.0) - parslet (~> 1.8.0) + tomlrb (2.0.4) tsort (0.2.0) ttfunk (1.8.0) bigdecimal (~> 3.1) @@ -705,7 +710,7 @@ DEPENDENCIES debug (>= 1.0.0) factory_bot_rails fivemat - license_finder (= 5.11.1) + license_finder! memory_profiler metasploit-framework! octokit diff --git a/LICENSE_GEMS b/LICENSE_GEMS index b9081f111022b..a7632729dc906 100644 --- a/LICENSE_GEMS +++ b/LICENSE_GEMS @@ -1,7 +1,7 @@ This file is auto-generated by tools/dev/update_gem_licenses.sh Ascii85, 2.0.1, MIT aarch64, 2.1.0, "Apache 2.0" -abbrev, 0.1.2, "ruby, Simplified BSD" +abbrev, 0.1.2, "Simplified BSD, ruby" actionpack, 7.2.2.2, MIT actionview, 7.2.2.2, MIT activemodel, 7.2.2.2, MIT @@ -23,11 +23,11 @@ aws-sdk-kms, 1.99.0, "Apache 2.0" aws-sdk-s3, 1.182.0, "Apache 2.0" aws-sdk-ssm, 1.191.0, "Apache 2.0" aws-sigv4, 1.11.0, "Apache 2.0" -base64, 0.3.0, "ruby, Simplified BSD" +base64, 0.3.0, "Simplified BSD, ruby" bcrypt, 3.1.20, MIT bcrypt_pbkdf, 1.1.1, MIT -benchmark, 0.4.1, "ruby, Simplified BSD" -bigdecimal, 3.3.1, "ruby, Simplified BSD" +benchmark, 0.4.1, "Simplified BSD, ruby" +bigdecimal, 3.3.1, "Simplified BSD, ruby" bindata, 2.4.15, "Simplified BSD" bootsnap, 1.18.4, MIT bson, 5.1.1, "Apache 2.0" @@ -41,22 +41,22 @@ connection_pool, 2.5.4, MIT cookiejar, 0.3.4, "Simplified BSD" crack, 1.0.1, MIT crass, 1.0.6, MIT -csv, 3.3.2, "ruby, Simplified BSD" +csv, 3.3.2, "Simplified BSD, ruby" daemons, 1.4.1, MIT -date, 3.4.1, "ruby, Simplified BSD" -debug, 1.11.0, "ruby, Simplified BSD" -diff-lcs, 1.6.2, "MIT, Artistic-1.0-Perl, GPL-2.0-or-later" +date, 3.4.1, "Simplified BSD, ruby" +debug, 1.11.0, "Simplified BSD, ruby" +diff-lcs, 1.6.2, "Artistic-1.0-Perl, GPL-2.0-or-later, MIT" dnsruby, 1.73.1, "Apache 2.0" docile, 1.4.1, MIT -domain_name, 0.6.20240107, "Simplified BSD, New BSD, Mozilla Public License 2.0" -drb, 2.2.3, "ruby, Simplified BSD" +domain_name, 0.6.20240107, "Mozilla Public License 2.0, New BSD, Simplified BSD" +drb, 2.2.3, "Simplified BSD, ruby" ed25519, 1.4.0, MIT elftools, 1.3.1, MIT em-http-request, 1.1.7, MIT em-socksify, 0.3.3, MIT -erb, 5.0.3, "ruby, Simplified BSD" +erb, 5.0.3, "Simplified BSD, ruby" erubi, 1.13.1, MIT -eventmachine, 1.2.7, "ruby, GPL-2.0" +eventmachine, 1.2.7, "GPL-2.0, ruby" factory_bot, 6.5.5, MIT factory_bot_rails, 6.5.1, MIT faker, 3.5.1, MIT @@ -65,11 +65,11 @@ faraday-net_http, 3.0.2, MIT faraday-retry, 2.2.1, MIT faye-websocket, 0.11.3, "Apache 2.0" ffi, 1.16.3, "New BSD" -fiddle, 1.1.6, "ruby, Simplified BSD" +fiddle, 1.1.6, "Simplified BSD, ruby" filesize, 0.2.0, MIT fivemat, 1.3.7, MIT -forwardable, 1.3.3, "ruby, Simplified BSD" -getoptlong, 0.2.1, "ruby, Simplified BSD" +forwardable, 1.3.3, "Simplified BSD, ruby" +getoptlong, 0.2.1, "Simplified BSD, ruby" gssapi, 1.3.1, MIT gyoku, 1.4.0, MIT hashdiff, 1.2.1, MIT @@ -81,26 +81,26 @@ http-cookie, 1.0.8, MIT http_parser.rb, 0.8.0, MIT httpclient, 2.9.0, ruby i18n, 1.14.7, MIT -io-console, 0.8.1, "ruby, Simplified BSD" -ipaddr, 1.2.7, "ruby, Simplified BSD" -irb, 1.15.2, "ruby, Simplified BSD" +io-console, 0.8.1, "Simplified BSD, ruby" +ipaddr, 1.2.7, "Simplified BSD, ruby" +irb, 1.15.2, "Simplified BSD, ruby" jmespath, 1.6.2, "Apache 2.0" jsobfu, 0.4.2, "New BSD" json, 2.15.1, ruby json-schema, 6.2.0, MIT language_server-protocol, 3.17.0.5, MIT -license_finder, 5.11.1, MIT +license_finder, 7.2.1, MIT lint_roller, 1.1.0, MIT little-plugger, 1.1.4, MIT -logger, 1.7.0, "ruby, Simplified BSD" +logger, 1.7.0, "Simplified BSD, ruby" logging, 2.4.0, MIT loofah, 2.24.1, MIT lru_redux, 1.1.0, MIT mcp, 0.13.0, "Apache 2.0" memory_profiler, 1.1.0, MIT -metasm, 1.0.5, LGPL-2.1 +metasm, 1.0.6, LGPL-2.1 metasploit-concern, 5.0.5, "New BSD" -metasploit-credential, 6.0.23, "New BSD" +metasploit-credential, 6.0.25, "New BSD" metasploit-framework, 6.4.135, "New BSD" metasploit-model, 5.0.4, "New BSD" metasploit-payloads, 2.0.245, "3-clause (or ""modified"") BSD" @@ -109,19 +109,18 @@ metasploit_payloads-mettle, 1.0.46, "3-clause (or ""modified"") BSD" method_source, 1.1.0, MIT mime-types, 3.7.0, MIT mime-types-data, 3.2025.0924, MIT -mini_portile2, 2.8.9, MIT minitest, 5.25.5, MIT mqtt, 0.7.0, MIT msgpack, 1.6.1, "Apache 2.0" multi_json, 1.15.0, MIT mustermann, 3.0.3, MIT -mutex_m, 0.3.0, "ruby, Simplified BSD" +mutex_m, 0.3.0, "Simplified BSD, ruby" nessus_rest, 0.1.6, MIT -net-imap, 0.5.6, "ruby, Simplified BSD" -net-ldap, 0.19.0, MIT -net-protocol, 0.2.2, "ruby, Simplified BSD" +net-imap, 0.5.6, "Simplified BSD, ruby" +net-ldap, 0.20.0, MIT +net-protocol, 0.2.2, "Simplified BSD, ruby" net-sftp, 4.0.0, MIT -net-smtp, 0.5.1, "ruby, Simplified BSD" +net-smtp, 0.5.1, "Simplified BSD, ruby" net-ssh, 7.3.0, MIT netrc, 0.11.0, MIT network_interface, 0.0.4, MIT @@ -133,24 +132,23 @@ octokit, 10.0.0, MIT openssl-ccm, 1.2.3, MIT openssl-cmac, 2.0.2, MIT openvas-omp, 0.0.4, MIT -ostruct, 0.6.1, "ruby, Simplified BSD" +ostruct, 0.6.1, "Simplified BSD, ruby" packetfu, 2.0.0, "New BSD" parallel, 1.27.0, MIT parser, 3.3.9.0, MIT -parslet, 1.8.2, MIT patch_finder, 1.0.2, "New BSD" pcaprub, 0.13.3, LGPL-2.1 pdf-reader, 2.14.1, MIT pg, 1.5.9, "Simplified BSD" -pp, 0.6.3, "ruby, Simplified BSD" -prettyprint, 0.2.0, "ruby, Simplified BSD" +pp, 0.6.3, "Simplified BSD, ruby" +prettyprint, 0.2.0, "Simplified BSD, ruby" prism, 1.5.1, MIT pry, 0.15.2, MIT pry-byebug, 3.11.0, MIT psych, 5.3.1, MIT public_suffix, 6.0.2, MIT puma, 6.6.0, "New BSD" -racc, 1.8.1, "ruby, Simplified BSD" +racc, 1.8.1, "Simplified BSD, ruby" rack, 3.1.21, MIT rack-protection, 4.2.1, MIT rack-session, 2.1.2, MIT @@ -164,7 +162,7 @@ rake, 13.3.0, MIT rasn1, 0.14.0, MIT rb-readline, 0.5.5, BSD rdoc, 6.15.0, ruby -recog, 3.1.14, unknown +recog, 3.1.14, "Simplified BSD" redcarpet, 3.6.1, MIT regexp_parser, 2.11.3, MIT reline, 0.6.2, ruby @@ -189,7 +187,7 @@ rex-struct2, 0.1.5, "New BSD" rex-text, 0.2.63, "New BSD" rex-zip, 0.1.6, "New BSD" rexml, 3.4.1, "Simplified BSD" -rinda, 0.2.0, "ruby, Simplified BSD" +rinda, 0.2.0, "Simplified BSD, ruby" rkelly-remix, 0.0.7, MIT rspec, 3.13.1, MIT rspec-core, 3.13.5, MIT @@ -205,40 +203,40 @@ ruby-mysql, 4.2.0, MIT ruby-prof, 1.7.2, "Simplified BSD" ruby-progressbar, 1.13.0, MIT ruby-rc4, 0.1.5, MIT -ruby2_keywords, 0.0.5, "ruby, Simplified BSD" +ruby2_keywords, 0.0.5, "Simplified BSD, ruby" ruby_smb, 3.3.19, "New BSD" rubyntlm, 0.6.5, MIT -rubyzip, 2.4.1, "Simplified BSD" +rubyzip, 3.3.0, "Simplified BSD" sawyer, 0.9.2, MIT -securerandom, 0.4.1, "ruby, Simplified BSD" +securerandom, 0.4.1, "Simplified BSD, ruby" simplecov, 0.18.2, MIT simplecov-html, 0.13.1, MIT simpleidn, 0.2.3, MIT sinatra, 4.2.1, MIT sqlite3, 1.7.3, "New BSD" sshkey, 3.0.0, MIT -stringio, 3.1.1, "ruby, Simplified BSD" +stringio, 3.1.1, "Simplified BSD, ruby" strptime, 0.2.5, "Simplified BSD" swagger-blocks, 3.0.0, MIT -syslog, 0.3.0, "ruby, Simplified BSD" +syslog, 0.3.0, "Simplified BSD, ruby" test-prof, 1.4.4, MIT thin, 2.0.1, "GPL-2.0-or-later, ruby" thor, 1.4.0, MIT tilt, 2.6.0, MIT timecop, 0.9.10, MIT -timeout, 0.4.3, "ruby, Simplified BSD" -toml, 0.2.0, MIT -tsort, 0.2.0, "ruby, Simplified BSD" -ttfunk, 1.8.0, "Nonstandard, GPL-2.0-only, GPL-3.0-only" +timeout, 0.4.3, "Simplified BSD, ruby" +tomlrb, 2.0.4, MIT +tsort, 0.2.0, "Simplified BSD, ruby" +ttfunk, 1.8.0, "GPLv2, GPLv3, Nonstandard" tzinfo, 2.0.6, MIT tzinfo-data, 1.2025.1, MIT unicode-display_width, 3.2.0, MIT unicode-emoji, 4.1.0, MIT -unix-crypt, 1.3.1, 0BSD +unix-crypt, 1.3.1, "BSD Zero Clause License" useragent, 0.16.11, MIT warden, 1.2.9, MIT webmock, 3.26.2, MIT -webrick, 1.9.1, "ruby, Simplified BSD" +webrick, 1.9.1, "Simplified BSD, ruby" websocket-driver, 0.7.7, "Apache 2.0" websocket-extensions, 0.1.5, "Apache 2.0" win32api, 0.1.0, unknown @@ -247,6 +245,6 @@ winrm, 2.3.9, "Apache 2.0" with_env, 1.1.0, MIT xdr, 3.0.3, "Apache 2.0" xml-simple, 1.1.9, MIT -xmlrpc, 0.3.3, "ruby, Simplified BSD" +xmlrpc, 0.3.3, "Simplified BSD, ruby" yard, 0.9.37, MIT zeitwerk, 2.7.3, MIT diff --git a/modules/exploits/windows/fileformat/winrar_cve_2023_38831.rb b/modules/exploits/windows/fileformat/winrar_cve_2023_38831.rb index 0cd9c53a2f4ef..634decfb60509 100644 --- a/modules/exploits/windows/fileformat/winrar_cve_2023_38831.rb +++ b/modules/exploits/windows/fileformat/winrar_cve_2023_38831.rb @@ -78,7 +78,7 @@ def exploit FileUtils.cp(input_file, File.join(temp_dir, "#{decoy_name}B")) zip_path = File.join(temp_dir, 'template.zip') - Zip::File.open(zip_path, Zip::File::CREATE) do |zipfile| + Zip::File.open(zip_path, create: true) do |zipfile| zipfile.add("#{decoy_name}B", File.join(temp_dir, "#{decoy_name}B")) zipfile.add("#{decoy_name}A/#{decoy_name}A.cmd", bat_path) zipfile.add("#{decoy_name}A/#{payload_name}", payload_path) diff --git a/modules/exploits/windows/http/softing_sis_rce.rb b/modules/exploits/windows/http/softing_sis_rce.rb index eafb1d0980ee0..579c01ec464db 100644 --- a/modules/exploits/windows/http/softing_sis_rce.rb +++ b/modules/exploits/windows/http/softing_sis_rce.rb @@ -229,7 +229,7 @@ def exploit print_status("Saved configuration to #{config_zip_path}") # insert the malicious DLL - Zip::File.open(config_zip_path, Zip::File::CREATE) do |zipfile| + Zip::File.open(config_zip_path, create: true) do |zipfile| zipfile.add('..\\..\\..\\..\\..\\..\\..\\..\\..\\..\\..\\Windows\\System32\\wbem\\wbemcomn.dll', dll_path) end