During the 3CX Supply Chain Attack, AppleJeus leveraged the 3CX application's electron framework to execute its malicious libraries under the official 3CX electron application.1
Electron Applications T1218.015
- Tactic
- Stealth
- Platforms
- Linux, macOS, Windows
- Version
- 2.0
- Created
- 07 March 2024
- Last modified
- 12 May 2026
- Contributors
- Debabrata Sharma; Uriel Kosayev
Adversaries may abuse components of the Electron framework to execute malicious code. The Electron framework hosts many common applications such as Signal, Slack, and Microsoft Teams.[1] Originally developed by GitHub, Electron is a cross-platform desktop application development framework that employs web technologies like JavaScript, HTML, and CSS.[2] The Chromium engine is used to display web content and Node.js runs the backend code.[3]
Electron Applications MITRE reference T1218.015
1 campaign has been recorded using this technique. Listed newest first; dates are year-granularity and attribution is MITRE’s.
All 1 campaigns for this technique
1 software entry is documented implementing this technique. MITRE files each as a tool or as malware; newest first, then by how many groups carry them.
As leveraged Electron Applications to disable GPU sandboxing to avoid detection by security software.1
All 1 software entries for this technique
Offense vs defense T1218.015
Is defensive coverage keeping up with adversary use? Eight counts, each ranked against all 697 ATT&CK techniques. Attack sits left, defense right, so a shape leaning left means adversaries are better documented here than defenders are equipped. Hover any spoke for its percentile and the share of techniques that have more. The timeline below shows when each side arrived.
Electron Applications detection strategy DET0025
MITRE names one behaviour worth catching for this technique and breaks it into 3 analytics, one per platform. Each carries the log sources it needs and the fields you tune per environment.
Detecting Electron Application Abuse for Proxy Execution
AN0071 · Windows
Abuse of trusted Electron apps (Teams, Slack, Chrome) to spawn child processes or execute payloads via malicious command-line arguments (e.g., --gpu-launcher) and modified app resources (.asar). Behavior chain: suspicious parent process (Electron app) → unusual command-line args → child process creation → optional DLL/network artifacts.
Log sources
The data this analytic draws on. You do not need every component — each one you already collect covers part of it. Each links to its ATT&CK record.
| Data component | Name | Channel |
|---|---|---|
| Module LoadDC0016 | WinEventLog:Sysmon | EventCode=7 |
| Process CreationDC0032 | WinEventLog:Sysmon | EventCode=1 |
| File CreationDC0039 | WinEventLog:Sysmon | EventCode=11 |
| Network Connection CreationDC0082 | WinEventLog:Sysmon | EventCode=3, 22 |
Tunable fields
MITRE calls these the analytic’s mutable elements: the thresholds and filters you set for your own environment.
| Field | What you tune |
|---|---|
| TimeWindow | Correlation window tying app launch, file tampering, child process, and network events (5–10 minutes typical). |
| UserContext | Flag admin/service accounts versus standard users executing Electron apps. |
| AllowedElectronApps | Baseline of Electron-based executables expected in the enterprise. |
| AllowedChildProcesses | Whitelist normal child processes (chrome.exe → crashpad_handler.exe) versus anomalies (powershell.exe). |
| ElectronAppDomainAllowlist | Approved service domains for Teams, Slack, etc. to suppress benign traffic. |
| AsarIntegrityHash | Expected hash/signature of app.asar resources to detect tampering. |
AN0072 · Linux
Abuse of Linux Electron binaries by modifying app.asar or config JS files and spawning unexpected child processes (bash, curl, python).
Log sources
The data this analytic draws on. You do not need every component — each one you already collect covers part of it. Each links to its ATT&CK record.
| Data component | Name | Channel |
|---|---|---|
| Process CreationDC0032 | auditd:SYSCALL | execve: Electron-based binary spawning shell or script interpreter |
| File CreationDC0039 | WinEventLog:Sysmon | EventCode=11 |
Tunable fields
MITRE calls these the analytic’s mutable elements: the thresholds and filters you set for your own environment.
| Field | What you tune |
|---|---|
| AsarIntegrityCheck | Baseline of expected asar package signatures per app. |
| SuspiciousChildProcesses | Flag shells/python spawned from Electron parent. |
AN0073 · macOS
Abuse of macOS Electron apps by modifying app.asar bundles and spawning child processes (osascript, curl, sh) from Electron executables.
Log sources
The data this analytic draws on. You do not need every component — each one you already collect covers part of it. Each links to its ATT&CK record.
| Data component | Name | Channel |
|---|---|---|
| Process CreationDC0032 | macos:unifiedlog | Electron app spawning unexpected child process |
| File CreationDC0039 | macos:osquery | CREATE/MODIFY: Modification of app.asar inside .app bundle |
Tunable fields
MITRE calls these the analytic’s mutable elements: the thresholds and filters you set for your own environment.
| Field | What you tune |
|---|---|
| AllowedAppBundlePaths | Baseline of legitimate Electron app paths under /Applications. |
| SignedToUnsignedTransition | Alert when signed Electron parent spawns unsigned child. |
Remove or deny access to unnecessary and potentially vulnerable software and features to prevent abuse by adversaries. Many native binaries may not be necessary within a given environment: for example, consider disabling the Node.js integration in all renderers that display remote content to protect users by limiting adversaries’ power to plant malicious JavaScript within Electron applications.
Where possible, enforce binary and application integrity with digital signature verification to prevent untrusted code from executing. For example, do not use shell.openExternal with untrusted content.
Where possible, set nodeIntegration to false, which disables access to the Node.js function. By disabling access to the Node.js function, this may limit the ability to execute malicious commands by injecting JavaScript code.
Do not disable webSecurity, which may allow for users of the application to invoke malicious content from online sources.
Microsoft's Enhanced Mitigation Experience Toolkit (EMET) Attack Surface Reduction (ASR) feature can be used to block methods of using trusted binaries to bypass application control. Ensure that Electron is updated to the latest version and critical vulnerabilities (such as nodeIntegration bypasses) are patched and cannot be exploited.