This site has been deprecated in favor of and will remain in place until 11/1/22.

Brute Force I/O

From attackics
Revision as of 09:20, 21 October 2021 by Oalexander (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

To visit this technique’s new page please go to and update your links to

Brute Force I/O
ID T0806
Tactic Impair Process Control
Data Sources Network Traffic: Network Traffic Content, Application Log: Application Log Content, Operational Databases: Process History/Live Data
Asset Control Server, Field Controller/RTU/PLC/IED


Adversaries may repetitively or successively change I/O point values to perform an action. Brute Force I/O may be achieved by changing either a range of I/O point values or a single point value repeatedly to manipulate a process function. The adversary’s goal and the information they have about the target environment will influence which of the options they choose. In the case of brute forcing a range of point values, the adversary may be able to achieve an impact without targeting a specific point. In the case where a single point is targeted, the adversary may be able to generate instability on the process function associated with that particular point.

Adversaries may use Brute Force I/O to cause failures within various industrial processes. These failures could be the result of wear on equipment or damage to downstream equipment.

Procedure Examples

  • The Industroyer IEC 104 module has 3 modes available to perform its attack. These modes are range, shift, and sequence. The range mode operates in 2 stages. The first stage of range mode gathers Information Object Addresses (IOA) and sends "select and execute" packets to switch the state. The second stage of range mode has an infinite loop where it will switch the state of all of the previously discovered IOAs. Shift mode is similar to range mode, but instead of staying within the same range, it will add a shift value to the default range values.1


  • Network Allowlists - Utilize network allowlists to restrict unnecessary connections to network devices (e.g., comm servers, serial to ethernet converters) and services, especially in cases when devices have limits on the number of simultaneous sessions they support.
  • Network Segmentation - Segment operational assets and their management devices based on their functional role within the process. Enabling more strict isolation to more critical control and operational information within the control environment.2345
  • Filter Network Traffic - Allow/denylists can be used to block access when excessive I/O connections are detected from a system or device during a specified time period.