Exploitation for Evasion
|Exploitation for Evasion|
|Data Sources||Malware reverse engineering, Detonation chamber|
|Asset||Safety Instrumented System/Protection Relay, Field Controller/RTU/PLC/IED|
Adversaries may exploit a software vulnerability to take advantage of a programming error in a program, service, or within the operating system software or kernel itself to evade detection. Vulnerabilities may exist in software that can be used to disable or circumvent security features.
Adversaries may have prior knowledge through Control Device Identification about security features implemented on control devices. These device security features will likely be targeted directly for exploitation. There are examples of firmware RAM/ROM consistency checks on control devices being targeted by adversaries to enable the installation of malicious System Firmware.
- Triton disables a firmware RAM/ROM consistency check, injects a payload (imain.bin) into the firmware memory region, and changes a jumptable entry to point to the added code 123. In Schneider Electric Triconex Tricon MP model 3008 firmware versions 10.0-10.4, system calls read directly from memory addresses within the control program area without any verification. Manipulating this data could allow adversary data to be copied anywhere within memory.45 Triconex systems include continuous means of detection including checksums for firmware and program integrity, memory and memory reference integrity, and configuration 6.
- Application Isolation and Sandboxing - Make it difficult for adversaries to advance their operation through exploitation of undiscovered or unpatched vulnerabilities by using sandboxing. Other types of virtualization and application microsegmentation may also mitigate the impact of some types of exploitation. Risks of additional exploits and weaknesses in these systems may still exist.7
- Exploit Protection - Security applications that look for behavior used during exploitation such as Windows Defender Exploit Guard (WDEG) and the Enhanced Mitigation Experience Toolkit (EMET) can be used to mitigate some exploitation behavior.8 Control flow integrity checking is another way to potentially identify and stop a software exploit from occurring.9 Many of these protections depend on the architecture and target application binary for compatibility and may not work for all software or services targeted.
- Update Software - Update software regularly by employing patch management for internal enterprise endpoints and servers.
- Threat Intelligence Program - Develop a robust cyber threat intelligence capability to determine what types and levels of threat may use software exploits and 0-days against a particular organization.
- DHS CISA. (2019, February 27). MAR-17-352-01 HatMan—Safety System Targeted Malware (Update B). Retrieved March 8, 2019.
- ICS-CERT. (2018, December 18). Advisory (ICSA-18-107-02) - Schneider Electric Triconex Tricon (Update B). Retrieved March 8, 2019.
- Schneider Electric. (2018, January 23). TRITON - Schneider Electric Analysis and Disclosure. Retrieved March 14, 2019.
- MITRE. (2018, May 04). CVE-2018-8872. Retrieved March 8, 2019.
- Common Weakness Enumeration. (2019, January 03). CWE-119: Improper Restriction of Operations within the Bounds of a Memory Buffer. Retrieved March 8, 2019.
- The Office of Nuclear Reactor Regulation. (n.d.). Triconex Topical Report 7286-545-1. Retrieved May 30, 2018.
- Dan Goodin. (2017, March). Virtual machine escape fetches $105,000 at Pwn2Own hacking contest. Retrieved September 25, 2020.
- Microsoft Security Response Center. (2017, August). Moving Beyond EMET II – Windows Defender Exploit Guard. Retrieved September 25, 2020.
- Wikipedia. (n.d.). Control-flow integrity. Retrieved September 25, 2020.