Executive Summary
Netskope Threat Research Labs recently detected several strains of encrypted files across several cloud instances with the infamous LockerGoga Ransomware. The Ransomware was shared among users in multiple cloud instances of Microsoft OneDrive and Box, enabling the ransomware to fan-out within the organizations.
This blog provides an overview of the LockerGoga ransomware samples we discovered, including some key differences between these new samples and the ones that were discovered earlier this year. We also reiterate the two different levels at which we can prevent the LockerGoga ransomware from spreading within an organization.
Netskope Detection
Netskope detects LockerGoga at two levels: Our threat protection engine detects the delivery vehicles and payloads, and our ransomware encrypted file detection and recovery engine detects and enables the rapid recovery of files encrypted by ransomware.
Netskope threat protection detects the samples LockerGoga Ransomware as “Win32.Trojan.Lockergoga” and the encrypted files as “Gen.Ransom.Encrypted.File.ns”. The screenshot in Figure 1 shows two files, shared via Box, that were encrypted by the LockerGoga Ransomware. The encrypted files can be automatically restored to their original, unencrypted state.
Figure 1: Ransomware detection feature by Netskope.
Overview
Initially, the LockerGoga Ransomware was archived in a zip file and shared to several cloud users. When it executes:
- The ransomware encrypts files on the user’s machine and sync folders.
- The encrypted versions of the files get synced with the cloud app, replacing the original files with the encrypted one.
LockerGoga Ransomware
LockerGoga is ransomware that came into the picture in January 2019 and appears to still be under active development. It has been used in targeted attacks against industrial and manufacturing industries. Its first high-profile target was the French engineering consulting firm Altran on 21 January 2019. It has more recently been used against the Norwegian aluminum manufacturer Norsk Hydro on 19 March 2019, forcing some of the company’s aluminum plants to switch to manual operations.
Analysis of LockerGoga Ransomware
Our analysis focuses on a zip archive containing the LockerGoga Ransomware, with the hash 48a6f9882e83c180c8b34a098fa42a0b.
The executable contained in the archive was digitally signed, as shown in Figure 2.
Figure 2: Certificate used by LockerGoga Ransomware
LockerGoga uses boost c++ library to interact with the filesystem, functions like “boost::filesystem::rename” instead of the traditional Windows APIs. This complicates the analysis, as the boost library makes heavy usage of undocumented Windows APIs internally. An excerpt of the boost library functions used is shown in Figure 3.
Figure 3: Boost libraries used by sample
The execution flow of LockerGoga Ransomware is in the flow chart as shown in Figure 4. On execution, LockerGoga “sample.exe” moves itself in “%temp%” folder. It then executes itself with command line argument -m (master process). After execution, “tgytutrc7995.exe” is a master process which creates multiple child processes with command line argument -s (slave process) and -i (interprocess communication).
Multiple processes with argument “-i SM-tgytutrc -s” are slave processes for encryption. The processes use a mutex named “MX-tgytutrc” for interprocess communication. Logoff.exe an net.exe are called to make the changes described in the next section.
Figure 4: Flow chart of LockerGoga Ransomware
Master Process of LockerGoga Ransomware
The master process logs off all current sessions and changes the password of Administrative accounts to “HuHuHUHoHo283283@dJD”. After this, multiple child processes with “-i SM-tgytutrc -s” command line argument are created. The switches stand for
- “-s” → slave process
- “-i” → interprocess communication
- “MX-tgytutrc” → Mutex to use of interprocess communication.
LockerGoga Ransomware Encryption
LockerGoga uses the Cryptopp C++ libraries to encrypt the files with AES algorithm and encrypts 30 types files with extensions as shown in Figure 5.
Figure 5: File extensions encrypted by LockerGoga Ransomware.
It lastly drops the “Readme_locked.txt” file on the desktop as shown in Figure 6.
Figure 6: Readme_locked.txt by Ransomware
Unlike the majority of traditional ransomware, LockerGoga doesn’t include a payment link. Instead, it prompts the victim to contact via email for enquiring the price of the decoder.
Evolution of LockerGoga Ransomware
In this section, we compare the samples of LockerGoga we obtained to the earlier samples used against Altran. Differences between the two versions are summarized in Table 1. The readme file name, digital certificate signer, and log file name have all changed. The new version also introduced a string “GOGOA” that is included in all of the encrypted files.
Older Version | Newer Version | |
Readme file name | README-NOW.txt | README_LOCKED.txt |
Digital certificate used | MIKL LTD | ALISA LTD |
Log File name | cl.log | .log |
Strings in Encrypted file | None | “GOGA” |
Table 1: Comparison of old and latest version of Ransomware.
Both versions of LockerGoga Ransomware use the boost and Cryptopp C++libraries that are statically linked in payload file. Command line arguments of the older version are shown in Table 2, which enable the user to specify a log file, do a dry run, encrypt a single file, and spawn a worker process for full operation.
Command line Arguments | description |
-l | Log |
-r | Dry run |
-f | Encrypt single file |
-w | Worker |
Table 2: Older Version LockerGoga
Table 3 summarizes the command line arguments for the latest version of LockerGoga. The testing-related arguments are gone, with new arguments for specifying masters and slaves, and interprocess communication channels.
Command line Arguments | description |
-m | Master |
-s | Slave |
-i | IPC |
-l | Log |
Table 3: Latest Version LockerGoga
Conclusion:
The LockerGoga ransomware has affected industrial and manufacturing industries. Its latest version shows significant changes since the beginning of the year, indicating that it is still undergoing active development and increasing in sophistication. If LockerGoga continues to undergo active development, we would expect it to gain features common to other advanced ransomware, such as worm-like ability to spread over network shares
Netskope Threat Protection detects all the known variants of LockerGoga ransomware and can prevent it from spreading through cloud apps. Additionally, Netskope’s Ransomware feature detects the encrypted files in cloud share and restores the originals.
General Recommendations
Netskope recommends the following to combat cloud malware and threats:
- Detect and remediate cloud threats using a threat-aware CASB solution like Netskope and enforce policy on usage of cloud services. Sample policies to enforce include:
- Scan all uploads from all devices to sanctioned cloud applications for malware
- Scan all downloads from unsanctioned cloud application instances for malware
- Enforce quarantine/block actions on malware to reduce user impact
- Regularly back up and turn on versioning for critical content in cloud services
- Keep systems and antivirus updated with the latest releases and patches. Microsoft has released a Security Update for MS17-010, Security Update for Microsoft Windows SMB Server (KB4013389)
- Disable functionality like SMB if it is not being used