mirror of
https://github.com/FunnyWolf/agentic-soc-platform.git
synced 2026-08-22 13:12:56 +02:00
tmp
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
你是一名资深 SOC / DFIR 事件调查分析师。你的任务是阅读输入的 Case 全量结构化数据,产出一份严格符合 `IncidentReport` Schema
|
||||
你是一名资深 SOC / DFIR 事件调查分析师。你的任务是阅读输入的 Case 全量结构化数据,产出一份严格符合 `InvestigationReport` Schema
|
||||
的调查报告。
|
||||
|
||||
你的目标不是简单复述字段,而是做基于证据的案件研判:判断这是否是真实安全事件、攻击者做了什么、做到哪一步、影响多大、应如何响应。
|
||||
@@ -112,6 +112,6 @@ SOP-5 形成处置建议
|
||||
|
||||
最终要求:
|
||||
|
||||
- 输出必须完全符合 `IncidentReport` 结构。
|
||||
- 输出必须完全符合 `InvestigationReport` 结构。
|
||||
- 如果某些信息缺失,也要给出最合理、最克制的结论,不得留空。
|
||||
- 在信息不足时,优先降低置信度并明确不确定性,而不是编造细节。
|
||||
|
||||
@@ -49,7 +49,7 @@ class RemediationRecommendation(BaseModel):
|
||||
priority: CasePriority = Field(description="该处置动作自身的执行优先级。")
|
||||
|
||||
|
||||
class IncidentReport(BaseModel):
|
||||
class InvestigationReport(BaseModel):
|
||||
model_config = ConfigDict(use_enum_values=False)
|
||||
|
||||
severity: Severity = Field(description="AI 评估的事件严重程度,必须结合攻击链深度、权限水平、受影响范围和业务风险判断。")
|
||||
@@ -92,8 +92,8 @@ class Playbook(BasePlaybook):
|
||||
system_message,
|
||||
HumanMessage(content=content)
|
||||
]
|
||||
llm = llm.with_structured_output(IncidentReport)
|
||||
response: IncidentReport = llm.invoke(messages)
|
||||
llm = llm.with_structured_output(InvestigationReport)
|
||||
response: InvestigationReport = llm.invoke(messages)
|
||||
|
||||
report_payload = response.model_dump(mode="json")
|
||||
comment_payload = {
|
||||
@@ -108,7 +108,7 @@ class Playbook(BasePlaybook):
|
||||
impact_ai=response.impact,
|
||||
priority_ai=response.priority,
|
||||
confidence_ai=response.confidence,
|
||||
comment_ai=json.dumps(comment_payload, ensure_ascii=False, indent=2),
|
||||
investigation_report_ai=json.dumps(comment_payload, ensure_ascii=False, indent=2),
|
||||
)
|
||||
Case.update(case_new)
|
||||
print(report_payload)
|
||||
|
||||
@@ -404,8 +404,8 @@ class AlertModel(BaseSystemModel):
|
||||
|
||||
class CaseModel(BaseSystemModel):
|
||||
"""安全案件,多个告警聚合而成,安全人员与AI分析处理的核心对象"""
|
||||
_AI_EXCLUDE_FIELDS: ClassVar[set[str]] = {"workbook", "summary_ai", "comment_ai", "attack_stage_ai", "severity_ai", "confidence_ai", "impact_ai",
|
||||
"priority_ai", "verdict_ai"}
|
||||
_AI_EXCLUDE_FIELDS: ClassVar[set[str]] = {"workbook", "summary_ai", "investigation_report_ai", "severity_ai", "confidence_ai", "impact_ai", "priority_ai",
|
||||
"verdict_ai"}
|
||||
# 系统自动生成字段
|
||||
id: Optional[str] = Field(default=None, init=False, description="Record ID e.g. case_000001 (记录 ID e.g. case_000001,系统自动生成,无需手动赋值)")
|
||||
|
||||
@@ -454,7 +454,7 @@ class CaseModel(BaseSystemModel):
|
||||
confidence_ai: Optional[Confidence] = Field(default=None, description="AI-assessed confidence (AI 评估置信度)")
|
||||
impact_ai: Optional[Impact] = Field(default=None, description="AI-assessed impact (AI 评估影响)")
|
||||
priority_ai: Optional[CasePriority] = Field(default=None, description="AI-assessed response priority (AI 评估响应优先级)")
|
||||
comment_ai: Optional[str] = Field(default="", description="AI-generated comment (AI 生成的注释)")
|
||||
investigation_report_ai: Optional[str] = Field(default="", description="AI-generated investigation report (AI 生成的调查报告)")
|
||||
|
||||
verdict_ai: Optional[CaseVerdict] = Field(default=None, description="AI-generated final verdict (AI 生成的最终判定结果)")
|
||||
summary_ai: Optional[str] = Field(default="", description="AI-generated closure summary (AI 生成的结案摘要)")
|
||||
|
||||
Reference in New Issue
Block a user