Adversaries will always find ways to exploit even the smallest and most useful tricks or software that simplify our lives, ultimately spoiling the experience for everyone.
Browser extensions are a popular way for users to customize their browsing experience and add functionality to their browser. However, these extensions can also be exploited by adversaries to gain access to user data or inject malware onto the user's system. It is important for users to be cautious when installing extensions and to only install extensions from reputable sources. Additionally, users should regularly review and remove any extensions that they no longer use or that they do not trust.
In this discussion, we will focus on Google Chrome and explore how to generate a list of installed extensions while also examining any extensions that may be malicious.
A browser does so much that a normal browsing activity for a couple hours lights up the EDR telemetry like a Christmas tree. All the browsing activity was performed to generate test data but Chrome still managed to hit hundreds of MITRE techniques.
<aside> ❓ Where do you even start looking when it comes to investigating a suspicious event?
</aside>
Let’s assume your Firewall alerted you about certain URLs which either are confirmed to be malicious or their usage is against your IT policies. You need to round upon the offending
C:\\Windows\\Temp\\svchost.exe
- pretty easy, case solved!
During a compromise assessment, it was identified that the victim user confirmed that all they were doing was general day-to-day browsing when they were prompted to install some sort of extension and so they did.
<aside> ⚠️ We have received several alerts from our Web Proxy wherein the machine is suspected to bein contact with various URLs/Domains which are against the IT policy. The machine could be compromised and warrants a further investigation. It’s a broad scenario, but we’ll stick to the scope of our article and work our way backwards!
</aside>
There is an abundance of blogs available on the subject of browser forensics. I’ll give you a quick TL:DR
The Chrome default profile folder contains the majority of artifacts of interest.
<aside> 📂 C:\Users\<User>\AppData\Local\Google\Chrome\User Data\Default
</aside>
Whenever a new extension installation takes place, the .CRX file gets downloaded temporarily to the below location
C:\\Users\\<Name>\\AppData\\Local\\Temp\\chrome_url_fetcher_<RandomNumeric>\\extension_<Version>.crx
C:\\Users\\<Name>\\AppData\\Local\\Temp\\scoped_<RandomNumeric>\\<AppID>_<Numeric>.crx
//Live Examples
C:\\Users\\<Name>\\AppData\\Local\\Temp\\chrome_url_fetcher_8664_1564753985\\extension_1_61_4_0.crx
C:\\Users\\<Name>\\AppData\\Local\\Temp\\scoped_dir8092_1584478839\\mjnbclmflcpookeapghfhapeffmpodij_328.crx
After the extension is unpacked in the above folders, the extension finds its permanent home in the below directory: