Security Experts:

Flaw in Popular Framework Exposes Many ICS Devices to Attacks

Hundreds of thousands of Industrial Internet of Things (IIoT) and industrial control systems (ICS) products could be exposed to hacker attacks due to critical vulnerabilities affecting a widely used piece of software from Germany-based 3S-Smart Software Solutions.

The flaws affect the CODESYS automation software for developing and engineering controller applications, specifically the Web Server component of the CODESYS WebVisu visualization software. The issues have been fixed by 3S-Smart Software Solutions, but experts believe it will take some time until the patch reaches all vulnerable devices.

The security holes, discovered by researchers at industrial cybersecurity startup CyberX, affect CODESYS Web Server 2.3 and prior, and they have been addressed with patch version 1.1.9.18. ICS-CERT has published an advisory describing the flaws.

One of the vulnerabilities, tracked as CVE-2017-6027, allows an attacker to upload arbitrary files to the CODESYS Web Server by sending a specially crafted request. Exploitation of the flaw can lead to arbitrary code execution.

The second vulnerability, identified as CVE-2017-6025, is a stack-based buffer overflow that exists because the size of strings sent to functions that handle the XML are not properly checked before they are copied to memory. An attacker can exploit this weakness to crash the application or execute arbitrary code.

Learn More at SecurityWeek's 2017 Singapore ICS Cyber Security Conference

According to CyberX, there are several possible exploitation scenarios. For example, an attacker can use a search engine such as Shodan to identify vulnerable devices that are directly connected to the Internet, and then remotely exploit the vulnerabilities.

Another scenario described by the security firm involves a malicious actor delivering a piece of malware that exploits the vulnerabilities via a USB drive. A remote attacker can also compromise the targeted organization’s IT network and from there move onto the OT network, where they would have access to vulnerable devices.

“Attackers could exploit the vulnerabilities to install back-doors in order to perform industrial cyberespionage, deploy ransomware, and execute cyber-sabotage operations to disrupt production or cause catastrophic safety failures and environmental damage,” researchers warned in a blog post.

CODESYS software is used in hundreds of PLCs and other products from companies worldwide. According to the vendor, more than a million devices that use CODESYS software are sold every year and, as of mid-2016, over half of the products listed in the company’s device directory had been using the vulnerable component.

CyberX said CODESYS was quick to develop a patch, which the security firm has tested and validated. However, vulnerabilities in third-party components can be problematic as it can take a lot of time until patches reach end-users.

“Each device manufacturer must first apply the CODESYS patch to their own code, then recompile the firmware, and then send a firmware update to their end-users. The CODESYS patch can’t be installed by end-user organizations,” CyberX explained. “Most devices require firmware to be ‘reflashed,’ which is a lengthier and more complicated process than standard software updates on your phone or PC.”

This is not the first time a vulnerability affecting a third-party component has exposed devices from numerous vendors. Back in 2015, researchers disclosed a serious flaw in a CodeWrights library used by many manufacturing and technology companies for HART-based field devices.

Related: Learn More at SecurityWeek's 2017 Singapore ICS Cyber Security Conference

Related: Flaw in Schneider Industrial Firewalls Allows Remote Code Execution

Related: Flaws in Rockwell PLCs Expose Operational Networks

view counter
Eduard Kovacs is an international correspondent for SecurityWeek. He worked as a high school IT teacher for two years before starting a career in journalism as Softpedia’s security news reporter. Eduard holds a bachelor’s degree in industrial informatics and a master’s degree in computer techniques applied in electrical engineering.