T1559 Inter-Process Communication
Adversaries may abuse inter-process communication (IPC) mechanisms for local code or command execution. IPC is typically used by processes to share data, communicate with each other, or synchronize execution. IPC is also commonly used to avoid situations such as deadlocks, which occurs when processes are stuck in a cyclic waiting pattern.
Adversaries may abuse IPC to execute arbitrary code or commands. IPC mechanisms may differ depending on OS, but typically exists in a form accessible through programming languages/libraries or native interfaces such as Windows Dynamic Data Exchange or Component Object Model. Linux environments support several different IPC mechanisms, two of which being sockets and pipes.2 Higher level execution mediums, such as those of Command and Scripting Interpreters, may also leverage underlying IPC mechanisms. Adversaries may also use Remote Services such as Distributed Component Object Model to facilitate remote IPC execution.1
| Item | Value |
|---|---|
| ID | T1559 |
| Sub-techniques | T1559.001, T1559.002, T1559.003 |
| Tactics | TA0002 |
| Platforms | Linux, Windows, macOS |
| Version | 1.4 |
| Created | 12 February 2020 |
| Last Modified | 24 October 2025 |
Procedure Examples
| ID | Name | Description |
|---|---|---|
| C0057 | 3CX Supply Chain Attack | During the 3CX Supply Chain Attack, AppleJeus’s VEILEDSIGNAL creates and listens on a Windows named pipe to exchange messages between modules.29 |
| S0687 | Cyclops Blink | Cyclops Blink has the ability to create a pipe to enable inter-process communication.22 |
| S1229 | Havoc | The Havoc SMB demon can use named pipes for communication through a parent demon.13 |
| S0537 | HyperStack | HyperStack can connect to the IPC$ share on remote machines.19 |
| S1141 | LunarWeb | LunarWeb can retrieve output from arbitrary processes and shell commands via a pipe.24 |
| S1244 | Medusa Ransomware | Medusa Ransomware has leveraged the CreatePipe API to enable inter-process communication.21 |
| S1100 | Ninja | Ninja can use pipes to redirect the standard input and the standard output.25 |
| S1172 | OilBooster | OilBooster can read the results of command line execution via an unnamed pipe connected to the process.20 |
| C0048 | Operation MidnightEclipse | During Operation MidnightEclipse, threat actors wrote output to stdout then piped it to bash for execution.28 |
| S1123 | PITSTOP | PITSTOP can listen over the Unix domain socket located at /data/runtime/cockpit/wd.fd.17 |
| S1130 | Raspberry Robin | Raspberry Robin contains an embedded custom Tor network client that communicates with the primary payload via shared process memory.15 |
| S1150 | ROADSWEEP | ROADSWEEP can pipe command output to a targeted process.16 |
| S1078 | RotaJakiro | When executing with non-root permissions, RotaJakiro uses the the shmget API to create shared memory between other known RotaJakiro processes. This allows processes to communicate with each other and share their PID.23 |
| S1200 | StealBit | StealBit can use interprocess communication (IPC) to enable the designation of multiple files for exfiltration in a scalable manner.14 |
| S1239 | TONESHELL | TONESHELL has facilitated inter-process communication between DLL components via the use of pipes.27 TONESHELL has also created a reverse shell using two anonymous pipes to write data to stdin and read data from stdout and stderr.26 |
| S0022 | Uroburos | Uroburos has the ability to move data between its kernel and user mode components, generally using named pipes.18 |
Mitigations
| ID | Mitigation | Description |
|---|---|---|
| M1013 | Application Developer Guidance | Enable the Hardened Runtime capability when developing applications. Do not include the com.apple.security.get-task-allow entitlement with the value set to any variation of true. |
| M1048 | Application Isolation and Sandboxing | Ensure all COM alerts and Protected View are enabled.8 |
| M1040 | Behavior Prevention on Endpoint | On Windows 10, enable Attack Surface Reduction (ASR) rules to prevent DDE attacks and spawning of child processes from Office programs.127 |
| M1042 | Disable or Remove Feature or Program | Registry keys specific to Microsoft Office feature control security can be set to disable automatic DDE/OLE execution. 345 Microsoft also created, and enabled by default, Registry keys to completely disable DDE execution in Word and Excel.6 |
| M1026 | Privileged Account Management | Modify Registry settings (directly or using Dcomcnfg.exe) in HKEY_LOCAL_MACHINE\\SOFTWARE\\Classes\\AppID\\{AppID_GUID} associated with the process-wide security of individual COM applications.9 |
| M1054 | Software Configuration | Consider disabling embedded files in Office programs, such as OneNote, that do not work with Protected View.75 |
References
-
Hamilton, C. (2019, June 4). Hunting COM Objects. Retrieved June 10, 2019. ↩
-
N/A. (2021, April 1). Inter Process Communication (IPC). Retrieved March 11, 2022. ↩
-
Microsoft. (2017, November 8). Microsoft Security Advisory 4053440 - Securely opening Microsoft Office documents that contain Dynamic Data Exchange (DDE) fields. Retrieved November 21, 2017. ↩
-
Cimpanu, C. (2017, December 15). Microsoft Disables DDE Feature in Word to Prevent Further Malware Attacks. Retrieved December 19, 2017. ↩
-
Dormann, W. (2017, October 20). Disable DDEAUTO for Outlook, Word, OneNote, and Excel versions 2010, 2013, 2016. Retrieved February 3, 2018. ↩↩
-
Microsoft. (2017, December 12). ADV170021 - Microsoft Office Defense in Depth Update. Retrieved February 3, 2018. ↩
-
Nelson, M. (2018, January 29). Reviving DDE: Using OneNote and Excel for Code Execution. Retrieved February 3, 2018. ↩↩
-
Microsoft. (n.d.). What is Protected View?. Retrieved November 22, 2017. ↩
-
Microsoft. (n.d.). Setting Process-Wide Security Through the Registry. Retrieved November 21, 2017. ↩
-
Microsoft. (n.d.). Registry Values for System-Wide Security. Retrieved November 21, 2017. ↩
-
Microsoft. (n.d.). DCOM Security Enhancements in Windows XP Service Pack 2 and Windows Server 2003 Service Pack 1. Retrieved November 22, 2017. ↩
-
Brower, N. & D’Souza-Wiltshire, I. (2017, November 9). Enable Attack surface reduction. Retrieved February 3, 2018. ↩
-
Cybereason Global SOC Team. (n.d.). THREAT ANALYSIS REPORT: Inside the LockBit Arsenal - The StealBit Exfiltration Tool. Retrieved January 29, 2025. ↩
-
Christopher So. (2022, December 20). Raspberry Robin Malware Targets Telecom, Governments. Retrieved May 17, 2024. ↩
-
Jenkins, L. at al. (2022, August 4). ROADSWEEP Ransomware - Likely Iranian Threat Actor Conducts Politically Motivated Disruptive Activity Against Albanian Government Organizations. Retrieved August 6, 2024. ↩
-
Lin, M. et al. (2024, February 27). Cutting Edge, Part 3: Investigating Ivanti Connect Secure VPN Exploitation and Persistence Attempts. Retrieved March 1, 2024. ↩
-
FBI et al. (2023, May 9). Hunting Russian Intelligence “Snake” Malware. Retrieved June 8, 2023. ↩
-
Accenture. (2020, October). Turla uses HyperStack, Carbon, and Kazuar to compromise government entity. Retrieved December 2, 2020. ↩
-
Hromcova, Z. and Burgher, A. (2023, December 14). OilRig’s persistent attacks using cloud service-powered downloaders. Retrieved November 26, 2024. ↩
-
Vlad Pasca. (2024, January 1). A Deep Dive into Medusa Ransomware. Retrieved October 15, 2025. ↩
-
Haquebord, F. et al. (2022, March 17). Cyclops Blink Sets Sights on Asus Routers. Retrieved March 17, 2022. ↩
-
Alex Turing, Hui Wang. (2021, April 28). RotaJakiro: A long live secret backdoor with 0 VT detection. Retrieved June 14, 2023. ↩
-
Jurčacko, F. (2024, May 15). To the Moon and back(doors): Lunar landing in diplomatic missions. Retrieved June 26, 2024. ↩
-
Dedola, G. (2022, June 21). APT ToddyCat. Retrieved January 3, 2024. ↩
-
Golo Muhr, Joshua Chung. (2025, May 15). Hive0154 targeting US, Philippines, Pakistan and Taiwan in suspected espionage campaign. Retrieved August 4, 2025. ↩
-
Lior Rochberger, Tom Fakterman, Robert Falcone. (2023, September 22). Cyberespionage Attacks Against Southeast Asian Government Linked to Stately Taurus, Aka Mustang Panda. Retrieved September 9, 2025. ↩
-
Volexity Threat Research. (2024, April 12). Zero-Day Exploitation of Unauthenticated Remote Code Execution Vulnerability in GlobalProtect (CVE-2024-3400). Retrieved November 20, 2024. ↩
-
Jeff Johnson, Fred Plan, Adrian Sanchez, Renato Fontana, Jake Nicastro, Dimiter Andonov, Marius Fodoreanu, Daniel Scott. (2023, April 20). 3CX Software Supply Chain Compromise Initiated by a Prior Software Supply Chain Compromise; Suspected North Korean Actor Responsible. Retrieved August 25, 2025. ↩