Significant cyber incident

MuddyWater campaign against Turkish government entities

Cisco Talos described a MuddyWater campaign, active as recently as November 2021, against Turkish government bodies including TÜBİTAK.

In short

Cisco Talos described a MuddyWater campaign, active as recently as November 2021, against Turkish government bodies including TÜBİTAK. PDFs with links led to Excel macro files and executables. The US Treasury later described a campaign against Turkish government entities from the same period. Neither source reports losses.

What happened

Cisco Talos published its analysis on 31 January 2022. It describes a campaign that ran as recently as November 2021 and that Talos attributes with high confidence to the MuddyWater group profile. Targets were Turkish government entities, including the Scientific and Technological Research Council of Turkey (TÜBİTAK).

Victims met the chain as a PDF with an embedded link. Talos does not describe the emails, but judges from earlier MuddyWater campaigns that spear-phishing was highly likely the route. The PDF showed an error message and asked the reader to click to fix the document format. At least two PDFs shared the author name “nejla” in their metadata.

The link led to an Excel file or a Windows executable, stored on snapfile[.]org. The Excel files had Turkish names, and some posed as documents from the Turkish Health and Interior Ministries. One was called Teklif_form_onaylı.xls, which means “Offer form approved”.

Talos saw a similar chain against a telecom provider in Armenia in June 2021 and against Pakistani entities in August 2021. It could not say whether the Turkish activity continues the Pakistan work. Server addresses used by the campaign also appeared in a Turkish threat advisory from September 2021. Trakya University and the national response center USOM shared it, and it warned of an APT-level email attack.

US documents cover the same period. Advisory AA22-055A, from 24 February 2022, describes MuddyWater’s methods in general and does not name Turkey. On 9 September 2022 the US Treasury said MuddyWater was assessed to be involved, as recently as November 2021, in a campaign against Turkish government entities. It said malware-laden documents, likely sent by spear-phishing email, were used to gain access to victims’ systems.

Timeline

  1. 2017 to 2018

    Group active. Talos says MuddyWater has been active since at least 2017, and the US Treasury says it has run broad campaigns since about 2018.

  2. June 2021

    Armenia telecom lure. Talos sees a similar executable chain aimed at a telecom provider in Armenia.

  3. August 2021

    Pakistan targeting. The PowerShell downloader chain appears against Pakistani entities.

  4. September 2021

    Turkish advisory and new tracking. Trakya University and USOM warn of an APT email attack that lists server addresses later seen by Talos. Talos judges it highly likely that the group moved its infection tracking to Canarytokens.

  5. November 2021

    Campaign against Turkish government entities. Talos observes it, including TÜBİTAK as a target. The US Treasury later dates its assessment to the same month.

  6. 31 January 2022

    Talos publishes. Cisco Talos releases its analysis with indicators and Snort rules.

  7. 24 February 2022

    Joint advisory AA22-055A. The FBI, CISA, US Cyber Command and the UK NCSC publish MuddyWater tools, techniques and mitigations.

  8. 9 September 2022

    Treasury sanctions announcement. The US Treasury describes the Turkish campaign in its release on the Ministry of Intelligence and Security.

How the attack worked

Delivery chain seen by Talos

  1. A PDF with an embedded link reaches the target. It shows a fake error and asks the user to click to fix the file format.
  2. The link downloads a second stage from snapfile[.]org or a similar sharing site. It is either an Excel file with macros or a Windows executable.
  3. In the Excel path, the macro creates a Registry Run key, a Visual Basic script and a PowerShell downloader. The script then starts the downloader.
  4. In the executable path, the file saves a decoy document in the temp folder and opens it. It then drops two dot-prefixed PowerShell scripts, named .CloudCache.conf and .CloudDrive.conf, in a folder in the user's home directory, and sets a Run key (in Talos's example, CloudDrive).
  5. The downloader fetches the next PowerShell stage from a hardcoded server address. Talos could not obtain that final stage.

Details that help detection

  • Persistence is an HKCU Run key. It starts the script through built-in Windows files: pcwutl.dll for the VBScript, or SyncAppvPublishingServer.vbs for PowerShell.
  • Early Excel files held plain PowerShell in the comments field and metadata. Later versions obfuscate it.
  • The macro sends two requests to canarytokens[.]com. Talos says this tells the operator the file was opened. It may also be an anti-sandbox check, because the payload server may release the payload only after receiving both almost simultaneously.
  • The downloader tries twice with a 40-second timeout and a custom user agent that can carry the user name.

Tools named in AA22-055A

The advisory describes MuddyWater in general. It names PowGoop, Small Sieve, Canopy, Mori and POWERSTATS, and the exploited flaws CVE-2020-1472 (Netlogon) and CVE-2020-0688 (Exchange). Talos does not tie these tools to the Turkish campaign. It describes VBA, VBS and PowerShell downloaders instead.

ATT&CK techniques

Talos gives no technique IDs. The mapping below is ours: each ID is one that AA22-055A Table 1 (ATT&CK v10) also lists for MuddyWater, matched to what Talos observed.

Two behaviors Talos describes are not in the advisory table. Running PowerShell through SyncAppvPublishingServer.vbs is, in our mapping, T1216.002. The canary token timing checks may be sandbox evasion (T1497), but Talos only says they may be.

Impact

Talos names TÜBİTAK among the targets. It does not say that any target was breached, and it reports no stolen data or counts. Talos could not obtain the final payload, so what the operators did after the first foothold is not public.

The Treasury release names no Turkish body and reports no losses. Both sources show intent and method. Neither shows damage.

Government and regulator response

Talos published indicators of compromise: about 30 file hashes, command server addresses, download URLs, canary token identifiers and sender addresses. It also listed Snort rule IDs 58929 to 58938 and OSquery hunts, and thanked Canary Tools for its help in listing the tokens the group had created.

The September 2021 Turkish advisory listed server addresses that the campaign also used, so it could have served as an earlier warning. The US response came later. Advisory AA22-055A gave detection and mitigation steps on 24 February 2022, and on 9 September 2022 Treasury sanctioned the Ministry of Intelligence and Security and its minister. Neither source quotes a Turkish authority on the November 2021 campaign itself.

Lessons

  1. The PDF is the first step, not the payload

    The PDFs typically showed a fake error and a link. A filter that checks macros alone misses this stage, so watch the download that follows.

  2. Local-language lures raise the odds

    Turkish file names, ministry-themed decoys and an "offer form" gave the files a business context for Turkish readers.

  3. The tradecraft keeps changing

    Talos saw plain PowerShell turn into obfuscated code, and, Talos says it is highly likely, a tracking server give way to a public canary service in September 2021. Indicators age fast, so also hunt for behavior.

  4. Sources agree on the period, not on detail

    Talos and the Treasury both date the activity to November 2021 against Turkish government bodies. Only Talos gives the chain and tools, so use it for detection.

What to check in your own organization

  1. Hunt for the persistence traces

    Look for HKCU Run values that start SyncAppvPublishingServer.vbs or pcwutl.dll, and dot-prefixed .conf PowerShell files such as .CloudCache.conf and .CloudDrive.conf in user profile folders.

  2. Search network logs for the known hosts

    Check proxy and DNS logs for snapfile[.]org downloads and for canarytokens[.]com requests from Office processes. Compare against the Talos indicator list and Snort rule IDs 58929 to 58938.

  3. Block risky downloads and use application control

    Do not let users run executables or macro-enabled Excel files fetched from file-sharing sites. The joint advisory lists application control as a mitigation.

  4. Patch known exploited flaws first

    The advisory asks for urgent patching, prioritizing the CISA Known Exploited Vulnerabilities catalog, and names CVE-2020-1472 and CVE-2020-0688.

  5. Turn on multi-factor authentication and limit admin rights

    The advisory asks for multi-factor authentication on webmail, VPNs and critical accounts, and for fewer administrator rights.

  6. Train staff on PDF lures

    Show staff the fake error page that asks them to click to fix a file format. The advisory lists phishing training and external email banners.

Questions

What did Cisco Talos find about MuddyWater and Turkey?

On 31 January 2022 Talos described a campaign, active as recently as November 2021, against Turkish government entities including TÜBİTAK. PDFs with links led to Excel macro files or executables that installed PowerShell downloaders. Talos attributes it to MuddyWater with high confidence.

What did the US Treasury say?

On 9 September 2022 the Treasury said MuddyWater was assessed to be involved, as recently as November 2021, in a campaign against Turkish government entities. It said malware-laden documents were likely sent by spear-phishing email. It named no Turkish body.

Who is MuddyWater?

The joint advisory AA22-055A and the Treasury describe MuddyWater as a subordinate element within Iran's Ministry of Intelligence and Security. Talos says the group has been active since at least 2017.

Which ATT&CK techniques apply?

AA22-055A lists the group's techniques, and several match what Talos saw. They are T1566 phishing, T1204 user execution, T1059.001 and T1059.005 scripting, T1547.001 Run keys, T1027 obfuscation and T1105 tool transfer. The mapping to this campaign is Brandefense's, not Talos's.

How can defenders look for it?

Search for Run keys that start SyncAppvPublishingServer.vbs or pcwutl.dll, dot-prefixed .conf PowerShell files, downloads from snapfile[.]org and requests to canarytokens[.]com. Talos lists indicators and Snort rule IDs 58929 to 58938.

Sources

  1. Iranian APT MuddyWater targets Turkish users via malicious PDFs, executables Cisco Talos
  2. Iranian Government-Sponsored Actors Conduct Cyber Operations Against Global Government and Commercial Networks (AA22-055A) CISA
  3. Treasury Sanctions Iranian Ministry of Intelligence and Minister for Malign Cyber Activities (9 September 2022) US Department of the Treasury
  4. MuddyWater, Group G0069 | MITRE ATT&CK MITRE ATT&CK