Schneider Electric flaws could allow remote code execution

Schneider Electric sign with a blue sky in the background
(Image credit: Shutterstock)

Researchers have discovered a vulnerability in Schneider Electric process logic controllers (PLCs) that could enable attackers to gain complete control of the system. The components are used in industrial control system environments, such as public utilities and building controls.

The vulnerabilities, discovered by researchers at security company Armis, affect Schneider Electric's Modicon M580 and M340 controllers. They enable attackers to run remote code natively on the controllers, altering their function.

Nicknamed ModiPwn, the attacks use a vulnerability in the control protocol that interacts with the controllers. Originally, controllers used a 1970s industrial control protocol called ModBus, which had few security protections.

Schneider Electric revised this with an extended protocol called UMAS, which adds some security enhancements. One of these includes the ability for administrators to reserve a PLC so they can update it without any conflicts caused by other updates happening simultaneously.

The researchers chained several undocumented commands together in UMAS that enable attackers to write code to the PLC's memory and then trigger it.

Schneider Electric attempted to disable these commands altogether when the PLC uses an application password. However, the researchers discovered an authentication vulnerability in this reservation system that enabled them to derive the hash of the authentication password stored on the PLC.


The Forrester Wave: Top security analytics platforms

The 11 providers that matter most and how they stack up


This vulnerability, CVE-2021-22779, enables the attackers to read the password hash from the PLC's memory and use it to bypass authentication altogether.

Using this authentication bypass vulnerability, they could upload a new project file that doesn't have a password. This downgrades the device’s security, removing application password functionality and enabling the chained attack.

CVE-2021-22779 has a 9.8 CVSS score, making it critical, although attackers would need network access to implement it. There appeared to be no patch at the time of writing, but Schneider Electric's advisory mentioned several workarounds while it works on a patch, including adding firewalls and segmenting networks.

The vulnerability is another example of the security challenges facing companies that use industrial control systems with protocols on networks increasingly connected to the internet.

The Biden administration has prioritized cyber security with an initiative to shore up resilience in the electrical grid as a blueprint for a broader infrastructural security plan.

Danny Bradbury

Danny Bradbury has been a print journalist specialising in technology since 1989 and a freelance writer since 1994. He has written for national publications on both sides of the Atlantic and has won awards for his investigative cybersecurity journalism work and his arts and culture writing. 

Danny writes about many different technology issues for audiences ranging from consumers through to software developers and CIOs. He also ghostwrites articles for many C-suite business executives in the technology sector and has worked as a presenter for multiple webinars and podcasts.