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.(Citation: Linux IPC) 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.(Citation: Fireeye Hunting COM June 2019)

View in MITRE ATT&CK®

CRI Profile Mappings

Capability ID Capability Description Mapping Type ATT&CK ID ATT&CK Name Notes
PR.PS-01.01 Configuration baselines Mitigates T1559 Inter-Process Communication
Comments
This diagnostic statement provides for securely configuring production systems. This includes hardening default configurations and making security-focused setting adjustments to reduce the attack surface, enforce best practices, and protect sensitive data thereby mitigating adversary exploitation.
References
    PR.PS-01.02 Least functionality Mitigates T1559 Inter-Process Communication
    Comments
    This diagnostic statement provides for limiting unnecessary software, services, ports, protocols, etc. Ensuring systems only have installed and enabled what is essential for their operation reduces the attack surface and minimizes vulnerabilities, which mitigates a wide range of techniques.
    References
      PR.AA-05.03 Service accounts Mitigates T1559 Inter-Process Communication
      Comments
      This diagnostic statement is for the implementation of security controls for service accounts (i.e., accounts used by systems to access other systems). Set service account access restrictions to grant only the minimum necessary permissions to mitigate abuse of inter-process communication (IPC) mechanisms.
      References
        PR.PS-06.01 Secure SDLC process Mitigates T1559 Inter-Process Communication
        Comments
        This diagnostic statement protects inter-process communication mechanisms from abuse through secure development practices, such as enabling the Hardened Runtime capability when developing applications.
        References
          PR.PS-06.01 Secure SDLC process Mitigates T1559 Inter-Process Communication
          Comments
          This diagnostic statement protects inter-process communication mechanisms from abuse through secure development practices, such as enabling the Hardened Runtime capability when developing applications.
          References
            PR.AA-05.02 Privileged system access Mitigates T1559 Inter-Process Communication
            Comments
            This diagnostic statement protects against Inter-Process Communication through the use of privileged account management and the use of multi-factor authentication.
            References
              PR.PS-01.03 Configuration deviation Mitigates T1559 Inter-Process Communication
              Comments
              This diagnostic statement provides protection from Inter-Process Communication through the implementation of security configuration baselines for OS, software, file integrity monitoring and imaging. Security baselining and integrity checking can help protect against adversaries attempting to compromise and modify software and its configurations.
              References
                PR.PS-05.02 Mobile code prevention Mitigates T1559 Inter-Process Communication
                Comments
                Mobile code procedures address specific actions taken to prevent the development, acquisition, and introduction of unacceptable mobile code within organizational systems, including requiring mobile code to be digitally signed by a trusted source.
                References
                  PR.IR-01.06 Production environment segregation Mitigates T1559 Inter-Process Communication
                  Comments
                  This diagnostic statement provides protections for production environments. Measures such as network segmentation and access control reduce the attack surface, restrict movement by adversaries, and protect critical assets and data from compromise.
                  References
                    PR.PS-06.07 Development and operational process alignment Mitigates T1559 Inter-Process Communication
                    Comments
                    This diagnostic statement protects against Inter-Process Communication through the use of DevSecOps, secure development lifecycle, and application developer guidance. Exploitable weaknesses can be mitigated through secure code, reduced vulnerabilities, and secure design principles.
                    References

                      NIST 800-53 Mappings

                      Capability ID Capability Description Mapping Type ATT&CK ID ATT&CK Name Notes
                      CM-06 Configuration Settings mitigates T1559 Inter-Process Communication
                      CM-05 Access Restrictions for Change mitigates T1559 Inter-Process Communication
                      SC-18 Mobile Code mitigates T1559 Inter-Process Communication
                      CM-10 Software Usage Restrictions mitigates T1559 Inter-Process Communication
                      SC-03 Security Function Isolation mitigates T1559 Inter-Process Communication
                      SI-02 Flaw Remediation mitigates T1559 Inter-Process Communication
                      RA-05 Vulnerability Monitoring and Scanning mitigates T1559 Inter-Process Communication
                      CM-08 System Component Inventory mitigates T1559 Inter-Process Communication
                      SI-03 Malicious Code Protection mitigates T1559 Inter-Process Communication
                      CM-02 Baseline Configuration mitigates T1559 Inter-Process Communication
                      IA-02 Identification and Authentication (Organizational Users) mitigates T1559 Inter-Process Communication
                      CM-07 Least Functionality mitigates T1559 Inter-Process Communication
                      SI-04 System Monitoring mitigates T1559 Inter-Process Communication
                      AC-02 Account Management mitigates T1559 Inter-Process Communication
                      AC-03 Access Enforcement mitigates T1559 Inter-Process Communication
                      AC-04 Information Flow Enforcement mitigates T1559 Inter-Process Communication
                      AC-05 Separation of Duties mitigates T1559 Inter-Process Communication
                      AC-06 Least Privilege mitigates T1559 Inter-Process Communication
                      SC-07 Boundary Protection mitigates T1559 Inter-Process Communication

                      VERIS Mappings

                      Capability ID Capability Description Mapping Type ATT&CK ID ATT&CK Name Notes
                      action.hacking.variety.Abuse of functionality Abuse of functionality. related-to T1559 Inter-Process Communication

                      Azure Mappings

                      Capability ID Capability Description Mapping Type ATT&CK ID ATT&CK Name Notes
                      defender_for_app_service Microsoft Defender for Cloud: Defender for App Service technique_scores T1559 Inter-Process Communication

                      ATT&CK Subtechniques

                      Technique ID Technique Name Number of Mappings
                      T1559.002 Dynamic Data Exchange 25
                      T1559.001 Component Object Model 19
                      T1559.003 XPC Services 10