IncidentResponsev2

4.46 Check for Unauthorized Software and Tools

Task Identify and Remove Unauthorized or Malicious Software Installed by Attackers

Conditions

Given access to impacted systems and administrative privileges, the operator will enumerate installed software and tools, investigate suspicious or unauthorized programs, and remove any attacker-installed software to ensure eradication is complete.

Operator Note: Attackers often install tools (credential dumpers, remote access software, persistence frameworks) to aid in lateral movement and post-compromise activities. These must be thoroughly removed.

Standards

End State

Unauthorized and attacker-installed software has been fully identified, validated, removed, and documented across the environment.


Notes


Manual Steps

Step 1: Enumerate Installed Software

Windows

Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* | Select-Object DisplayName, InstallDate
Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* | Select-Object DisplayName, InstallDate
wmic product get name, installlocation

Linux

dpkg -l   # Debian/Ubuntu
rpm -qa   # RHEL/CentOS
find / -type f -executable -exec ls -la {} \; 2>/dev/null | grep -i suspicious

macOS

system_profiler SPApplicationsDataType
ls /Applications
find /usr/local/bin /usr/bin /bin -type f -perm +111

Operator Note: Focus on unusual install paths (AppData, /tmp, user folders) and unknown publishers.


Step 2: Investigate Suspicious Software

Indicators of suspicious or unauthorized software:

Operator Note: Cross-reference with threat intelligence sources and MITRE ATT&CK for known attacker tooling.


Step 3: Remove Unauthorized or Malicious Software

Windows

Get-WmiObject -Class Win32_Product | Where-Object {$_.Name -like "*SuspiciousSoftware*"} | ForEach-Object { $_.Uninstall() }

OR via Control Panel / Apps & Features for GUI removal.

Linux

sudo apt remove suspiciouspackage
sudo yum remove suspiciouspackage
sudo rm /path/to/suspicious/file

macOS

sudo rm -rf /Applications/SuspiciousApp.app
brew uninstall suspiciouspackage

Operator Note: Validate removal after using package managers or manual methods.


Step 4: Validate Removal and Monitor


Running Script (Windows - Enumerate Installed Apps and Save to File)

Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* |
Select-Object DisplayName, InstallDate |
Export-Csv InstalledSoftware.csv -NoTypeInformation

Operator Note: Retain lists before and after eradication for recordkeeping.


Dependencies


Other Available Tools

Tool Platform Installation Usage
Autoruns (Sysinternals) Windows Download from Sysinternals Detect non-standard software loading at startup
PowerShell Windows Built-in Enumerate, remove software
Package managers (apt, yum, brew) Linux/macOS Built-in Remove installed software
EDR/XDR Platforms Cross-platform Enterprise deployment Detect and alert on unauthorized software

Operator Note: Autoruns and EDR solutions are highly effective for detecting hidden/unauthorized software.


Operator Recommendations and Additional Tools

Operator Checklist

Best Practices


References

Windows PowerShell Get-WmiObject for Installed Software
Linux Package Management (APT/YUM)
macOS Command Line Tools
Sysinternals Autoruns


Revision History

Date Version Description Author
2025-05-02 1.0 Fully generated operator guide for checking/removing unauthorized software and attacker tools with platform-specific guidance Leo