Skip to main content
Meet us at Black Hat USA 2026— Las Vegas, August 1–6Book a Meeting
Mallory
MalwareUsed by 2 actors

DOORME

DOORME is a malicious native IIS (Internet Information Services) backdoor module deployed to internet-facing web servers running IIS to provide covert remote access. Elastic Security Labs reported it as part of the REF2924 intrusion set and observed it in environments that also contained SIESTAGRAPH, NAPLISTENER, SOMNIRECORD, SHADOWPAD, and COBALTSTRIKE. Elastic previously observed DOORME targeting the Foreign Ministry of an ASEAN member nation in December 2022, and also identified an identically configured DOORME backdoor on an internet-connected Exchange server at a telecommunications provider in Afghanistan.

DOORME is implemented as a malicious C++ DLL that uses the RegisterModule export to load into IIS and register event handlers. It overrides the IIS OnGlobalPreBeginRequest event handler to inspect and process inbound web requests before they enter the IIS pipeline. The malware uses XOR string obfuscation, anti-disassembly techniques, control-flow obfuscation, and dynamic API resolution to hinder analysis.

For operator authentication, DOORME checks for the string "79cfdd0e92b120faadd7eb253eb800d0" in a specific HTTP cookie. When it receives an authenticated HTTP GET request, it responds with "It works!" along with the username and hostname of the infected machine. For tasking, it accepts doubly encoded POST data in which commands are AES-encrypted and then Base64-encoded using a custom Base64 alphabet. It uses AES-CBC encryption with a key derived from the MD5 hash of the first 16 bytes of its authentication hash.

Observed command handlers include command 0x42, which generates a GUID via CoCreateGuid to identify the infected machine; command 0x43, which allocates memory with NtAllocateVirtualMemory and executes shellcode in-process with NtCreateThreadEx; command 0x63, which receives shellcode in chunks, reassembles it, and executes it; and command 0x44, which communicates with executing shellcode through a named pipe to send input and retrieve output.

Elastic associated REF2924-related campaigns with Winnti and ChamelGang based on shared malware, file names, techniques, victimology, and strategic targeting priorities, and assessed with moderate confidence that REF2924 is a regionally aligned, non-monetary threat group. Separately, Elastic later described a victim environment containing DOORME and assessed related REF2924 and REF5961 activity as state-sponsored espionage and China-nexus.

Share:
For your environment

Hunt this family in your stack

Mallory pivots from this family to the IOCs, detections, and named campaigns that touch your stack, and pages you when something new lands.

THREAT ACTORS

Groups observed using it

2 distinct threat actors attributed by public researchers. Open in Mallory to see the full evidence chain and overlapping campaigns.

View more details
Chamelgang

DOORME is an IIS (Internet Information Services) backdoor module, which is deployed to web servers running the IIS software.

via elastic security labselastic.co
APT41

DOORME is an IIS (Internet Information Services) backdoor module, which is deployed to web servers running the IIS software.

via elastic security labselastic.co
MITRE ATT&CK

Techniques & procedures

8 distinct techniques documented for this family, organized by ATT&CK tactic.

Execution

1 technique
T1106Native APIEvidence1

This functionality is achieved by utilizing the Windows native functions NtAllocateVirtualMemory and NtCreateThreadEx... The sample will allocate an RWX-protected memory region using the VirtualAlloc Windows API, then write the shellcode to the memory region and pass execution to it.

Persistence

1 technique
T1505.003Web ShellEvidence1

DOORME is a native backdoor module that is loaded into a victim's IIS infrastructure and used to provide remote access to the target infrastructure... The main functionality of the backdoor is implemented in the CGlobalModule class and its event handler, OnGlobalPreBeginRequest. This event handler is overridden by DOORME, allowing it to be loaded before a web request enters the IIS pipeline.

Privilege Escalation

1 technique
T1055Process InjectionEvidence1

Another command, ID 0x43, is particularly noteworthy as it allows the attacker to execute shellcode in the memory of the same process... using NtAllocateVirtualMemory and NtCreateThreadEx... Once log.dll is loaded, it will spawn Microsoft Windows Media Player (wmplayer.exe) and dllhost.exe, injecting into them.

Stealth

4 techniques
T1027Obfuscated Files or InformationEvidence2

DOORME XOR-encrypts strings to evade detection... The malware employs a technique that can cause disassemblers to incorrectly split functions... The malware in question also employs a technique known as Control Flow Obfuscation... Dynamic import table resolution... log.dll incorporates a code-scattering obfuscation technique to frustrate static analysis.

T1027.007Dynamic API ResolutionEvidence1

DOORME first resolves the address of LoadLibraryA and GetProcAddress Windows API by parsing the kernel32.dll module export table... The sample uses the common Ldr crawling technique to find the address of kernel32.dll... It uses GetProcAddress to resolve imports as needed.

T1055Process InjectionEvidence1

Another command, ID 0x43, is particularly noteworthy as it allows the attacker to execute shellcode in the memory of the same process... using NtAllocateVirtualMemory and NtCreateThreadEx... Once log.dll is loaded, it will spawn Microsoft Windows Media Player (wmplayer.exe) and dllhost.exe, injecting into them.

T1218System Binary Proxy ExecutionEvidence1

The REF2924 intrusion set, using SIESTAGRAPH, DOORME, SHADOWPAD, and the system binary proxy execution technique (among others) represents an attack group...

Command and Control

2 techniques
T1071.001Web ProtocolsEvidence1

The malicious IIS module backdoor operates by looking for the string ... in a specific cookie of the incoming HTTP requests... GET requests are used to perform a status check... The backdoor operator sends commands to the malware through HTTP POST requests as data which is doubly encrypted.

T1105Ingress Tool TransferEvidence1

Command ID 0x63 allows the attacker to send a blob of shellcode in chunks, which the malware reassembles to execute... The D command... will then upload the requested file to OneDrive... U - Download from OneDrive.

INDICATORS OF COMPROMISE

IOCs tracked for this family

2 indicators attributed across vendor reports, sandbox runs, and researcher write-ups. Full values are available in Mallory.

View more in app
Hashes
2 tracked

File hashes (MD5, SHA-1, SHA-256) from samples and reports.

TypeValueLatest sighting
hash.md5●●●●●●●●●●●●View more in app3 years ago
hash.md5●●●●●●●●●●●●View more in app3 years ago
What this page doesn’t show

The version that knows your environment.

This page is what’s public. Mallory adds the parts that aren’t: which of your assets match these IOCs, which detections are missing, which campaigns to expect next, and what to do in the next 30 minutes.
IOC matching2

Match every observed IP, domain, and hash against your live telemetry.

Threat actor attribution2

Named campaigns wielding this family, with evidence pinned to each claim.

Exploited vulnerabilities

CVEs this family uses for access and lateral movement.

Detection signatures

YARA, Sigma, Snort, and vendor rules, auto-deployed to your SIEM.

MITRE ATT&CK mapping8

Every documented technique, ranked by evidence weight.

Researcher chatter

Reddit, Mastodon, and CTI community discussion around this family.