Adversaries may abuse software extensions to establish persistent access to victim systems. Software extensions are modular components that enhance or customize the functionality of software applications, including web browsers, Integrated Development Environments (IDEs), and other platforms.[1][2] Extensions are typically installed via official marketplaces, app stores, or manually loaded by users, and they often inherit the permissions and access levels of the host application.
Malicious extensions can be introduced through various methods, including social engineering, compromised marketplaces, or direct installation by users or by adversaries who have already gained access to a system. Malicious extensions can be named similarly or identically to benign extensions in marketplaces. Security mechanisms in extension marketplaces may be insufficient to detect malicious components, allowing adversaries to bypass automated scanners or exploit trust established during the installation process. Adversaries may also abuse benign extensions to achieve their objectives, such as using legitimate functionality to tunnel data or bypass security controls.
The modular nature of extensions and their integration with host applications make them an attractive target for adversaries seeking to exploit trusted software ecosystems. Detection can be challenging due to the inherent trust placed in extensions during installation and their ability to blend into normal application workflows.
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.
Detection of Malicious or Unauthorized Software Extensions
Enterprise
3 platforms
AN0251 · Windows
Installation or execution of a malicious browser or IDE extension, followed by abnormal registry entries or outbound network connections from the host application
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.
Suspicious outbound traffic from browser binary to non-standard domains
Tunable fields
MITRE calls these the analytic’s mutable elements: the thresholds and filters you set for your own environment.
Field
What you tune
PlistPath
Directory path for user-specific extension configuration files
CommandLine
Usage of profiles CLI tool—can be modified by legitimate tools or MDMs
TimeWindow
Correlation window between configuration install and observable extension behavior
AN0253 · Linux
Manual or script-based installation of extension-like modules into browser config directories or IDE plugin paths, followed by suspicious network activity
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.
Turn on Chrome/Chromium developer mode and Load Extension found in the src directory
Run it with these steps
1. Navigate to [chrome://extensions](chrome://extensions) and
tick 'Developer Mode'.
2. Click 'Load unpacked extension...' and navigate to
[Browser_Extension](../t1176/src/)
3. Click 'Select'
GUID3ecd790d-2617-4abf-9a8c-4e8d47da9ee1
02
Firefox
linux, windows, macos
manual
—
—
—
Create a file called test.wma, with the duration of 30 seconds
Run it with these steps
1. Navigate to [about:debugging](about:debugging) and
click "Load Temporary Add-on"
2. Navigate to [manifest.json](./src/manifest.json)
3. Then click 'Open'
GUIDcb790029-17e6-4c43-b96f-002ce5f10938
03
Edge Chromium Addon - VPN
windows, macos
manual
—
—
—
Adversaries may use VPN extensions in an attempt to hide traffic sent from a compromised host. This will install one (of many) available VPNS in the Edge add-on store.
Run it with these steps
1. Navigate to https://microsoftedge.microsoft.com/addons/detail/fjnehcbecaggobjholekjijaaekbnlgj
in Edge Chromium
2. Click 'Get'
GUID3d456e2b-a7db-4af8-b5b3-720e7c4d9da5
04
Google Chrome Load Unpacked Extension With Command Line
windows
powershell
Required
—
Yes
This test loads an unpacked extension in Google Chrome with the --load-extension parameter. This technique was previously used by the Grandoreiro malware to load a malicious extension that would capture the browsing history, steal cookies and other user information. Other malwares also leverage this technique to hijack searches, steal passwords, inject ads, and more.
References:
https://attack.mitre.org/techniques/T1176/
https://securityintelligence.com/posts/grandoreiro-malware-now-targeting-banks-in-spain/
Inputs
Name
Description
Type
Default Value
working_dir
Working directory where the files will be downloaded and extracted
string
$env:TEMP
Attack Commandsrun with powershellelevation required (root or admin)