{
  "family": "rpdpatch",
  "sample_count": 1,
  "category": "backdoor",
  "description": "<h3>Executive Summary</h3>\nRPDPatch (or RDP Patcher) is a classification for tools, often flagged as HackTools or Riskware, designed to circumvent Microsoft Windows licensing restrictions. Standard Windows client operating systems (like Windows 10/11 Pro) only allow a single, concurrent Remote Desktop Protocol (RDP) session. RPDPatch alters system DLLs (specifically `termsrv.dll`) to allow multiple, simultaneous RDP connections to a single client machine. While sometimes used legitimately by aggressive IT administrators, threat actors heavily abuse this tool to establish persistent, interactive remote access to compromised systems without interrupting the legitimate user's session.\n\n<h3>Infection Vector and Technical Capabilities</h3>\nRPDPatch is a post-exploitation tool. It is manually deployed and executed by an attacker who has already breached the endpoint, escalated privileges to Administrator or SYSTEM, and wishes to solidify their backdoor access.\n\nUpon execution, RPDPatch modifies core OS components:\n<ul>\n<li><strong>DLL Patching (`termsrv.dll`):</strong> The tool forcibly modifies the binary code of the Terminal Services DLL (`termsrv.dll`) in the `System32` directory. It patches the specific conditional jumps that enforce the single-session connection limit, effectively unlocking Windows Server-like terminal services on a client OS.</li>\n<li><strong>Service Restart:</strong> After patching the DLL, the tool restarts the Remote Desktop Services (`TermService`) to apply the changes.</li>\n<li><strong>Covert Access:</strong> Once patched, the attacker can connect via RDP to the compromised machine at any time, using a stolen credential or a newly created hidden admin account, without kicking the legitimate user off the computer. This allows for highly stealthy, interactive lateral movement.</li>\n</ul>\n\n<h3>Threat Assessment</h3>\nThe unauthorized detection of an RPDPatch is a critical indicator of a severe, ongoing compromise. It signifies that an attacker has gained complete administrative control over the endpoint, is actively establishing persistent backdoors, and is likely using the machine as a pivot point to attack the rest of the network via RDP.\n\n<h3>Incident Response and Remediation</h3>\n<ul>\n<li><strong>Immediate Network Isolation:</strong> Isolate the endpoint immediately to terminate the attacker's active RDP session and prevent further lateral movement.</li>\n<li><strong>Forensic Investigation of User Accounts:</strong> Analysts must immediately investigate the local SAM database and Active Directory logs to identify which accounts the attacker used to authenticate via the patched RDP service, and look for any newly created, hidden administrator accounts.</li>\n<li><strong>Total Re-imaging:</strong> Because the attacker had interactive SYSTEM-level access and actively modified core Windows DLLs, attempting to manually revert the `termsrv.dll` patch is insufficient. The endpoint must undergo a complete bare-metal wipe and re-image from a trusted baseline.</li>\n</ul>",
  "cta": "Published by the SystemHelpdesk team.",
  "aliases": [
    "HackTool.RPDPatch",
    "Riskware.RDPPatcher",
    "Tool.RDPWrap",
    "Win32/Patch.RDP"
  ],
  "enrichment_level": "expert-seo",
  "faq": [
    {
      "@type": "Question",
      "name": "What is Rpdpatch and what threat category does it belong to?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Rpdpatch is classified as a Backdoor. Documented across security telemetry, it is engineered to execute unauthorized operations, establish persistent footholds on target endpoints, and facilitate malicious campaigns targeting enterprise and individual environments."
      }
    },
    {
      "@type": "Question",
      "name": "How does Rpdpatch establish persistence and evade defensive controls?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Rpdpatch typically establishes persistence through registry run keys, scheduled tasks, or service installations, while evading signature-based antivirus solutions through code obfuscation, memory injection, or anti-analysis sandbox checks."
      }
    },
    {
      "@type": "Question",
      "name": "What are the essential incident response steps for mitigating a Rpdpatch compromise?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Security teams responding to Rpdpatch should immediately isolate affected endpoints from the network, perform memory triage to capture volatile forensic artifacts, audit registry and startup persistence mechanisms, revoke exposed user credentials, and restore systems from verified, clean backups."
      }
    },
    {
      "@type": "Question",
      "name": "What remote administrative and surveillance capabilities does HackTool.RPDPatch provide to threat actors?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "As an interactive backdoor and remote access tool, HackTool.RPDPatch grants operators comprehensive control over the victim host. Common surveillance and management modules include real-time keystroke logging, desktop screen capture, remote VNC streaming, webcam and audio recording, arbitrary shell command execution, reverse proxy pivoting, and bidirectional file transfer capabilities."
      }
    },
    {
      "@type": "Question",
      "name": "How does HackTool.RPDPatch traverse firewalls and sustain resilient command-and-control (C2) connections?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "HackTool.RPDPatch establishes persistent outbound TCP or TLS connections back to threat actor infrastructure, effectively bypassing inbound firewall filtering. To maintain connection resilience against IP takedowns, variants frequently employ dynamic DNS services, fallback command servers, encrypted dead-drop resolvers on social platforms, or DNS over HTTPS (DoH) querying."
      }
    }
  ],
  "faq_count": 5,
  "mitre_attack": [
    "T1563.002",
    "T1021.001",
    "T1543.003"
  ],
  "cisa_advisory": null,
  "last_updated": "2026-10-15",
  "type": "HackTool / Riskware (RDP Modification)",
  "target_industries": [
    "Global / Opportunistic"
  ],
  "motivation": "Opportunistic",
  "threat_actors": [
    "Unknown / Cybercriminal"
  ],
  "target_geographies": [
    "Global"
  ],
  "attack_stage": [
    "persistence",
    "command_and_control",
    "remote_access"
  ],
  "ecosystem": [
    "windows_pe"
  ],
  "is_emerging": false,
  "mitre_attack_detail": [
    {
      "id": "T1563.002",
      "name": "RDP Hijacking",
      "tactic": "Lateral Movement"
    },
    {
      "id": "T1021.001",
      "name": "Remote Services: Remote Desktop Protocol (Utilizing built-in or custom VNC for graphical access)",
      "tactic": "Lateral Movement"
    },
    {
      "id": "T1543.003",
      "name": "Create or Modify System Process: Windows Service",
      "tactic": "Persistence"
    }
  ],
  "containment_steps": [
    "Immediately isolate the compromised host from internal LAN and WAN environments to cut off interactive remote shell sessions established by Rpdpatch.",
    "Inspect active socket listeners and outbound established network connections ('netstat -ano') to identify and sever covert TCP/UDP channels used by Rpdpatch.",
    "Scan Windows Services, Scheduled Tasks, and Startup folders to locate and eliminate persistent backdoor listeners configured by Rpdpatch.",
    "Invalidate all active VPN profiles, local administrator credentials, and session tokens that may have been harvested by the Rpdpatch operator.",
    "Re-image the affected host using a validated golden image prior to reconnecting it to enterprise network segments."
  ],
  "what_to_avoid": [
    "Do not attempt to interact with or send messages through the Rpdpatch remote terminal, as this alerts the attacker and may cause them to execute destructive anti-forensic commands.",
    "Avoid relying solely on static file signatures, as Rpdpatch payloads frequently execute reflectively in memory without writing binaries to disk."
  ],
  "target_platforms": [
    "Windows 11",
    "Windows 10",
    "Windows Server 2022",
    "Windows Server 2019"
  ]
}