Dark Reading is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them.Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Vulnerabilities / Threats

1/15/2019
10:03 PM
Connect Directly
Google+
Twitter
RSS
E-Mail
100%
0%

Hijacking a PLC Using its Own Network Features

Researcher at S4x19 to show how attackers can exploit the built-in advanced connectivity functions in some Rockwell PLCs.

S4x19 -- Miami -- Programmable logic controllers (PLCs) have been long known to be easy marks for attack due to their blatant lack of built-in security, but a security researcher here this week at S4 will demonstrate how a hacker could commandeer some PLCs via their own advanced communications features.

Roee Stark, senior software engineer with ICS/SCADA network security monitoring firm Indegy, discovered that he could use two communication functions built into Rockwell Automation's CompactLogix PLC line to wage network-borne attacks. Cybercriminals or nation-state actors could deploy these features as a way to stealthily infiltrate and control industrial processes and operations or even reach into the target's IT network infrastructure, he says.

Most PLC security research to date has focused on ways to hack into PLCs or rig them with malware, for example, to alter the industrial process or compromise the devices' ladder logic (basically the programming language used to code PLCs). Researchers have built rootkits and worms for PLCs, for example.

But Stark's PLC hacking research instead targets the connectivity of a PLC. PLCs openly allow connections to the network, he says, a design that leaves them open to network-based attacks. "It's much easier than changing the programming of a controller or making [a device] explode," he says.

The first of the two features he coupled to exploit the PLCs was the so-called complex path feature, which comes with Rockwell CompactLogix PLCs. The feature is part of the chipset of the Common Industrial Protocol (CIP), Stark says, a communication architecture for industrial networks that integrates those operations with IT-based networks and the Internet. CIP runs on EtherNet/IP, Control/Net, and other popular industrial network protocols.

Complex path lets an attacker create a CIP session between two PLCs that aren't directly connected. "So if PLC A is connected to PLC B, [which is then] connected to PLC C, you can create a connection from PLC A to C" via a path through PLC B, Stark explains. The feature allows you to forward and transfer messages from one PLC to another.

The second feature was the so-called socket object, which lets the PLC send and receive TCP or UDP traffic.

"When combining these two capabilities, we can send and receive packets from a controller we have access to and all other controllers that are connected to it – regardless of the connection type," Stark says.

An attacker with direct or remote access to the Rockwell PLC could abuse those features to collect data for reconnaissance purposes, to exfiltrate data, and to further attack the network using known security vulnerabilities, for example.

IIf an attacker can reach the PLC on the plant floor either via the local network or the Internet, he or she can then find out which communication modules are present in the controllers, and then employ the complex path feature to communicate with them, Stark explains.

Once he or she reaches the PLC, they can collect data via the socket interface using queries and running scans.

Stark doesn't know for sure whether these attacks could also work on other vendors' PLCs since he hasn't tested them. Even so, he notes, Rockwell's CompactLogix series contains more advanced communications protocols and features than most PLCs, he says. "As far as I know, these features are fairly unique to them," he says of the PLC communications features.

Indegy did not disclose the research to Rockwell since it wasn't a pure vulnerability disclosure but rather a way to abuse the controller's features, Stark says. "It's not a vulnerability because you don't bypass anything and you don't exploit any control," he says. "The programmatic flow is doing exactly what it is supposed to do" when you abuse it, he notes.

A Rockwell Automation spokesperson declined to comment on Indegy's research when contacted by Dark Reading.

Missing Links
The Rockwell PLCs actually come with a logging feature that would be useful for catching such attacks, but logging is disabled by default in the devices, Stark found. "And turning it on again would not be trivial ... you have to dig deep into the Web interface to find it." Then it would require a special CIP command to turn on logging, he explains.

Authentication would help thwart such an attack as well, but the PLCs don't include that feature, he says, and continuous network monitoring – a technology Indegy sells – could help spot any nefarious network activity using the legitimate PLC communications features in the Rockwell devices. Route whitelists also could prevent unauthorized PLC traffic.

Meanwhile, most of the focus on securing PLCs on the plant floor traditionally has been on protecting them from malicious firmware updates or from getting infected with malware. "They usually only take into account the execution flow," Stark says.

Related Content:

Kelly Jackson Higgins is the Executive Editor of Dark Reading. She is an award-winning veteran technology and business journalist with more than two decades of experience in reporting and editing for various publications, including Network Computing, Secure Enterprise ... View Full Bio

Comment  | 
Print  | 
More Insights
Comments
Oldest First  |  Newest First  |  Threaded View
Navigating Security in the Cloud
Diya Jolly, Chief Product Officer, Okta,  12/4/2019
Register for Dark Reading Newsletters
White Papers
Video
Cartoon Contest
Current Issue
Navigating the Deluge of Security Data
In this Tech Digest, Dark Reading shares the experiences of some top security practitioners as they navigate volumes of security data. We examine some examples of how enterprises can cull this data to find the clues they need.
Flash Poll
Rethinking Enterprise Data Defense
Rethinking Enterprise Data Defense
Frustrated with recurring intrusions and breaches, cybersecurity professionals are questioning some of the industrys conventional wisdom. Heres a look at what theyre thinking about.
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2019-16772
PUBLISHED: 2019-12-07
The serialize-to-js NPM package before version 3.0.1 is vulnerable to Cross-site Scripting (XSS). It does not properly mitigate against unsafe characters in serialized regular expressions. This vulnerability is not affected on Node.js environment since Node.js's implementation of RegExp.prototype.to...
CVE-2019-9464
PUBLISHED: 2019-12-06
In various functions of RecentLocationApps.java, DevicePolicyManagerService.java, and RecognitionService.java, there is an incorrect warning indicating an app accessed the user's location. This could dissolve the trust in the platform's permission system, with no additional execution privileges need...
CVE-2019-2220
PUBLISHED: 2019-12-06
In checkOperation of AppOpsService.java, there is a possible bypass of user interaction requirements due to mishandling application suspend. This could lead to local information disclosure no additional execution privileges needed. User interaction is not needed for exploitation.Product: AndroidVers...
CVE-2019-2221
PUBLISHED: 2019-12-06
In hasActivityInVisibleTask of WindowProcessController.java there?s a possible bypass of user interaction requirements due to incorrect handling of top activities in INITIALIZING state. This could lead to local escalation of privilege with no additional execution privileges needed. User interaction ...
CVE-2019-2222
PUBLISHED: 2019-12-06
n ihevcd_parse_slice_data of ihevcd_parse_slice.c, there is a possible out of bounds write due to a missing bounds check. This could lead to remote code execution with no additional execution privileges needed. User interaction is needed for exploitation.Product: AndroidVersions: Android-8.0 Android...