Executive Summary

Fog ransomware is a relatively new ransomware family first discovered in June 2024. Beazley Security has assisted some targeted organizations with response and recovery, and gained some insights about this new ransomware family and their related operations. Generally, Fog cases are not as numerous or frequent as other more established ransomware families, but this may change as their operations mature. Most of the victim organizations are in the education sector with majority of them being located in the United States.

We are sharing information about this emerging variant to help organizations protect themselves against this threat. Please be aware that we may update this article with additional details as our ongoing investigation continues.


FOG ransomware was first detected in May 2024, and they had no dark web leak site in the early stages of the activity. A thorough write-up of some initial Fog infection cases was reported in a blog from Arctic Wolf. They negotiated with victims on dark web chat pages listed in the ransom notes they left. In mid July, a dark web leak site was discovered where seven victims were posted in the creation of the website.

Fog leverages compromised VPN credentials to attack vulnerable networks and gain initial access into the network. Once they get inside the network, they perform "Pass-the-hash" attacks in the network. A "Pass-the-Hash" attack occurs when an adversary intercepts a hashed user credential and leverages it to initiate a new session within the same network. Following this, the attacker may employ tools like SharpShares to facilitate the discovery and enumeration of accessible network shares. Once successful, they establish a Remote Desktop Protocol (RDP) connection to a Windows server running Hyper-V and Veeam. If they are unsuccessful with "Pass-the-hash" attacks we have observed them using credential stuffing, which allowed them to laterally move throughout the environment. Regardless of the specific lateral movement technique employed, PsExec was deployed across multiple systems, and RDP was utilized to access the targeted machines.

FOG ransomware is known for encrypting files, including virtual machine storage, and disabling security defenses such as Windows Defender prior to initiating its encryption process. The malware appends a ".fog" or ".flocked" extension to the encrypted files and virtual machine disk (VMDKs) and generates a ransom note in the form of a text file named "readme.txt." This file contains instructions for victims on how to contact the attackers through a Tor-based negotiation site to discuss ransom payments. Besides for a unique chat code that is left in the "readme.txt", reason notes that we have observed are all identical.

Fog killchain

Technical Details

The initial report on Fog from Arctic Wolf lists a few executable file hashes, and at time of writing only one was publicly available in VirusTotal. Fortunately VirusTotal also provides many ways to pivot searches, and we were able to find several more samples. Some AV vendors have detection logic that will tag samples with searchable malware names:

(ahnlab_v3:fog or microsoft:fog or gdata:fog or trendmicro_housecall:fog or trendmicro:fog or alibabacloud:fog or symantec:fog) fs:2020-01-01+

Which yielded the following samples:

Indicator (SHA1)

Filename

83f00af43df650fda2c5b4a04a7b31790a8ad4cf

locker_out.exe

c2a053a15e7cf7afd30585568051eeb3536f24b5

locker_out.dll

a2bac38aa9d57e6096c22c8bbc92104239b06c1f

locker_dogmode.bin

94444fb02fb6a9f16c5648a4841dacf591638fca

b6360765c786cee0eb28bee64709172b4e2e066449968e011390be1afd8f36c5

ec15c66e2d24d94fd9be0933cceb62d22730a218

1.exe

e55046a0cd7b630bbe9d555995d373a5cafc1cb8

<xxx>.zip

229d19be6789e109c7366a4d5c474634447fce93

<xxx>/locker.exe

efbe251e4a0392db66aafa532b5107811b85982e

25a14b8104eb50d56c46df79b0df37bf

We then decided to study these samples closer to see if there were more methodical ways to find and identify this ransomware family. To start, we noticed that the debug log system in Fog reported by Arctic Wolf isn't hidden or obfuscated and can be seen at a surface level:

Fog debug strings

This means the logging strings can be used as a reliable Yara rule. Then, from a behavioral standpoint, we studied in particular this section of code where Fog parses the command line, then loads internal configuration:

Fog config flow

We noticed that Fog will quietly exit out if no parameters are passed, but will log debug messages to a dropped file named DbgLog.sys. This means any sandbox analysis of a Fog sample (like VirusTotal provides) may not exhibit ransom behavior if no parameters are passed, but the dropping of the debug log file will work as a malware corpus search, or a threat hunt. This type of search, paired with the Yara rule mentioned above, both leveraged in VirusTotal yielded the following additional 12 Fog samples:

Indicator (SHA1)

Filename

7f846587988fe05de9153e948bc2ae9237d5c29b

locker_out.zip

2f5c99c9c45670f0a331084bce2c3a5d57e450bc

locker_out.exe

2a86cd3eb9000afb6e5bf5ba342f65e772ef6c7b

duck.exe

a088533dbe0efcc454949e5479dd26a9808b94af

<null>

2e56e74639e3d687c18212304d39c9b286930cb0

f63c17d6753abb95d876f5c02dc57ad5.virus

58ad3b6d406319f83ffdb97b458a131a3872a4ec

1.exe

567b846fddc05c9e7b3ddae0d27565f5ac365e16

lck.exe.exe

a3da84baf0d9e548f7f2f2c2a9513383e66c0b62

locker.exe

afda77a54af633e137e8d8d38655f4453c711f89

fog.exe

6c0771b2ed403ea8036543671775c895a39299fa

badfile.exe

91cdf9bf4a8f3debd3d4a310d2f2038b3b0b205a

1.exe

0dd67d2717e09d463053d7023cf3cfc8eb0cbbfd

1.dll.bk

This was more than enough samples to start studying them as a group, so we started looking for similarities and differences between all these samples. VirusTotal provides a very helpful feature where you can select a group of files and show byte patterns that are present in multiple files in your selection. After some time, we identified four byte patterns that showed up in the seven samples we were comparing. A search through the code revealed those byte patterns to be related to the part of the Fog locker code that unpacks its internal configuration settings into memory.

Fog decrypt loc

The four byte patterns that show up in this small but important section of code can function as a sort of fingerprint for identifying Fog samples, so we created a Yara rule and are using it to monitor VirusTotal submissions for new Fog samples.

Interestingly, this rule also started detecting the Fog unlockers, which at time of writing, are not tagged by AV vendors as Fog samples. Generally, if a company pays the ransom in order to get an unlocker to free their data, they will not show up in the Fog leak site. Tracking these unlockers is also useful, as it can give us a rough (but imperfect) sense of possible non-public Fog cases in the wild. Below is a list of the unlockers this search rule has found:

Indicator (SHA1)

Filename

d68abe66364a8b6c4d2af9d6ab13e74ae2e8e1cb

unlocker_out.exe

d3fc27b77eaa3ee13265e290e692044d8934458a

unlocker_out.exe

Timeline

this is a chart of the countries that got hit by FOG ransomware as of 9/16/2024

As of 10-22-2024 FOG has published 32 different companies, releasing this leak data on their blog.