Adversaries may use network discovery to map the local network and identify potential targets, which is a common step in initial compromise. SOC teams should proactively hunt for this behavior in Azure Sentinel to detect early signs of network reconnaissance and limit lateral movement opportunities.
title: System Network Discovery - Linux
id: e7bd1cfa-b446-4c88-8afb-403bcd79e3fa
status: test
description: Detects enumeration of local network configuration
references:
- https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1016/T1016.md
author: Ömer Günal and remotephone, oscd.community
date: 2020-10-06
modified: 2022-09-15
tags:
- attack.discovery
- attack.t1016
logsource:
category: process_creation
product: linux
detection:
selection_img:
Image|endswith:
- '/firewall-cmd'
- '/ufw'
- '/iptables'
- '/netstat'
- '/ss'
- '/ip'
- '/ifconfig'
- '/systemd-resolve'
- '/route'
selection_cli:
CommandLine|contains: '/etc/resolv.conf'
condition: 1 of selection_*
falsepositives:
- Legitimate administration activities
level: informational
imProcessCreate
| where (TargetProcessName endswith "/firewall-cmd" or TargetProcessName endswith "/ufw" or TargetProcessName endswith "/iptables" or TargetProcessName endswith "/netstat" or TargetProcessName endswith "/ss" or TargetProcessName endswith "/ip" or TargetProcessName endswith "/ifconfig" or TargetProcessName endswith "/systemd-resolve" or TargetProcessName endswith "/route") or TargetProcessCommandLine contains "/etc/resolv.conf"
Scenario: System Network Configuration Audit via ip a or ifconfig
Description: A system administrator is performing a routine network configuration audit using tools like ip a or ifconfig to check interface details.
Filter/Exclusion: Check for presence of ip a or ifconfig in the command line, or filter by user (e.g., user == "root" or user == "admin").
Scenario: Scheduled Network Monitoring Job
Description: A scheduled job runs periodically to monitor network interfaces using a script that executes nmcli or ip route to gather network information.
Filter/Exclusion: Filter by process name (e.g., process.name == "network-monitor.sh"), or check for presence of a known monitoring script in the command line.
Scenario: Network Enumeration via nmap for Security Assessment
Description: A security team is conducting a network scan using nmap to assess internal network connectivity and identify devices.
Filter/Exclusion: Filter for nmap in the command line, or check for presence of a security team user (e.g., user == "security-team").
Scenario: Systemd Service Configuration Check
Description: A system administrator is checking systemd service configurations using systemctl status or journalctl to verify network-related services.
Filter/Exclusion: Filter for systemctl or journalctl in the command line, or check for presence of known administrative tasks in the command history.
Scenario: Network Interface Configuration via nmcli in GUI Tool
Description: A user is configuring network interfaces through a GUI tool that uses nmcli in the background to apply settings.
Filter/Exclusion: Filter for nmcli in the