Pre-OS Boot: TFTP Boot

Adversaries may abuse netbooting to load an unauthorized network device operating system from a Trivial File Transfer Protocol (TFTP) server. TFTP boot (netbooting) is commonly used by network administrators to load configuration-controlled network device images from a centralized management server. Netbooting is one option in the boot sequence and can be used to centralize, manage, and control device images.

Adversaries may manipulate the configuration on the network device specifying use of a malicious TFTP server, which may be used in conjunction with Modify System Image to load a modified image on device startup or reset. The unauthorized image allows adversaries to modify device configuration, add malicious capabilities to the device, and introduce backdoors to maintain control of the network device while minimizing detection through use of a standard functionality. This technique is similar to ROMMONkit and may result in the network device running a modified image. [1]

ID: T1542.005
Sub-technique of:  T1542
Tactics: Defense Evasion, Persistence
Platforms: Network
Permissions Required: Administrator
Data Sources: File monitoring, Network device command history, Network device configuration, Network device logs, Network device run-time memory
Version: 1.0
Created: 20 October 2020
Last Modified: 22 October 2020

Mitigations

Mitigation Description
Audit

Periodically check the integrity of the running configuration and system image to ensure they have not been modified. [2] [3] [4]

Boot Integrity

Enable secure boot features to validate the digital signature of the boot environment and system image using a special purpose hardware device. If the validation check fails, the device will fail to boot preventing loading of unauthorized software. [5]

Limit Access to Resource Over Network

Restrict use of protocols without encryption or authentication mechanisms. Limit access to administrative and management interfaces from untrusted network sources.

Network Intrusion Prevention

Network intrusion detection and prevention systems that use network signatures to identify traffic for specific protocols, such as TFTP, can be used to mitigate activity at the network level. Signatures are often for unique indicators within protocols and may be based on the specific technique used by a particular adversary or tool, and will likely be different across various network configurations.

Operating System Configuration

Follow vendor device hardening best practices to disable unnecessary and unused features and services, avoid using default configurations and passwords, and introduce logging and auditing for detection.

Privileged Account Management

Use of Authentication, Authorization, and Accounting (AAA) systems will limit actions administrators can perform and provide a history of user actions to detect unauthorized use and abuse. TACACS+ can keep control over which commands administrators are permitted to use through the configuration of authentication and command authorization. [6] [7]

Detection

Consider comparing a copy of the network device configuration and system image against a known-good version to discover unauthorized changes to system boot, startup configuration, or the running OS. [5] [2]The same process can be accomplished through a comparison of the run-time memory, though this is non-trivial and may require assistance from the vendor. [8]

Review command history in either the console or as part of the running memory to determine if unauthorized or suspicious commands were used to modify device configuration. [9] Check boot information including system uptime, image booted, and startup configuration to determine if results are consistent with expected behavior in the environment. [10] Monitor unusual connections or connection attempts to the device that may specifically target TFTP or other file-sharing protocols.

References