Skip to content
Please update to the latest release 0.77.3 to address Multiple CVEs.
Windows.System.SVCHost

Windows.System.SVCHost

Lists svchost.exe processes whose parent is not services.exe, indicating suspicious activity.

Typically a windows system will have many svchost.exe processes. Sometimes attackers name their processes svchost.exe to try to hide. Typically svchost.exe is spawned by services.exe.

This artifact lists all the processes named svchost.exe and their parents where the parent is NOT named services.exe.


name: Windows.System.SVCHost
description: |
  Lists `svchost.exe` processes whose parent is not services.exe,
  indicating suspicious activity.
  
  Typically a windows system will have many `svchost.exe`
  processes. Sometimes attackers name their processes `svchost.exe` to
  try to hide. Typically `svchost.exe` is spawned by `services.exe`.

  This artifact lists all the processes named `svchost.exe` and their
  parents where the parent is NOT named `services.exe`.

sources:
  - precondition: |
      SELECT OS From info() where OS = 'windows'

    query: |
        // Cache the pslist output in memory.
        LET processes <= SELECT Pid, Ppid, Name, Exe FROM pslist()

        // Get the pids of all procecesses named services.exe
        LET services <= SELECT Pid FROM processes where Name =~ "services.exe"

        // The interesting processes are those which are not spawned by services.exe
        LET suspicious = SELECT Pid As SVCHostPid,
            Ppid As SVCHostPpid,
            Exe as SVCHostExe,
            CommandLine as SVCHostCommandLine
        FROM processes
        WHERE Name =~ "svchost" AND NOT Ppid in services.Pid

        // Now for each such process we display its actual parent.
        SELECT * from foreach(
           row=suspicious,
           query={
              SELECT SVCHostPid, SVCHostPpid, SVCHostExe,
                     SVCHostCommandLine, Name as ParentName,
                     Exe As ParentExe
              FROM processes
              WHERE Pid=SVCHostPpid
          })