使用 AI 与 NLP 构建 BEC 检测系统:Anthropic-Cybersecurity-Skills 技能实战指南
【免费下载链接】Anthropic-Cybersecurity-Skills817 structured cybersecurity skills for AI agents · Mapped to 6 frameworks: MITRE ATT&CK, NIST CSF 2.0, MITRE ATLAS, D3FEND, NIST AI RMF & MITRE F3 (Fight Fraud) · agentskills.io standard · Works with Claude Code, GitHub Copilot, Codex CLI, Cursor, Gemini CLI & 20+ platforms · 29 security domains · Apache 2.0项目地址: https://gitcode.com/GitHub_Trending/an/Anthropic-Cybersecurity-Skills
导读
商业电子邮件欺诈(Business Email Compromise,BEC)是最具破坏性的社会工程攻击之一:攻击者不携带恶意链接或附件,仅凭精心伪造的"发件人身份 + 话术",就能诱导财务人员完成转账或泄露敏感信息。本文以仓库中 detecting-business-email-compromise-with-ai 技能及其 部署模板 为核心,系统讲解如何利用机器学习、NLP 与行为分析搭建一套可落地的 AI 化 BEC 检测系统。读完本文,你将掌握从平台选型、基线训练、NLP 模型配置、检测策略到响应联动、模型反馈闭环的完整实战方案,并能直接运行仓库附带的检测脚本进行验证。
为什么传统规则引擎拦不住 BEC
BEC 攻击的核心特征是纯社会工程:邮件中既没有钓鱼链接,也没有恶意附件,因此基于关键词、信誉库和 URL 信誉的规则型过滤器天然失明。攻击者通常通过三类手法绕过防线:
- 高管冒充(Impostor):使用与 CEO/CFO 相同的显示名,但来自外部相似域名;
- 账号接管(Account Takeover):攻陷真实员工邮箱后,在其通信关系内发起付款请求;
- 供应商欺诈:伪装成供应商请求变更收款账户。
仓库中 standards.md 整理了公开行业数据:2023 年 FBI IC3 报告 BEC 损失约 29 亿美元,占全部网络犯罪经济损失的 27%,单起平均损失约 12.5 万美元。正因如此,检测思路必须从"内容信誉"转向"发件人行为与写作风格的可信度"——这正是 AI 检测方案的切入点。
检测能力的四大分类
根据 standards.md,一套完整的 AI BEC 检测应覆盖四个维度:
| 检测类别 | 技术手段 | 目标 |
|---|---|---|
| Impostor Detection | 显示名/域名相似度比对 | 发现冒充高管或供应商 |
| Account Takeover Detection | 行为基线偏离检测 | 发现被攻陷账号的异常行为 |
| Writing Style Analysis | NLP 风格比对(笔迹学) | 发现"账号是真的、写手是假的" |
| Intent Classification | 意图分类(付款/凭据/数据请求) | 识别攻击者的最终目的 |
一、部署模板:AI 平台的配置清单
技能仓库在 assets/template.md 中提供了一份可直接用于项目立项与部署规划的配置模板,其核心是四张表。模板中的空栏位需要在真实环境中逐项填写。
1.1 AI 平台配置
| Setting | Value | Status |
|---|---|---|
| Platform | 待填(如 Abnormal Security / Tessian / Microsoft Defender) | |
| Integration | API-based (Microsoft Graph) | |
| Baseline training period | 30+ days | |
| Scanning scope | Inbound + Internal + Outbound |
三个要点值得展开:
- API 化集成:模板默认通过 Microsoft Graph API 接入,这不仅是读取邮件的通道,也是检测"转发规则型 BEC 持久化"的依据。例如可用 Graph 查询邮件规则来发现异常自动转发(对应 MITRE ATT&CK T1114.003 Email Collection: Email Forwarding Rule):
GET https://graph.microsoft.com/v1.0/users/{id}/mailFolders/inbox/messageRules?$filter=actions/forwardTo ne null完整接口示例见 api-reference.md。
- 基线训练期:模板要求 30 天以上历史邮件数据。而 SKILL.md 的部署流程进一步说明,平台上线后还需48 小时基线学习期,让模型学习"谁给谁发邮件、频率、语气"等常态模式。
- 三向扫描范围:Inbound(外部入站)覆盖冒充攻击,Internal(内部互发)覆盖被攻陷账号的横向钓鱼(T1534 Internal Spearphishing),Outbound(出站)覆盖数据外传与业务逻辑异常。
1.2 检测阈值分级表
模板定义了四级置信度分级与动作映射,这是整个检测策略的"决策引擎":
| Score Range | Classification | Action |
|---|---|---|
| 90-100% | High-confidence BEC | Auto-quarantine + SOC alert |
| 70-89% | Moderate BEC | Warning banner + analyst queue |
| 50-69% | Low-confidence BEC | Warning banner only |
| < 50% | Likely legitimate | Deliver normally |
该分级与 workflows.md 中 Workflow 1 的行动节点完全一致,并在脚本中有对应实现:process.py 中overall_score >= 0.7触发AUTO-QUARANTINE + SOC alert,>= 0.5触发WARNING BANNER + analyst queue,>= 0.3仅加警告横幅,其余正常投递。
1.3 VIP 保护名单
| Name | Title | Writing Style Profiled | |
|---|---|---|---|
| 待填 | CEO | ||
| 待填 | CFO | ||
| 待填 | CTO |
VIP 名单是冒充检测的锚点:AI 将新邮件与已知高管的通信模式、写作风格比对,一旦发现"显示名匹配 VIP 但域名是外部"或"句长分布与基线严重偏离",即判为高风险。脚本 process.py 中compute_impostor_score实现了核心逻辑:当vip_name in from_name且from_domain != vip_domain时加 0.5 分;reply-to 域名与发件域名不一致时再加 0.3 分。
1.4 模型性能指标
| Metric | Target | Current |
|---|---|---|
| Detection accuracy | > 98% | |
| False positive rate | < 0.05% | |
| Mean detection time | < 5 sec | |
| BEC catch rate vs. rules | +25% |
这些指标需要持续回填并作为上线验收标准。SKILL.md 的 Validation 章节要求:基线训练完成后误报率低于 0.05%,检出率超过传统规则过滤 25% 以上。作为佐证,standards.md 列出公开研究中各类 AI 技术的参考准确率:BERT 嵌入 + SVC 邮件分类 98.65%、Transformer 写作风格分析 96%+、行为异常检测 94%+、图神经网络通信模式分析 93%+、情感分析 91%+。
二、五步部署工作流
SKILL.md 给出了从零到一的部署流程,共五步:
Step 1:部署 AI 邮件安全平台
- 选择 API 型方案(Abnormal Security、Tessian、Ironscales)或增强现有 SEG(邮件安全网关);
- 连接 Microsoft Graph API 或 Google Workspace API;
- 在历史数据上留出 48 小时基线学习期;
- 配置扫描范围覆盖入站、出站、内部邮件;
- 核对 API 权限(消息读取与处置/隔离权限)。
Step 2:配置行为基线
AI 需要学习的常态包括:谁与谁通信、频率、语气;每个用户的写作风格画像(词汇量、句式结构);按角色的典型请求类型(财务处理付款、HR 处理 PII);邮件元数据基线(发送时间、设备、地理位置)。任何偏离基线的行为都被标记为异常。
脚本层面,process.py 的train_baseline可直接从历史邮件日志构建基线:统计每个发件人的recipients(通信对象集合)、typical_hours(常见发送时段)、typical_topics(常见主题,如 financial/scheduling),并输出为 JSON。随后 process.py 的compute_behavioral_score逐项比对:首次通信 +0.3、非常规时段 +0.2、发送者从不谈财务却发付款请求 +0.3。
Step 3:训练 NLP 模型
- 部署 Transformer 模型(BERT、GPT)进行邮件内容分析;
- 识别紧迫与操控性语言模式;
- 发现"发件人身份与写作风格不匹配";
- 分析暗示社会工程施压的情绪变化;
- 分类邮件意图:信息请求 / 付款请求 / 凭据请求。
NLP 特征工程在 api-reference.md 中有明确定义,而 agent.py 的extract_features给出了可直接运行的特征提取实现,共 11 个特征:
| Feature | 含义 | BEC 信号 |
|---|---|---|
| urgency_score | 紧急词汇占比 | 高 = 可疑 |
| pressure_score | 保密/施压词汇占比 | 高 = 可疑 |
| financial_score | 财务词汇占比 | 高 = 可疑 |
| authority_score | 高管头衔提及占比 | 高 = 可疑 |
| exclamation_ratio | 感叹号密度 | 高 = 情绪化 |
| caps_ratio | 大写字符占比 | 高 = 攻击性语气 |
| unique_word_ratio | 词汇多样性 | 低 = 模板化话术 |
| avg_word_length / avg_sentence_length | 用词与句式统计 | 用于风格比对 |
这些特征被送入加权逻辑回归(sigmoid)生成 BEC 概率,agent.py 中权重为:financial 4.0、urgency 3.5、pressure 3.0、authority 2.5、caps 1.5、exclamation 1.0。若你希望走经典的 scikit-learn 分类路线,api-reference 也提供了 TF-IDF + RandomForest 的 Pipeline 模板。
Step 4:配置检测策略
- VIP 冒充:对比高管历史通信模式;
- 供应商冒充:识别来自相似域名(如 homoglyph 域名)的付款变更请求;
- 账号失陷:检测员工邮件行为的突变;
- 供应链 BEC:监控对可信合作伙伴的冒充;
- 置信度阈值:配置自动拦截 / 警告横幅 / 分析师复核的阈值分界。
Step 5:接入响应工作流
- 高置信度 BEC 自动隔离;
- 中置信度加警告横幅;
- 可疑邮件进入 SOC 分析师队列;
- 与 SOAR 联动执行自动响应剧本;
- 将 BEC 判定结果反馈回训练数据,持续改进模型——这正是 workflows.md 中 Workflow 2 "模型反馈闭环"的机制:用户上报误报、分析师确认真阳、用户报告漏报三类反馈,分别驱动发送者信任分更新、带修正标签的模型重训、阈值调整与行为基线更新。
三、仓库脚本实战:从邮件文本到风险判定
仓库提供两个可运行的检测脚本,适合离线验证与二次开发:
3.1 agent.py:轻量文本分析器
agent.py 只接受邮件正文文本,适合快速评估一封邮件的 BEC 嫌疑:
python agent.py --file email_body.txt python agent.py --file email_body.txt --baseline-file sender_style.json其输出 JSON 包含四部分:features(11 维 NLP 特征)、writing_style(句长均值/标准差/风格一致性)、impersonation_signals(冒充信号)、bec_probability与risk_level(CRITICAL/HIGH/MEDIUM/LOW)。
内部实现值得注意的两点:
- 笔迹学分析(Stylometry):analyze_writing_style 计算句长均值与标准差,
style_consistency = 1 - min(std/20, 1);在detect_impersonation_signals中,若当前邮件平均句长与发送者基线相差超过 8 个词,即标记writing_style_deviation。 - 冒充话术模式库:api-reference 和脚本内置了四类经典冒充信号的正则,均为可复用的检测模式:
r"sent from my (iphone|ipad|android|mobile)" # 移动签名制造紧迫借口 r"(please|kindly).*(do not|don't).*(reply|respond|call)" # 劝阻核实 r"(i am|i'm).*(in a meeting|traveling|on a flight)" # 不可用借口 r"(handle|process|complete).*(today|immediately|by end of day)" # 时间压力
3.2 process.py:企业级多模型流水线
process.py 更贴近生产架构,实现了"三模型加权聚合"流水线,与 Workflow 1 的架构图一一对应:
# 先基于历史邮件日志训练行为基线 python process.py train-baseline --email-log emails.json --output baselines.json # 对单封邮件执行完整检测(可附 VIP 名单) python process.py detect --email-json email.json --baseline-file baselines.json --vip-file vips.json核心函数 detect_bec_ai 的聚合逻辑如下:
nlp_score:基于正则加权模式库(urgency/secrecy/financial/authority 四类,共 30+ 模式,如gift card权重 4、wire transfer权重 3)计算并归一化到 0-1,同时给出intent_class(payment_request / directive / sensitive_request / unknown);impostor_score:显示名-域名比对 + reply-to 域比对;behavioral_score:行为基线偏离(首次通信、异常时段、非常规主题);- 加权合成:
overall = nlp×0.35 + impostor×0.40 + behavioral×0.25(process.py),confidence = min(overall×1.2, 1.0)。
权重设计值得借鉴:冒充维度权重最高(0.40),因为 BEC 的第一要务是身份欺骗;NLP 次之(0.35);行为基线最低(0.25),因为它依赖训练数据的完备性,初期基线不完整时不应过度主导判定。
四、威胁建模与标准对齐
该技能在 SKILL.md 中完成了多框架映射,说明 BEC 检测不是孤立的邮件安全议题,而是横跨身份、持久化与欺诈的多层防御:
- MITRE ATT&CK:T1566.002(钓鱼:鱼叉式链接)、T1534(内部鱼叉式钓鱼)、T1114.002(邮箱数据收集)、T1657(财务盗窃)、T1078.004(有效账户:云账户);
- MITRE ATLAS(AI 攻击面):AML.T0073 / AML.T0052 / AML.T0088;
- NIST AI RMF:GOVERN-6.x、MAP-5.2、MEASURE-2.x(对应基线训练与持续度量要求);
- D3FEND:Sender MTA Reputation Analysis、Email Filtering、Homoglyph Detection、Message Analysis;
- MITRE F3(反欺诈框架):覆盖 initial-access(T1660 Phishing、F1032 Impersonate Official)、stealth(T1672 Email Spoofing、F1022 Delete Relevant Emails)、positioning(F1005.006 变更付款信息)、monetization(F1025.003 电汇转账)四个阶段的战术链条。
这与仓库整体设计一致:mappings/mitre-attack/coverage-summary.md 将本技能归入 phishing-defense 域(14 个相关技能之一),且 T1566、T1078、T1114 等战术在技能矩阵中有系统化的覆盖。
五、上线验证清单
部署完成后,建议按 SKILL.md 的 Validation 章节逐项验收:
- AI 能检测出不含任何恶意指标的纯社会工程测试邮件(即规则引擎必然漏过的样本);
- 写作风格分析能识别对已知高管的冒充;
- 行为基线能标记来自被攻陷账号的异常付款请求;
- NLP 能正确分类测试场景中的紧迫性操控;
- 基线训练后误报率低于 0.05%;
- 检出率超过传统规则过滤 25% 以上。
验收通过后,将结果回填到 template.md 的"Current"列,形成可审计的持续度量基线。至此,一套从部署、训练、检测到反馈闭环的 AI 化 BEC 防御体系即告建成。
【免费下载链接】Anthropic-Cybersecurity-Skills817 structured cybersecurity skills for AI agents · Mapped to 6 frameworks: MITRE ATT&CK, NIST CSF 2.0, MITRE ATLAS, D3FEND, NIST AI RMF & MITRE F3 (Fight Fraud) · agentskills.io standard · Works with Claude Code, GitHub Copilot, Codex CLI, Cursor, Gemini CLI & 20+ platforms · 29 security domains · Apache 2.0项目地址: https://gitcode.com/GitHub_Trending/an/Anthropic-Cybersecurity-Skills
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考