Analyze FrostyGoop malware and its debated role in the 2024 Lviv heating incident. Explore technical insights, SCADASEC counterpoints, and comparisons with known ICS malware to assess its true impact and sophistication.
Content
Executive Summary
This report provides a comprehensive analysis of the FrostyGoop malware incident, examining the findings from the Dragos report and the SCADASEC response. The report highlights the discrepancies between the two perspectives and offers an independent assessment of FrostyGoop's capabilities and potential involvement in the alleged attack on Lviv's heating infrastructure. Key findings suggest that FrostyGoop may not possess the advanced characteristics typically associated with state-sponsored malware, raising questions about its true nature and impact.
Introduction to FrostyGoop
FrostyGoop is a type of malware specifically designed to target Industrial Control Systems (ICS). According to Dragos, it is the ninth known ICS-targeted malware, joining the ranks of Trisis (Triton), CrashOverride (Industroyer), BlackEnergy2, Havex, Stuxnet, Industroyer2, PipeDream, and Fuxnet. Allegedly developed by the Sandworm team, a Russian state-sponsored Advanced Persistent Threat (APT) group, FrostyGoop is believed to disrupt Operational Technology (OT) by exploiting vulnerabilities in ICS networks.
Incident Overview: The Attack on Lviv Heating Systems
In January 2024, Dragos reported a cyberattack on Lviv's heating infrastructure, allegedly carried out using the FrostyGoop malware. Dragos claimed that the attack resulted in the disruption of heating for over 600 apartment buildings in Lviv, Ukraine, during sub-zero temperatures. However, SCADASEC presented a differing account, stating that only 324 Individual Heating Units (IHUs) were affected and that the heating supply was restored within 13 hours, not the 48 hours claimed by Dragos.
Technical Analysis of FrostyGoop
Summary of the Dragos Report
The Dragos report describes FrostyGoop's capabilities, including its use of Modbus TCP communications, its programming in Golang, and its compilation for Windows systems. The malware is capable of reading and writing to ICS device registers, accepting command-line execution arguments, and using configuration files to specify target IP addresses and Modbus commands.
Independent Analysis Methodology
To verify the claims made in the Dragos report, an independent analysis was conducted using samples provided by VXunderground. The methodology included sample collection and verification, static and dynamic analysis, and reverse engineering using Ghidra, an open-source reverse engineering tool developed by the NSA.
Static and Dynamic Analysis
The analysis revealed that FrostyGoop lacks obfuscation, a technique commonly used by advanced malware to evade detection. The malware functions primarily as a generic Modbus client, capable of reading and writing analog outputs but lacking the ability to interact with digital inputs/outputs or manipulate specific ICS processes.
Reverse Engineering
Reverse engineering with Ghidra confirmed that FrostyGoop does not depend on libraries typically used in advanced malware, such as those for network attacks, encrypted communication, or exploitation frameworks. The build settings are standard, with no signs of tampering or evasion techniques.

MITRE ATT&CK Mapping and Cyber Kill Chain Analysis
Tactics and Techniques
The MITRE ATT&CK framework and the Cyber Kill Chain provide structured ways to analyze potential tactics, techniques, and procedures (TTPs) associated with the FrostyGoop malware. The analysis includes tactics such as reconnaissance, weaponization, delivery, exploitation, installation, post-exploitation, and actions on objectives.
Breakdown by Cyber Kill Chain Phases
Reconnaissance (Initial Access): Attackers likely used open ports or misconfigured devices to gain initial access.
Weaponization: No specific techniques identified, indicating a lack of sophisticated weaponization characteristics.
Delivery: Attackers might use default credentials or valid accounts to move laterally within the ICS environment.
Exploitation: The malware could alter normal operations by reading and writing to ICS device registers and sending unauthorized Modbus commands.
Installation: The malware could manipulate I/O images to mislead operators or automated systems.
Post-Exploitation (Command and Control): The malware could obstruct monitoring by downgrading firmware or corrupting data streams and seize control of commands to prevent legitimate operator interventions.
Actions on Objectives: The malware aims to disrupt services by degrading the performance of ICS systems and manipulating safety mechanisms to create hazardous situations.

Mitigations
To defend against attacks like the hypothesized FrostyGoop attack, organizations should consider the following mitigations:
Network Segmentation: Implement network segmentation to isolate critical ICS networks from other networks.
Network Monitoring: Continuously monitor network traffic for unusual patterns.
Demilitarized LAN (DLAN): Deploy small, software-defined DMZs in front of each LAN to enhance security.
Strong Access Control and MFA: Enforce strict access control measures, including multi-factor authentication (MFA).
Incident Response: Develop and maintain an Incident Response Plan (IRP) tailored to ICS environments.
SOC, SIEM, and EDR Solutions: Deploy a comprehensive suite of security tools, including a Security Operations Center (SOC), Security Information and Event Management (SIEM), and Endpoint Detection and Response (EDR).
Comparative Analysis with Known ICS Malware
Stuxnet
Stuxnet utilized multiple zero-day exploits to infect specific Siemens PLCs used in Iran's nuclear enrichment facilities. It employed a multi-stage payload, enabling it to stealthily gain access, spread across networks, reprogram controllers, and sabotage centrifuge operations.
Trisis (Triton)
Triton specifically targeted safety instrumented systems (SIS) at a petrochemical plant, aiming to cause physical damage by manipulating the safety controls designed to prevent hazardous conditions.
CrashOverride (Industroyer)
CrashOverride was designed to target electrical substations by manipulating multiple industrial communication protocols. The malware had modules specifically crafted to communicate with and control different types of ICS devices.
Key Takeaways
FrostyGoop lacks the advanced features that characterize well-known ICS malware like Stuxnet, Triton, and CrashOverride. Its basic Modbus client functionality and lack of multi-stage payloads, self-propagating mechanisms, and protocol manipulation specificity suggest a different threat profile.
Other Reports From Trout