-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathInvoke-EnumSecurityTools.ps1
69 lines (62 loc) · 2.31 KB
/
Invoke-EnumSecurityTools.ps1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
function Invoke-EnumSecurityTools {
<#
.SYNOPSIS
Enumerates any security tools running on the system.
Author: Chris Myers (@swizzlez_)
.DESCRIPTION
Grabs a list of services on the system and compares the service name to kown service
names of security tools such as AV and EDR. Outputs a list of identified tools and
their status.
.EXAMPLE
PS>Import-Module .\Invoke-EnumSecurityTools.ps1
PS>Invoke-EnumSecurityTools
Enumerating Security Tools...
Security_Tool Status
------------- ------
Windows Defender Network Inspection Service Stopped
Windows Defender Running
#>
$av_list = @{
"symantec antivirus"="Symantec Endpoint Protection"
mcshield="McAfee Security"
windefend="Windows Defender"
msmpsvc="Microsoft Security Essentials"
msmpeng="Microsoft Security Essentials"
savservice="Sophos Antivirus"
aveservice="Avast!"
"avast! antivirus"="Avast!"
immunetprotect="Immunet Protect"
fsma="F-Secure"
antivirservice="AntiVir"
avguard="Avira"
fpavserver="F-Protect"
pshost="Panda Security"
pavsrv="Panda AntiVirus"
bdss="BitDefender"
abmainsv="ArcaBit/ArcaVir"
"ikarus-guardx"="IKARUS"
ekrn="ESET Smart Security"
avkproxy="G Data Antivirus"
klblmain="Kaspersky Lab Antivirus"
vbservprof="Symantec VirusBlast"
clamav="ClamAV"
EMET_Service="Microsoft EMET"
Sense="Windows Defender Advanced Threat Protection Service"
WdNisSvc="Windows Defender Network Inspection Service"
"Parity Agent"="Bit 9 Parity Application Whitelisting"
"csagent"="CrowdStrike Falcon EDR Agent"
}
Write-Output "Enumerating Security Tools..."
$objParams = @{
"Security_Tool"="Tool Name"
"Status"="Status"
}
$toolObj = New-Object -TypeName PSObject -Property $objParams
Get-Service | ForEach-Object {
if ($av_list.ContainsKey($_.Name)) {
$toolObj.Security_Tool = $av_list[$_.Name]
$toolObj.Status = $_.Status
Write-Output $toolObj
}
}
}