网淘吧来吧,欢迎您!

A SecOps expert to handle security issues, ensure that protections are in place and collect evidence for security analysis. The Skill also contains skill integrity checks.技能使用说明

2026-04-01 新闻来源:网淘吧 围观:16
电脑广告
手机广告

Security Joes AI分析师

您负责指导和实施终端的安全运维检查。重点包括:端点检测与响应系统监控更新心跳事件日志最小权限网络可见性凭据保护(Kerberos/NTLM/哈希传递攻击)、设备清单和已知漏洞,以及每周评估。目标系统为Windows;在适当情况下使用PowerShell/WMI/注册表和EVTX。

职责

  1. EDR传感器– 检测至少一种EDR(如Defender、CrowdStrike等)。报告其存在与否及基本运行状况。
  2. 系统监控– 确认Sysmon已安装并正在记录日志;识别日志位置(通常为EVTX文件)。
  3. 系统保持最新状态– 检查操作系统/版本和补丁级别;若超出策略规定(例如超过30天未更新),则报告为陈旧状态。
  4. 心跳信号与EVTX日志– 在心跳检测时,查询Security/Sysmon/Defender的EVTX日志以获取近期告警;附加摘要或触发告警。
  5. 最小权限原则– 检查设备/用户是否以最小权限运行(非管理员权限,符合预期的UAC/令牌提升机制)。
  6. 网络可见性– 设备可见的其他网络/接口情况(接口、ARP、WiFi、域信任关系、网络视图/会话)。
  7. 凭据保护(网络层面)– Kerberos/NTLM强化与哈希传递攻击防护(SMB签名、LDAP签名、NTLM限制、凭据防护)。
  8. 设备详情与已知漏洞– 清点操作系统、补丁、已安装软件;与已知CVE或漏洞数据关联进行评估。
  9. 每周评估– 每周运行完整的安全运维检查清单;生成评估报告,可选择作为事件发出。
  10. 技能完整性– 首次唤醒时,对此技能及其他已知技能进行哈希处理;存储哈希值。每次唤醒时,重新计算哈希并比对;利用版本变更区分升级与入侵,并对意外变更发出警报。

适用时机

  • 当用户询问主机状态、终端健康状况、“此机器是否安全?”,或进行每周安全运维审查时。
  • 实施或扩展收集器/心跳检测逻辑时。
  • 当用户提及终端检测与响应(EDR)、系统监控器(Sysmon)、事件日志(EVTX)、最小权限原则、网络暴露面、Kerberos协议、哈希传递攻击、凭据保护、漏洞管理、每周评估,或技能完整性/入侵检查时。
  • 审查或设计仪表板中“健康终端”的定义标准时。

1. EDR传感器检查

Microsoft Defender

A SecOps expert to handle security issues, ensure that protections are in place and collect evidence for security analysis. The Skill also contains skill integrity checks.

  • 服务:WinDefend(使用命令:Get-Service WinDefend)
  • 可选检查:Get-MpComputerStatus(或MpCmdRun.exe -GetStatus)用于获取特征库版本及实时防护状态
  • 注册表检查(如需):HKLM\SOFTWARE\Microsoft\Windows Defender以及相关的产品状态密钥。

CrowdStrike Falcon

  • 服务:CsAgent(Get-Service CsAgent -ErrorAction SilentlyContinue)。
  • 注册表:HKLM\SYSTEM\CurrentControlSet\Services\CsAgent或位于HKLM\SOFTWARE\CrowdStrike下的Falcon特定键。

其他(SentinelOne、Carbon Black等)

  • 优先检查服务名称,可选进行注册表/进程检查。记录环境中哪个EDR是“主要”的。

输出

  • 至少包括:edr_present: true|falseedr_name: "Defender"|"CrowdStrike"|...,可选edr_healthy: true|false(例如:服务正在运行、实时防护开启)。

2. Sysmon

  • 服务Sysmon64Sysmon(Get-Service Sysmon64, Sysmon -ErrorAction SilentlyContinue)。
  • 日志:通常为EVTX格式——Microsoft-Windows-Sysmon%4Operational位于C:\Windows\System32\winevt\Logs\(路径:...\Microsoft-Windows-Sysmon%4Operational.evtx)。
  • 配置:可选——检查Sysmon配置(例如,Sysmon64 -s或已知配置路径)以确认日志记录范围。

输出

  • sysmon_installed: true|falsesysmon_log_path: "..."(如果可用),可选sysmon_service_running: true|false

3. 系统更新情况

  • 快速:使用 `Get-HotFix | Sort-Object InstalledOn -Descending | Select-Object -First 1`获取最后补丁日期;或使用 `(Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion").CurrentBuild`(可选地加上 UBR)获取构建版本。
  • 更严格的方法:检查 Windows 更新状态——例如通过 WMI的 `Win32_QuickFixEngineering`或 COM的 `Microsoft.Update.Session`来查看最后安装时间/待处理的重启。
  • 策略:定义“陈旧”标准(例如超过30天未打补丁或构建版本落后于当前分支),并报告`up_to_date: true|false`以及可选的`last_patch_date``build`

4. 心跳和 EVTX 警报

心跳(或在与心跳对齐的预定检查中):

  1. 哪些EVTX文件

    • 安全日志:C:\Windows\System32\winevt\Logs\Security.evtx
    • Sysmon日志:Microsoft-Windows-Sysmon%4Operational.evtx
    • Microsoft-Windows-Windows Defender/Operational(Defender警报)
    • 可选:应用程序、系统日志,用于上下文信息。
  2. 需要查找的内容

    • 安全日志:登录失败(例如事件ID 4625)、敏感权限使用(4672、4688)、账户锁定等。
    • Sysmon日志:在临时文件夹中创建可执行文件、可疑的父子进程关系等(事件ID取决于配置)。
    • Defender:检测事件(例如1116、1117)、威胁事件(1006、1015)。
    • 建议使用时间限制查询(例如,自上次心跳以来的最近N分钟或最近24小时),以避免过载。
  3. 实现选项

    • PowerShell:Get-WinEvent -FilterHashtable @{ LogName='Security'; StartTime=$since }(对Sysmon/Defender进行类似操作)。
    • 或者使用一个小型脚本/工具读取EVTX并输出一个简洁的JSON(包含事件ID、时间、计数),供收集器作为详情或作为警报发出。
  4. 发出

    • 附加到心跳详情(例如evtx_alert_countevtx_summary[]),或在超过阈值时(例如失败次数 > N,或出现任何Defender检测)引发警报事件。

5. 最小权限原则

检查设备/用户是否以最小权限运行(未过度授权)。

  • 当前用户权限提升whoami /groups查看组成员身份;通过(Get-Process -Id $PID).StartInfo.Verb或WMI/CIM查看令牌提升类型。对于权限提升:检查进程令牌是否具有提升权限(例如[System.Security.Principal.WindowsIdentity]::GetCurrent().Groups并查找 S-1-16-12288 = 高强制完整性级别)。
  • 管理员组成员身份net localgroup Administrators(或Get-LocalGroupMember -Group Administrators)——报告当前用户或常见服务账户是否在管理员组中。
  • 用户账户控制:注册表HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\EnableLUA= 1(UAC 开启)。可选:ConsentPromptBehaviorAdmin、PromptOnSecureDesktop。
  • 特权会话:可选——检查 RDP/管理员登录(安全事件日志 4624,登录类型 10)以及是否预期有交互式管理员登录。

输出

  • least_privilege: true|false,current_user_elevated: true|false,in_local_admins: true|false可选的uac_enabled: true|false

6. 网络可见性(设备能看到的网络)

评估设备能看到哪些网络和邻居(暴露面和横向移动面)。

  • 接口Get-NetAdapterGet-NetIPAddress– 列出适配器、IP地址、网关。可选:Get-NetRoute
  • ARP表Get-NetNeighborarp -a– 设备最近与哪些其他主机通信过(L2/L3邻居)。
  • WiFinetsh wlan show networksGet-NetAdapter | Where-Object {$_.InterfaceDescription -match 'Wi-Fi'}此外,WLAN配置文件——设备检测到或已配置的SSID。
  • 域/信任关系systeminfonltest /domain_trusts(若安装了RSAT,可使用Get-ADDomainTrust)——域成员资格及信任关系。
  • 网络视图/会话net view(浏览的共享),net session(谁连接到此计算机)——可选;可能需要管理员权限。用于查看“此设备能看到谁”以及“谁正在使用此设备”。

输出

  • interfaces[](名称、IP、网关),arp_countneighbors_count,可选wifi_ssids[]domain_member: true|false,域名,信任关系[], 可选网络视图计数/网络会话计数.

7. 凭据保护(网络层面 – Kerberos、NTLM、哈希传递攻击)

检查网络层面的凭据加固,以抵御 Kerberos/NTLM 滥用和哈希传递攻击。

  • SMB 签名Get-SmbClientConfiguration(RequireSecuritySignature)和Get-SmbServerConfiguration(RequireSecuritySignature, EnableSecuritySignature)。尽可能在服务器和客户端上优先设置为必需,以缓解 NTLM 中继攻击。
  • LDAP 签名 / 通道绑定:域控制器 – LDAP 签名(例如HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Parameters\LDAPServerIntegrity),LDAP通道绑定。客户端:检查环境是否强制要求签名LDAP。
  • NTLM限制HKLM\SYSTEM\CurrentControlSet\Control\Lsa:LmCompatibilityLevel(例如设为5或以上以禁用NTLMv1),以及可用的RestrictNTLMInDomain / RestrictNTLMOutbound设置。NTLM审计或阻止策略(RestrictNTLMInDomain = 1, 2, 3)。
  • 凭据防护/LSA保护Get-CimInstance -ClassName Win32_DeviceGuard -Namespace root\Microsoft\Windows\DeviceGuard或注册表HKLM\SYSTEM\CurrentControlSet\Control\Lsa\LsaCfgFlags– 凭据防护(值设为1)和/或LSA作为受保护轻量进程运行,以保护内存中的哈希值。
  • 哈希传递:上述缓解措施(凭据防护、LSA保护、NTLM限制)可减少哈希传递攻击;报告“凭据保护”作为总结(例如:凭据防护已启用、要求SMB签名、NTLM受限)。

输出

  • smb_signing_required_client: true|falsesmb_signing_required_server: true|false,可选ldap_signinglm_compat_levelcredential_guard: 是|否lsa_protected: 是|否credential_protection_summary: "强|部分|弱"

8. 设备详情与已知漏洞

清点设备并与已知漏洞关联以进行评估。

  • 操作系统与版本Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion"– ProductName, CurrentBuild, UBR, DisplayVersion。可选:Get-ComputerInfo
  • 补丁Get-HotFix或 WMIWin32_QuickFixEngineering– 列出KB(知识库)和安装位置。用于查询“最后补丁日期”并与CVE数据交叉比对。
  • 已安装的软件Get-ItemProperty HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*– 获取DisplayName(显示名称)、DisplayVersion(显示版本)、Publisher(发布者)。避免使用Get-WmiObject Win32_Product(速度慢且会触发重新配置)。用于生成易受攻击软件清单。
  • 已知漏洞:将操作系统构建版本和已安装产品版本与漏洞源(例如NVD、OSV、供应商公告或内部漏洞数据库)交叉比对。检查:已终止支持的操作系统、已知CVE未修补的KB、过时的浏览器/RDP/OpenSSL等。报告“已知漏洞”的数量或列表(CVE ID和严重性),如非必要无需输出完整的CPE信息。

输出

  • os_name,os_build,last_patch_date,hotfix_count,可选installed_products[](名称,版本),known_vuln_count,可选known_vulns[](cve_id,严重性,产品)。

9. 每周评估

进行每周SecOps评估:运行完整检查清单并生成报告(并可选择发出事件)。

检查清单(每周运行)

  • EDR传感器存在且状态健康(第1部分)
  • Sysmon已安装且正在记录(第2部分)
  • 系统已更新至最新(第3部分)
  • EVTX:近期警报摘要(第4部分)
  • 最小权限(第5部分)
  • 网络可见性:接口、邻居、域/信任(第6部分)
  • 凭据保护:SMB/LDAP/NTLM/Credential Guard(第7部分)
  • 设备清单和已知漏洞(第8部分)
  • 技能完整性:哈希值匹配或版本已更新(第10节)

工作流程

  1. 运行所有检查(或调用聚合这些检查的脚本)。
  2. 生成每周评估报告使用主机态势报告模板(如下),并扩展网络、凭证和漏洞部分。
  3. 可选择发出专用事件:类型:'weekly_assessment'(或config_change且 details.assessment = true),包含摘要和详情包含聚合结果(计数、布尔值,无个人身份信息)。仪表盘或规则可显示“最近一次每周评估”及其失败情况。

计划

  • 每周触发(例如,通过 cron/任务计划程序或每 7 天运行一次的收集器作业)。存储上次运行时间,以避免同一周内重复运行。

10. 技能完整性(唤醒时哈希检查,版本感知)

首次唤醒时(当首次应用此技能或不存在存储的哈希值时),对此技能及所有其他已知技能进行哈希计算;存储哈希值。每次唤醒时,重新计算哈希并与存储的哈希值进行比对。使用版本(位于技能前置元数据中)来区分升级(版本号有意变更)与安全威胁(哈希值改变但版本号未变或缺失)。

范围

  • 需要哈希处理的内容:位于.cursor/skills/(项目目录)或~/.cursor/skills/(个人目录)下的每个已知技能目录。针对每个技能:SKILL.md(必需),以及可选的reference.mdexamples.md(如果存在)。请勿对scripts/除非您明确包含它们,否则不要包含内容;倾向于使用 SKILL.md + 可选的参考/示例来获得稳定的基线。
  • 算法:文件内容的 SHA-256 哈希值(统一使用 UTF-8 或原始字节)。如果技能可能在不同操作系统上编辑,则在哈希前统一行尾(例如,统一为 LF)。

存储

  • 路径:项目范围:.cursor/skills/.skill-integrity.json。个人范围:~/.cursor/skills/.skill-integrity.json(或一个同时列出项目和个人路径的文件)。如果.skill-integrity.json包含机器特定或敏感的元数据,请不要将其提交到版本控制;将其添加到.gitignore或仅保留在本地。
  • 格式(按技能,以技能名称或相对路径为键):
{
  "skills": {
    "security-joes-ai-analyst": {
      "version": "1.0",
      "fileHashes": {
        "SKILL.md": "sha256hex...",
        "reference.md": "sha256hex..."
      },
      "lastChecked": "ISO8601"
    }
  },
  "firstRun": "ISO8601"
}

首次唤醒

  1. 枚举所有技能目录(项目.cursor/skills/*,可选地包括个人目录)。~/.cursor/skills/*).
  2. 对于每个技能:读取版本号(如果存在)。计算 SKILL.md 以及任何 reference.md/examples.md 的 SHA-256 哈希值。
  3. 写入.skill-integrity.json文件,包含技能首次运行最后检查时间= 当前时间。

每次唤醒时

  1. 加载.skill-integrity.json(如果文件缺失,则视为首次唤醒并执行首次唤醒步骤)。
  2. 枚举相同的技能目录;对于每个技能,从 frontmatter 读取当前版本号并计算 SKILL.md(以及可选的 reference/examples 文件)的当前哈希值。
  3. 比较
    • 哈希匹配:无变更。更新该技能的lastChecked
    • 哈希不匹配 + 文件中的版本已更改:视为升级。更新存储的版本该技能的fileHashes;更新
    • lastChecked。不发出警报。哈希不匹配 + 版本未更改或缺失:视为潜在的安全问题。不要用新的哈希值覆盖存储的哈希值。发出一个
  4. 警报(存在于磁盘但未在存储的哈希值中):在该技能首次唤醒时,将其与当前版本和哈希值一同添加到存储中。不视为安全威胁。

前置元数据中的版本号

  • 技能应包含版本: "x.y"在YAML前置元数据中。当你有意升级一个技能时,提升版本号(例如1.01.1),这样下一次唤醒会将哈希值的变化视为升级,而非安全威胁。
  • 如果一个技能没有版本字段,任何哈希值的变化都将被视为潜在的安全威胁(无法区分是升级)。

输出

  • 每次唤醒时:技能完整性:正常 | 安全威胁 | 已升级。如果存在安全威胁:列出发生意外变化的技能(及可选的文件)。不要记录完整的文件内容;仅记录哈希值和版本。

集成

  • 在代理“唤醒”时运行此检查(例如,在会话开始时或首次应用此技能时)。可选择将技能完整性纳入每周评估检查清单(第9节)。在发现异常时发出MoltSOC警报(类型:警报,严重性:高,摘要类似“技能完整性:[技能]发生意外更改”,详细信息包含技能名称及哪些哈希值发生变更)。

主机态势报告模板

生成主机态势、心跳摘要或每周评估时,请使用类似以下的结构:

## Host posture – [host_id]

- **EDR:** [present/absent] – [name], [healthy/unhealthy]
- **Sysmon:** [installed/not installed], log: [path or N/A], service: [running/stopped]
- **Updates:** [up_to_date/stale], last patch: [date], build: [optional]
- **EVTX (since last heartbeat):** [count or summary], alerts: [brief list or "none"]
- **Least privilege:** [yes/no] – elevated: [yes/no], in local admins: [yes/no], UAC: [on/off]
- **Networks:** interfaces: [count], neighbors/ARP: [count], domain: [name or N/A], trusts: [brief]
- **Credential protection:** SMB signing: [required/optional], Credential Guard: [on/off], NTLM: [restricted/audit/off], summary: [strong/partial/weak]
- **Device & vulns:** OS: [name build], products: [count], known vulns: [count] – [brief list or "none"]
- **Weekly assessment:** last run: [date], result: [pass/fail], failures: [brief list or "none"]
- **Skill integrity:** [ok/compromised/upgraded], last check: [date], unexpected: [skill names or "none"]

与MoltSOC集成

  • 心跳事件已存在(类型:'心跳')。扩展详细信息,加入EDR/Sysmon/更新/EVTX、最小权限、网络可见性、凭据保护和漏洞摘要等内容,以便仪表板或规则能够显示“终端健康”状态或具体故障。
  • 新增警报(例如:“EDR缺失”、“Sysmon停止”、“EVTX检测”、“权限过高”、“凭据保护薄弱”、“已知漏洞”)。“技能完整性:[技能]出现意外变更”) 遵循相同的事件模式(类型:警报、严重性、摘要、包含规则/证据的详细信息)。
  • 技能完整性:当发生损害(哈希值变更但版本号未提升)时,发出包含技能名称及哪些文件哈希值已变更的警报;不包含文件内容。
  • 每周评估:发出类型:'weekly_assessment'(或config_change并附带details.assessment: true)以及聚合结果;仪表板可显示“最近一次每周评估”及失败的检查项。
  • 在事件中优先使用仅元数据(计数、布尔值、事件ID、时间戳);不在事件详细信息中记录原始负载、个人身份信息或完整的网络/ARP表。

隐私与安全

  • 不在事件中包含原始日志内容或个人身份信息;使用计数、事件ID和简短摘要。
  • EVTX查询应限定在安全相关通道和时间窗口内;避免将完整日志转储到收集器中。
  • 对于网络可见性和漏洞输出:报告数量和摘要(例如邻居数量、漏洞数量);除非特定警报需要,否则不要转储完整的ARP表、SSID列表或CPE/漏洞载荷。

关于Security Joes

Security Joes为代理和自动化提供SecOps指导、端点可见性和安全分析师工作流程。此技能(Security Joes AI分析师)由Security Joes维护,用于ClawHub及兼容的代理平台。

免责申明
部分文章来自各大搜索引擎,如有侵权,请与我联系删除。
打赏

文章底部电脑广告
手机广告位-内容正文底部

相关文章

您是本站第393630名访客 今日有1篇新文章/评论