Air Force Researchers Plant Rootkit In A PLC

Rogue code and malicious activity could go undetected in many of today's programmable logic controllers

Researchers with the U.S. Air Force Institute of Technology (AFIT) have created a prototype rootkit that can sit undetected in the firmware of a programmable logic controller (PLC) device and corrupt utility and plant floor operations.

PLCs -- which run various industrial processes, from spinning centrifuges of uranium to operating amusement park rides -- traditionally have not been built with security in mind, and little, if any, technology exists to track or detect rogue code running in them.

"We wanted to demonstrate the feasibility" of malicious firmware in a PLC, says Jonathan Butts, research director for AFIT's Center for Cyberspace Research. Butts and AFIT research assistant Stephen Dunlap presented their rootkit research earlier this month at the S4x14 ICS/SCADA conference in Miami.

The researchers were able to modify the firmware for rootkits in various PLCs, but only went public with details on the Allen Bradley 1756-L61 (ControlLogix family) PLC. The Rockwell Automation firm is the only PLC vendor thus far that responded to the research with a fix: in this case, digital signature technology for the PLC to thwart rootkit infections.

Among AFIT's goals was to provide sample malware that could be used against these critical ICS/SCADA devices to further test for these types of threats and attacks. A PLC could be infected with the rootkit via a malicious firmware update, for example, or via a rigged or infected USB stick on a laptop connected to a PLC in a substation, the researchers say.

"We didn't find bugs. There were no bugs you could exploit: We just used methods to code the system up where you take advantage of and embed your own malicious software to run on top of the firmware," Butts says. An attacker could then allow the PLC to operate normally, or to do its bidding via "trigger" functions, he says.

The AFIT researchers created two payloads for the PLC rootkit that could be triggered with a time bomb in the firmware, for example, as well as with remote commands. One payload was a "soft" denial-of-service (DoS), where the attacker compromises the PLC's operations, but it can be reset to its normal state. "A fault happens, [the operators] reset the PLC, and the [attacker]" disrupts the PLC again, but in such a way that the operator is unable to diagnose that it was done maliciously, according to Dunlap. A persistent DoS "turns the PLC into a brick, and you aren't able to operate it without the manufacturer replacing it," for example, he says.

The rootkit didn't require major resources to develop, either: It took an AFIT graduate student less than four months to reverse-engineer a PLC and write the prototype rootkit, and cost about $2,000 overall to develop.

The logic bomb trigger created by the Air Force researchers impressed Dale Peterson, founder and CEO of Digital Bond, an ICS/SCADA consultancy that hosts the S4 Conference. "The tying of the logic bomb to moving the switch from 'run' to 'program' mode was very slick. The technician or engineer is likely to think the failure was due to the new PLC code he was trying to load into the PLC was the problem, at least for a while," Peterson says.

PLCs are at risk of attack because there are no tools to detect malicious code running on them today, the researchers say. "What's lacking in the security field is the capability to analyze the device that has failed," Dunlap told S4 attendees.

Vendors can help prevent PLC rootkits by adding digital signatures and trusted computing module (TPM) to their PLC products, as well as secure coding practices, the AFIT researchers say. ICS/SCADA operators can tighten up their configuration management and add deep packet inspection and situational awareness to their security arsenal.

"The final part of this three-legged stool are the integrators. They are the often forgotten part of ICS," Butts says. "They have the configuration for most of these devices for their customers" and should ensure the source of software and updates before installing the systems, he says.

A PLC attack could be perpetrated via a corrupted supply chain or a contractor. "Electric substations at some point in time get serviced by legitimate authorized people, engineers, and guess what? They are using mobile computers to service it," says Ralph Langner, founder of Langner Communications. "We are talking about small companies who are in charge of these tasks that most of the time don't have any clue of cybersecurity. So [an attacker targeting a site] could spearphish some of those employees in those companies" to get to the ultimate target, he says.

Butts says the good news is now there are test cases of firmware rootkits. "We have a test bank for malicious rootkits to test mitigation efforts," Butts says.

PLCs were also the target of abuse by another researcher at S4, Digital Bond's Stephen Hilt, who rigged a PLC with a low-cost hacking tool that can shut down a process control network with a text message. The so-called PLCpwn tool uses existing Metasploit attack modules that previously had been created by Digital Bond.

[A researcher has rigged a programmable logic controller (PLC) with a low-cost hacking tool that can shut down a process control network with a text message. See The PLC As An ICS/SCADA Hacking Tool .]

Have a comment on this story? Please click "Add Your Comment" below. If you'd like to contact Dark Reading's editors directly, send us a message.

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