svchost・servicesについてのメモ

メモ1(関連するプロセス)

  • services.exe ("C:\Windows\System32\services.exe")
  • サービスコトロールマネージャ(Service Control Manager : SCM)
  • svchost.exe ("C:\Windows\System32\svchost.exe")
  • サービスホスト(Service Host)

メモ2 (プロセスと関連しているサービスを調べる)

例) tasklist(一部抜粋)


PS C:\Users\IEUser> tasklist.exe /svc

Image Name                     PID Services
========================= ======== ============================================
System Idle Process              0 N/A
System                           4 N/A
smss.exe                       216 N/A
csrss.exe                      292 N/A
csrss.exe                      328 N/A
wininit.exe                    336 N/A
winlogon.exe                   364 N/A
services.exe                   424 N/A
lsass.exe                      432 SamSs
lsm.exe                        440 N/A
svchost.exe                    548 DcomLaunch, PlugPlay, Power
svchost.exe                    664 RpcEptMapper, RpcSs
svchost.exe                    756 Audiosrv, Dhcp, eventlog, lmhosts, wscsvc
svchost.exe                    816 AudioEndpointBuilder, CscService, Netman,
                                   PcaSvc, TrkWks, UmRdpService, UxSms
svchost.exe                    848 EventSystem, FontCache, netprofm, nsi,
                                   sppuinotify, WdiServiceHost,
                                   WinHttpAutoProxySvc
svchost.exe                    872 AeLookupSvc, BITS, CertPropSvc, gpsvc,
                                   iphlpsvc, LanmanServer, MMCSS, ProfSvc,
                                   Schedule, SENS, SessionEnv,
                                   ShellHWDetection, Themes, Winmgmt, wuauserv
svchost.exe                   1132 CryptSvc, Dnscache, LanmanWorkstation,
                                   NlaSvc, TermService
svchost.exe                   1260 BFE, DPS, MpsSvc
svchost.exe                   2944 WinDefend
svchost.exe                   4020 SSDPSRV



BITS(Background Intelligent Transfer Service)はPID:872のsvchostを調べてみるとサービスとして登録されていることがわかる.

f:id:kmdnet:20170912173020p:plain

 

メモ3(Serviceの調査)

scというSCMとサービスと通信するためのコマンドラインプログラムがある(注: PowerShellではscはSet-Contentが割り当てられている).scを用いてサービスについて調査を行う.

例2) scを用いたサービスの列挙(PowerShellでSelect-Stringで抜粋)


PS C:\Users\IEUser> C:\Windows\System32\sc.exe query | Select-String BITS -Context 0,8

> SERVICE_NAME: BITS
  DISPLAY_NAME: Background Intelligent Transfer Service
          TYPE               : 20  WIN32_SHARE_PROCESS
          STATE              : 4  RUNNING
                                  (STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
          WIN32_EXIT_CODE    : 0  (0x0)
          SERVICE_EXIT_CODE  : 0  (0x0)
          CHECKPOINT         : 0x0
          WAIT_HINT          : 0x0



例3) サービスの照会


 PS C:\Users\IEUser> C:\Windows\System32\sc.exe qc BITS
[SC] QueryServiceConfig SUCCESS

SERVICE_NAME: BITS
        TYPE               : 20  WIN32_SHARE_PROCESS
        START_TYPE         : 2   AUTO_START  (DELAYED)
        ERROR_CONTROL      : 1   NORMAL
        BINARY_PATH_NAME   : C:\Windows\System32\svchost.exe -k netsvcs
        LOAD_ORDER_GROUP   :
        TAG                : 0
        DISPLAY_NAME       : Background Intelligent Transfer Service
        DEPENDENCIES       : RpcSs
                           : EventSystem
        SERVICE_START_NAME : LocalSystem   
  



おまけ

  • winlogon.exe("C:\Windows\System32\winlogon.exe")
  • ログオンプロセス.
  • csrss.exe("C:\Windows\System32\csrss.exe")
  • Windowsサブシステム
  • explorer.exe("C:\Windows\explorer.exe")
  • explorer.exeの親プロセスはUserinitプロセス

参考文献

インサイド MS WINDOWS 第4版 上