跳转至

T1007-系统服务发现

来自ATT&CK的描述

攻击者可能会尝试获取有关注册服务的信息。可以使用操作系统程序获取有关服务的信息的命令是“sc”,或者使用Tasklist的“ tasklist /svc” 、或者使用Net命令的“net start” ,但是攻击者也可以使用其他工具。攻击者可以在自动发现过程中使用“ 系统服务发现”中的信息来决定后续行动该如何开展,包括攻击者是否完全感染目标或尝试执行特定操作。

测试案例

windows下执行sc相关命令、tasklist /svc、net start

检测日志

windows 安全日志

测试复现

C:\Windows\system32>sc query

SERVICE_NAME: BFE
DISPLAY_NAME: Base Filtering Engine
        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
C:\Windows\system32>tasklist /svc

映像名称                       PID 服务
========================= ======== ============================================
System Idle Process              0 暂缺
System                           4 暂缺
smss.exe                       288 暂缺
csrss.exe                      420 暂缺
csrss.exe                      532 暂缺
wininit.exe                    576 暂缺
winlogon.exe                   584 暂缺
services.exe                   664 暂缺
C:\Windows\system32>net start
已经启动以下 Windows 服务:

   Background Tasks Infrastructure Service
   Base Filtering Engine
   CDPUserSvc_11e76e
   Certificate Propagation
   CNG Key Isolation
   COM+ Event System
   COM+ System Application

测试留痕

windows 安全日志、进程创建、进程关闭、命令行参数等

检测规则/思路

sigma规则

title: windows 系统服务发现
description: windows server 2016
references:
tags: T1007
status: experimental
author: 12306Bro
logsource:
    product: windows
    service: security
detection:
    selection:
        EventID: 4688 #已创建新的进程。
        Newprocessname: 'C:\Windows\System32\sc.exe' #进程信息>新进程名称
        Creatorprocessname: 'C:\windows\system32\cmd.exe' #进程信息>创建者进程名称
        Processcommandline: SC * #进程信息>进程命令行
    condition: selection
level: medium
title: windows 系统服务发现
description: windows server 2016
references:
tags: T1007
status: experimental
author: 12306Bro
logsource:
    product: windows
    service: security
detection:
    selection1:
        EventID: 4688 #已创建新的进程。
        Newprocessname: 'C:\Windows\System32\tasklist.exe' #进程信息>新进程名称
        Creatorprocessname: 'C:\Windows\System32\cmd.exe' #进程信息>创建者进程名称
        Processcommandline: tasklist  * #进程信息>进程命令行
    selection2: # *5
        EventID: 4703 #一个用户的权限被调整。
        ProcessName: 'C:\Windows\System32\whoami.exe' #进程信息>进程名
        EnabledPrivileges: 'SeDebugPrivilege' #启用的权限
    selection3:
        EventID: 4690 #试图将句柄复制到对象。
    selection4:
        EventID: 4658 #已关闭到对象的句柄。
        ProcessName: 'C:\Windows\System32\wbem\WmiPrvSE.exe' #进程信息>进程名
    selection5:
        EventID: 4656 #已请求到对象的句柄。
        Objectname: '\Device\HarddiskVolume4\Windows\System32\lsass.exe' #对象>对象名
        ProcessName: 'C:\Windows\System32\wbem\WmiPrvSE.exe' #进程信息>进程名
    selection6:
        EventID: 4633 #试图访问对象。
        Objectname: '\Device\HarddiskVolume4\Windows\System32\lsass.exe' #对象>对象名
        ProcessName: 'C:\Windows\System32\wbem\WmiPrvSE.exe' #进程信息>进程名
        Access: 读取进程内存 #访问请求信息>访问
    selection7:
        EventID: 4658 #已关闭到对象的句柄。
        ProcessName: 'C:\Windows\System32\wbem\WmiPrvSE.exe' #进程信息>进程名
    selection8:
        EventID: 4689 #已退出进程
        ProcessName: 'C:\Windows\System32\tasklist.exe' #进程信息>进程名
        Exitstatus: 0x0 #进程信息>退出状态
    timeframe: last 1m #可根据实际情况调整
    condition: all of them
level: medium
title: windows 系统服务发现
description: windows server 2016
references:
tags: T1007
status: experimental
author: 12306Bro
logsource:
    product: windows
    service: security
detection:
    selection1:
        EventID: 4688 #已创建新的进程。
        Newprocessname: 'C:\Windows\System32\net.exe' #进程信息>新进程名称
        Creatorprocessname: 'C:\windows\system32\cmd.exe' #进程信息>创建者进程名称
        Processcommandline: net  start #进程信息>进程命令行
    selection2:
        EventID: 4688 #已创建新的进程。
        Newprocessname: 'C:\Windows\System32\net1.exe' #进程信息>新进程名称
        Creatorprocessname: 'C:\Windows\System32\net.exe' #进程信息>创建者进程名称
        Processcommandline: C:\Windows\system32\net1  start #进程信息>进程命令行
    selection3:
        EventID: 4689 #已退出进程
        ProcessName: 'C:\Windows\System32\net1.exe' #进程信息>进程名
    selection4:
        EventID: 4689 #已退出进程
        ProcessName: 'C:\Windows\System32\net.exe' #进程信息>进程名
    timeframe: last 1m #可根据实际情况调整
    condition: all of them
level: medium

建议

系统服务发现方法有很多,不能一一列举。

参考推荐

MITRE-ATT&CK-T1007

https://attack.mitre.org/techniques/T1007/