A PowerShell script that gathers all Windows services and exports them to a detailed, timestamped CSV file β including service name, description, path, startup user, digital signature publisher, and whether the service appears suspicious.
- Export all installed Windows services to CSV
- Sorts results by service DisplayName
- Adds row numbers to each service
- Retrieves:
- Service
NameandDisplayName - Service
DescriptionandState - Executable
PathandStartName - Publisher from digital signature of the executable
- Flags services as Suspicious if:
- Unsigned
- Publisher is not Microsoft
- Located in
AppData,Temp, orDownloadsfolders
- Service
- Output saved to Desktop with timestamp (e.g.
ServicesList_2025-07-04_09_45_30_AM.csv)
| # | DisplayName | Name | Description | State | StartName | PathName | Publisher | Suspicious |
|---|---|---|---|---|---|---|---|---|
| 1 | Application Information | Appinfo | ... | Running | LocalSystem | C:\Windows... | Microsoft Windows | False |
| 2 | XYZ Service | xyzsvc | ... | Stopped | .\User | C:\Users... | Unsigned | True |
- Open PowerShell as Administrator
- Run the script:
.\Get-WindowsServices.ps1
The script will display progress and save a CSV file to your Desktop.
β Requirements Windows 10/11
PowerShell 5.1 or later
Admin privileges recommended (to access all services)