It looks like Sentinel One and CrowdStrike both identified this right away.
Does anyone know if Windows Defender for Endpoints or MalwareBytes did as well?
Asking for a friend who's parent organization is pushing businesses from the former to the later.
**What You Should Do**
Mitigation actions:
* You should disable automatic updates for 3CXDesktopApp. [More info on that here.](https://www.3cx.com/blog/news/desktopapp-security-alert/)
* ReliaQuest customers should block the domains provided within the Threat Advisory issued within GreyMatter Intel.
* 3CX [strongly recommends](https://www.3cx.com/community/threads/3cx-desktopapp-security-alert.119951/#post-558907) that customers use the PWA client in the interim, while the company works on an update to the desktop client.
* Conduct retrospective hunts using current IOCs. The timeline on how far back to go will likely be determined from further information provided by 3CX, on the known incident timeline.
* Contact key suppliers and ask them if they use the software, determine their level of risk posed by this incident, and what their plan is going forward.
**Lazarus Group is known to target Financial Services, blockchain companies, and government defense entities, so organizations in these areas need to act with a sense of urgency in responding to this intrusion.**
Will be sharing updates [here](https://www.reliaquest.com/blog/3cx-trojan-attack/).
Should ffmpeg devs be concerned with this? If they used an exploit in ffmpeg does that mean anyone using their libraries could be affected? Or am I reading this wrong?
From our Threat Research Team, follow for live updates: [https://www.reliaquest.com/blog/3cx-trojan-attack/](https://www.reliaquest.com/blog/3cx-trojan-attack/)
## What Happened?
On March 29, 2023, security researchers reported malicious activity originating from a legitimate, signed version of the 3CX Desktop Client. The activity included beaconing to threat-actor–controlled infrastructure, second-stage payload deployment, and, in some instances, hands-on-keyboard activity.
3CX is an international voice over IP (VoIP) IPBX software developer. The 3CX Phone System can be deployed on Windows, Linux, or MacOS systems; as mobile versions for Android or iOS; as a Chrome extension; or as a Progressive Web App (PWA) browser-based version of the client. 3CX customers can use the 3CX Desktop Client to make calls, schedule video conferences, or send messages.
The malicious activity has been attributed to the “[Lazarus Group](https://www.reliaquest.com/blog/five-years-after-the-wannacry-dumpster-fire-ransomware-remains-a-global-threat/?&),” a North Korean nation-state threat group. The group is reportedly using the trojanized 3CX Desktop Client in an ongoing supply-chain attack campaign dubbed SmoothOperator. A SmoothOperator attack begins when **a compromised version of the desktop client** is downloaded from 3CX’s website, or when an update is pushed to an existing desktop application.
Next, the malware downloads icon files hosted on a dedicated GitHub repository; these files have Base64-encoded data appended at the end of the filename. The first icon within this repository was reportedly uploaded as early as December 7, 2022. The first-stage malware uses these Base64 encoded strings to download the second-stage payload—a previously unknown infostealer—onto compromised machines. The infostealer can harvest system information and exfiltrate data and stored credentials from several browsers, including Chrome, Microsoft Edge, and Mozilla Firefox.
3CX customers have allegedly reported that their security software flagged the 3CX Desktop Client as malicious after installing any of the following versions:
* Windows version 18.12.407
* Windows version 18.12.416
* MacOS version 18.11.1213
The following Electron Mac App versions are also impacted:
* 18.11.1213
* 18.12.402
* 18.12.407
* 18.12.416
**About Lazarus Group:**
**Lazarus Group has primarily targeted the United States and South Korea, focusing on the financial services, government, and technology sectors. The group uses custom malware, including remote-access trojans, keyloggers, downloaders, and destructive wipers.**
**The group pursues several objectives, including acquiring military and political intelligence, and causing disruption and destruction. The US Department of the Treasury’s Office of Foreign Assets Control sanctioned Lazarus Group in September 2019 for its “malicious cyber activity on critical infrastructure.”**
## What We Don’t Know
On March 30, 2023, at 01:27 a.m. ET, 3CX CEO Nick Galea [confirmed on the company’s forum](https://www.3cx.com/community/threads/crowdstrike-endpoint-security-detection-re-3cx-desktop-app.119934/page-2#post-558898) that 3CX was compromised via a breached upstream library. In the same forum post, Galea advised users to uninstall the 3CX Desktop Client, promising that a new version will allegedly be available in the “next few hours.” [A further update has been provided by 3CX](https://www.3cx.com/blog/news/desktopapp-security-alert/). This does not specify how the attack started. There are no available patches or updates to correct the issue at this time.
## Why You Should Care
The compromised application is now being actively used to target 3CX customers, although no victims have been publicly identified yet. 3CX has more than 600,000 customers globally, and more than 12 million users every day. The compromise of 3CXDesktopApp has the potential to escalate into a large-scale supply-chain attack. Previous supply-chain compromises have shown that such attacks cause significant and long-lasting operational disruptions and losses.
### 2020 SolarWinds Attack
In 2020, advanced persistent threat actors [breached SolarWinds](https://www.reliaquest.com/wp-content/uploads/Threat-Advisory-Report-2020-12-13-SolarWinds-Compromise.pdf?), a software provider for IT monitoring tools, inserting malicious code into the company’s product. The perpetrators gained initial access when SolarWinds’ customers unsuspectingly downloaded installation packages; the code created a backdoor through which the attackers exfiltrated sensitive information. Up to 18,000 of SolarWinds’ customers downloaded the trojanized software update, including US government agencies, Microsoft, and Cisco.
## What You Should Do
Mitigation actions:
* You should disable automatic updates for 3CXDesktopApp. [More info on that here.](https://www.3cx.com/blog/news/desktopapp-security-alert/)
* ReliaQuest customers should block the domains provided within the Threat Advisory issued within GreyMatter Intel.
* 3CX [strongly recommends](https://www.3cx.com/community/threads/3cx-desktopapp-security-alert.119951/#post-558907) that customers use the PWA client in the interim, while the company works on an update to the desktop client.
* Conduct retrospective hunts using current IOCs. The timeline on how far back to go will likely be determined from further information provided by 3CX, on the known incident timeline.
* Contact key suppliers and ask them if they use the software, determine their level of risk posed by this incident, and what their plan is going forward.
Lazarus Group is known to target Financial Services, blockchain companies, and government defense entities, so organizations in these areas need to act with a sense of urgency in responding to this intrusion.
Some additional and developing info from our Threat Research Team. [https://www.reliaquest.com/blog/3cx-trojan-attack/](https://www.reliaquest.com/blog/3cx-trojan-attack/)
For those using Microsoft tools, here is a KQL query to detect beaconing domains:
```
let IOC = dynamic(\["[akamaicontainer.com](https://akamaicontainer.com)","[akamaitechcloudservices.com](https://akamaitechcloudservices.com)","[azuredeploystore.com](https://azuredeploystore.com)","[azureonlinecloud.com](https://azureonlinecloud.com)","[azureonlinestorage.com](https://azureonlinestorage.com)","[dunamistrd.com](https://dunamistrd.com)","[glcloudservice.com](https://glcloudservice.com)","[journalide.org](https://journalide.org)","[msedgepackageinfo.com](https://msedgepackageinfo.com)","[msstorageazure.com](https://msstorageazure.com)","[msstorageboxes.com](https://msstorageboxes.com)","[officeaddons.com](https://officeaddons.com)","[officestoragebox.com](https://officestoragebox.com)","[pbxcloudeservices.com](https://pbxcloudeservices.com)","[pbxphonenetwork.com](https://pbxphonenetwork.com)","[pbxsources.com](https://pbxsources.com)","[qwepoi123098.com](https://qwepoi123098.com)","[sbmsa.wiki](https://sbmsa.wiki)","[sourceslabs.com](https://sourceslabs.com)", "[visualstudiofactory.com](https://visualstudiofactory.com)","[zacharryblogs.com](https://zacharryblogs.com)"\]);
DnsEvents
| where Name in (IOC)
```
>let IOC = dynamic(\["akamaicontainer.com","akamaitechcloudservices.com","azuredeploystore.com","azureonlinecloud.com","azureonlinestorage.com","dunamistrd.com","glcloudservice.com","journalide.org","msedgepackageinfo.com","msstorageazure.com","msstorageboxes.com","officeaddons.com","officestoragebox.com","pbxcloudeservices.com","pbxphonenetwork.com","pbxsources.com","qwepoi123098.com","sbmsa.wiki","sourceslabs.com", "visualstudiofactory.com","zacharryblogs.com"\]);
DnsEvents
| where Name in\~ (IOC)
Is this for Defender ATP hunting? If so, it doesn't seem to work for me, getting Semantic error
No, that is for Sentinel. ATP does not have a DNS Events table. This should work:
```
let IOC = dynamic(["akamaicontainer.com","akamaitechcloudservices.com","azuredeploystore.com","azureonlinecloud.com","azureonlinestorage.com","dunamistrd.com","glcloudservice.com","journalide.org","msedgepackageinfo.com","msstorageazure.com","msstorageboxes.com","officeaddons.com","officestoragebox.com","pbxcloudeservices.com","pbxphonenetwork.com","pbxsources.com","qwepoi123098.com","sbmsa.wiki","sourceslabs.com", "visualstudiofactory.com","zacharryblogs.com"]);
DeviceNetworkEvents
| where RemoteUrl in~ (IOC)
```
Note that ATP may not receive the URL, DNS logs are much better for hunting. I have updated by Github with this: https://github.com/melatonein5/3CXBeacoingKQLQuery/blob/main/README.md
Yep, this is bad.
I’m glad I actually don’t have my onprem 3CX install set to auto update, as we’re on an older version from before the supply chain attack started.
Have still removed the 3CX desktop app from all endpoints and haven’t seen any IOC yet, so looks like for once my laziness may have saved our bacon….
For those using Microsoft tools, here is a KQL query to detect beaconing domains:
```
let IOC = dynamic(\["[akamaicontainer.com](https://akamaicontainer.com)","[akamaitechcloudservices.com](https://akamaitechcloudservices.com)","[azuredeploystore.com](https://azuredeploystore.com)","[azureonlinecloud.com](https://azureonlinecloud.com)","[azureonlinestorage.com](https://azureonlinestorage.com)","[dunamistrd.com](https://dunamistrd.com)","[glcloudservice.com](https://glcloudservice.com)","[journalide.org](https://journalide.org)","[msedgepackageinfo.com](https://msedgepackageinfo.com)","[msstorageazure.com](https://msstorageazure.com)","[msstorageboxes.com](https://msstorageboxes.com)","[officeaddons.com](https://officeaddons.com)","[officestoragebox.com](https://officestoragebox.com)","[pbxcloudeservices.com](https://pbxcloudeservices.com)","[pbxphonenetwork.com](https://pbxphonenetwork.com)","[pbxsources.com](https://pbxsources.com)","[qwepoi123098.com](https://qwepoi123098.com)","[sbmsa.wiki](https://sbmsa.wiki)","[sourceslabs.com](https://sourceslabs.com)", "[visualstudiofactory.com](https://visualstudiofactory.com)","[zacharryblogs.com](https://zacharryblogs.com)"\]);
DnsEvents
| where Name in (IOC)
```
Looks like it, latest info as of about an hour ago is its suspected to be Lazurus Group behind it which is the North Koren Government group that did WannaCry and the Sony hack.
The executable was signed on March 4th too so they were in there longer then last week with 3CX apparently having no idea based on their current responses.
They looked like they were going to snipe login session tokens it looks like as one of the payloads interrogated web browser profiles and sent that info in plain text back to the C2. Possibly to exfiltrate the tokens at a later date
Is it installed within the user context?
I deployed a powershell script that kills the process.
Afterwards it removes the folders from appdata.
The application itself was blocked on our environment by a policy set in in our FortiERD.
3CX were also notified of this last week but didn't take it seriously basically despite being told by multiple top tier APT vendors they acted like it was Norton saying it and told people asking about it it was a false positive and to contact their AV vendors to report it as such which I guess is why Crowdstrike showed all their work and other big names like Huntress came in and went "Yup, you guys are compromised"
As of about an hour ago their support is at least saying "We are aware and we will provide an update when we can"
> From what we have seen two vectors:
>
> Downloading the .msi installer from the official website - gives you a malicious copy.
>
> v18 clients that update - this also brings down a malicious copy.
💀💀💀💀
I forgot to mention this when I started my shift today, but it's made for a busy day lol, seen alot of people over on 3cx community allow list it saying it was fp, chain supply attacks are a thing.
35 Comments
vppencilsharpening@reddit
d14n4@reddit
CptChronotis@reddit
reliaquest_official@reddit
JohnMaddenSysadmin@reddit
kushari@reddit
reliaquest_official@reddit
reliaquest_official@reddit
melatone1n@reddit
MiniMica202020@reddit
melatone1n@reddit
damoesp@reddit
bacon_sandwich95@reddit
melatone1n@reddit
mitchy93@reddit
vppencilsharpening@reddit
1creeperbomb@reddit
mitchy93@reddit
mdneilson@reddit
TrueStoriesIpromise@reddit
scoldog@reddit
HashtagSecurity@reddit
mitchy93@reddit
Reasonable-You-3595@reddit
Freel33@reddit
HellStorm666@reddit
scara1701@reddit
frobnox@reddit
Remote_Process8745@reddit
HashtagSecurity@reddit
xxbiohazrdxx@reddit
r5a@reddit
Maleficent-Garage395@reddit
BifronsOnline@reddit
JzJad12@reddit