Safeguard
Application Security•

Detecting System Information Discovery (T1082)

MITRE ATT&CK T1082: how attackers collect OS, patch and hardware details, and how process and API logging can reveal the reconnaissance.

Safeguard Security Team
3 min read

Before an intruder decides what to do on a machine, they usually ask it a few questions. MITRE ATT&CK lists this as System Information Discovery (T1082) in the discovery tactic. It applies to ESXi, IaaS, Linux, macOS, Network Devices and Windows.

How attackers use it

MITRE says an adversary may try to get detailed information about the operating system and hardware, including version, patches, hotfixes, service packs and architecture. The results may shape what comes next, such as whether the adversary fully infects the target or attempts specific actions. MITRE separates this from local storage discovery, which is about drives, disks and volumes.

The page names several ways the information is collected:

  • The Systeminfo tool on Windows.
  • The systemsetup configuration tool on macOS, when running with privileged access.
  • Network device command line interfaces, for example show version.
  • esxcli utilities on ESXi servers, such as system hostname get and system version get.
  • Cloud APIs. On IaaS providers such as AWS, GCP and Azure, successful authenticated API calls can return the operating system platform and status of an instance or the model view of a virtual machine.

MITRE adds that this discovery, combined with other reconnaissance, can drive payload development and concealment.

How to detect it

MITRE states that this technique cannot be easily mitigated with preventive controls, because it abuses system features. Detection is the main lever. Its strategy (DET0525) lists these signals:

  • Windows: processes that inspect the environment and then read OS configuration APIs or registry locations that expose version, architecture, patch level or hardware.
  • Linux: system enumeration commands such as uname, df, uptime, hostname, lscpu and cat /etc/os-release, run from a terminal or scripts.
  • macOS: utilities such as systemsetup, sw_vers, uname or sysctl run by terminal or scripted processes.
  • ESXi: esxcli system hostname get, system version get or hardware commands run over SSH or a local shell.
  • Cloud: API calls such as EC2 DescribeInstances or Azure VM inventory used to enumerate configurations across assets.
  • Network devices: show version, show hardware or show system over SSH or console.

These commands are common for administrators, so a single run means little. Look for bursts, for unusual parents such as a document viewer or web server spawning them, and for service accounts doing it.

How to reduce the risk

Since prevention is limited, reduce the value of what is learned and speed up detection. Keep systems patched so that version details reveal less. Restrict who can call cloud inventory APIs, and log all calls. Restrict SSH and console access to network devices and ESXi hosts.

Check your own environment

On Windows, confirm that process creation auditing is on, since command line detection depends on it:

auditpol /get /category:"Detailed Tracking"

Also check that your tooling captures command lines for process creation events, whether through Security event 4688 with command line logging enabled or through Sysmon.

Quick check

Which cloud API call does MITRE give as an example of IaaS system discovery?

EC2 DescribeInstances on AWS, or the VM inventory in Azure, used to enumerate system configurations across assets.

Sources

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.