社会工程渗透测试实战指南:基于 GoPhish、SET 与 Evilginx 构建人类攻击面评估
发布时间:2026/9/13 0:28:56来源:尧图网络
社会工程渗透测试实战指南基于 GoPhish、SET 与 Evilginx 构建人类攻击面评估【免费下载链接】Anthropic-Cybersecurity-Skills817 structured cybersecurity skills for AI agents · Mapped to 6 frameworks: MITRE ATTCK, 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导读本指南以 Anthropic-Cybersecurity-Skills 仓库中 conducting-social-engineering-penetration-test 技能文档为骨架系统讲解如何设计并执行一次经授权的社会工程渗透测试——从 OSINT 目标画像、钓鱼/语音钓鱼vishing/短信钓鱼smishing/物理社工pretexting四类攻击向量到指标统计、风险评分与整改建议的完整闭环。读完本文你将掌握 GoPhish 钓鱼平台、Social Engineer ToolkitSET与 Evilginx 反代钓鱼工具的实战用法能够独立规划、执行并汇报一次可量化的人类安全韧性评估。技能定位一个可执行的 AI Agent 网络安全技能该技能位于仓库 skills/conducting-social-engineering-penetration-test/ 目录下元数据声明其用途为Design and execute a social engineering penetration test combining OSINT-driven target profiling with phishing, vishing, smishing, and physical pretexting campaigns using tools like GoPhish, the Social Engineer Toolkit (SET), and Evilginx to measure human security resilience设计并执行一次社会工程渗透测试将 OSINT 驱动的目标画像与钓鱼、语音钓鱼、短信钓鱼和物理伪装活动相结合使用 GoPhish、SET 与 Evilginx 等工具来衡量人类安全韧性。该技能在框架映射上与多个主流威胁模型对齐见 SKILL.md 的 frontmatterMITRE ATTCKT1566网络钓鱼、T1566.004鱼叉式钓鱼、T1598钓鱼获取信息、T1204.001恶意链接、T1589收集受害者信息MITRE ATLASAML.T0088、AML.T0052MITRE F3Fight FraudT1598 钓鱼获取信息、T1660 钓鱼、F1029 收集客户信息、F1032 冒充官方、T1557 中间人攻击、F1020.002 创建虚假材料虚假网站NIST CSFID.RA-01、ID.RA-06、GV.OV-02、DE.AE-07这种多框架映射意味着社会工程不仅是发钓鱼邮件它在攻击链中同时覆盖侦查reconnaissance、资源开发resource-development与初始访问initial-access三个阶段报告阶段需要按照这些框架的编号体系输出便于安全团队直接对照治理与合规要求。前置条件合规边界比工具更重要社会工程测试触及真实员工、真实身份与真实业务流程其法律与伦理前提必须先于一切技术动作确认书面授权来自高层管理CISO/CTO的正式授权文件明确授权范围与时限法律审查由法务确认符合当地法律如美国 CFAA、欧盟 GDPR 等明确范围划定目标员工群体、允许的攻击类型钓鱼/语音钓鱼/物理/短信与排除项如禁止针对高管个人设备、禁止进入孕妇/产假员工等敏感名单基础设施GoPhish 服务器、用于钓鱼基础设施的域名、VPSOSINT 工具Maltego、theHarvester、LinkedIn 信息收集工具人员协同测试后需与 HR 和法务协调员工通知流程避免测试引发真实恐慌或劳动关系问题。仓库中的 standards.md 进一步补充了合规红线不得在未经同意的情况下针对个人邮箱或设备对欧盟员工必须遵守 GDPR不得使用真实恶意软件或破坏性载荷报告中的结果必须匿名化以保护个人。阶段一OSINT 与目标画像员工侦察本阶段的目标是从公开渠道构建谁最可能上当、用什么理由骗的目标画像核心命令如下# 邮箱收集 theHarvester -d targetcorp.com -b all -l 500 -f harvester_results # LinkedIn OSINT人工 工具 # 收集姓名、角色、部门、邮箱格式 # 识别新员工、IT 管理员、财务团队、高管 # 邮箱格式探测 # 检查first.last、flast、firstl 等常见格式 # 用 hunter.io、phonebook.cz、email-checker.net 验证 # 社交媒体 OSINT # Twitter/X员工晒工作工具、抱怨系统 # Facebook公司活动照片、办公室布局 # GitHub员工仓库中泄露的公司邮箱 # 域名情报 dig targetcorp.com MX short dig targetcorp.com TXT short # 检查 SPF、DKIM、DMARC 记录 # DMARC 配置弱 更易伪造发件域名 # 泄露数据库查询须经授权 # 用 HaveIBeenPwned API 查公司邮箱 # 识别凭据已泄露的员工其中DMARC/SPF/DKIM 侦察直接决定钓鱼的基础设施策略如果目标域 DMARC 策略为 none 或配额宽松攻击者可以直接伪造targetcorp.com如果 DMARC 严格reject 对齐则必须注册高度相似的相似域名lookalike domain并为其配置合法的 SPF/DKIM 记录这正是后续阶段基础设施的核心逻辑。目标选择矩阵群体数量借口Pretext攻击向量财务部门15发票审批钓鱼凭据收割IT 服务台8密码重置语音钓鱼Vishing高管5董事会会议更新鱼叉式钓鱼新员工入职 90 天12HR 入职表单钓鱼载荷全体员工200IT 安全更新广泛钓鱼选择矩阵的价值在于将攻击向量与目标的心理场景绑定财务人员每天处理发票审批用发票借口最自然新员工对 HR 流程不熟悉入职表单借口成功率高高管时间敏感用会议更新制造紧迫感。阶段二钓鱼活动Phishing Campaign基础设施搭建# 注册相似域名 # targetcorp.com - targetc0rp.com、targetcorp-secure.com、targetcorp.net # 部署 GoPhish 服务器 sudo apt install gophish # 编辑 config.json 配置管理后台与钓鱼服务端口 gophish # 配置 GoPhish 发送配置Sending Profile # SMTP 服务器mail.attackdomain.com # 发件人it-securitytargetcorp-secure.com # 头信息为攻击域配置合法的 DKIM/SPF # 创建落地页凭据收割 # 克隆合法登录页Office 365、Okta 等 # GoPhishImport Site - https://login.microsoftonline.com # 开启Capture Credentials、Capture Passwords # 捕获后重定向到真实站点降低用户警觉 # 配置 Evilginx 实现 MFA 绕过仅限授权测试 evilginx2 : config domain attackdomain.com : config ipv4 server_ip : phishlets hostname o365 login.targetcorp-secure.com : phishlets enable o365 : lures create o365 : lures get-url 0这里的关键技术点是GoPhish 负责看得见的度量opens、clicks、submitsEvilginx 负责绕得过 MFA。Evilginx 作为反向代理将真实目标站点的会话 Cookie 在攻击者与受害者之间转发使得攻击者可以接管已通过 MFA 认证的真实会话——这正是 SKILL.md 中将 Evilginx 标记为MFA bypass via reverse proxy phishing的原因。需要特别强调该能力仅可用于获得明确授权的渗透测试在真实场景中属于典型的 AiTMAdversary-in-the-Middle中间人攻击对应 MITRE ATTCK T1557。GoPhish 活动配置以下 JSON 展示了 GoPhish 创建活动的完整配置结构{ campaign: { name: IT Security Update - Q1 2025, template: { name: Mandatory Security Training, subject: Action Required: Complete Security Awareness Training by Friday, html: html...[品牌化邮件 紧迫感].../html, from: IT Security Team securitytargetcorp-secure.com }, landing_page: Office 365 Login Clone, sending_profile: Phishing SMTP, groups: [All Employees - Batch 1], launch_date: 2025-03-10T09:00:00Z, send_by_date: 2025-03-10T12:00:00Z } }注意launch_date与send_by_date字段钓鱼活动应采用分批发送batched sends策略而非一次全量发出。这既能避免触发邮件网关的异常流量检测也能让测试团队在每批发送后及时回收指标、及时止损。不同借口的钓鱼邮件模板模板 1 — IT 安全更新全体员工Subject: [Action Required] Mandatory Password Reset - Security Incident From: IT Security securitytargetcorp-secure.com Dear {FirstName}, Our security team has detected unauthorized access attempts on our systems. As a precautionary measure, all employees must reset their passwords immediately. Please click below to reset your password within the next 24 hours: [Reset Password Now] - {phishing_url} Failure to comply may result in temporary account suspension. Thank you, IT Security Team模板 2 — 财务发票财务部门Subject: Invoice #INV-2025-4821 - Approval Required From: Accounts Payable aptargetcorp-secure.com Hi {FirstName}, Please review and approve the attached invoice from our vendor. Amount: $47,250.00 | Due: March 15, 2025 [View Invoice] - {phishing_url} Best regards, Accounts Payable两个模板体现了社会工程的心理操纵要素权威性来自 IT 安全团队/应付账款部门、紧迫感24 小时内、到期日、后果威胁账户被暂停。{FirstName}是 GoPhish 的模板变量用于在发送时自动填充目标姓名提升可信度。仓库 agent.py 中generate_pretext_scenarios()函数对上述借口模式做了程序化建模每条场景包含scenario场景名、pretext借口话术、vector向量、urgency紧迫度与success_indicator成功标志{ scenario: CEO Wire Transfer, pretext: CEO requests urgent wire transfer for confidential acquisition, vector: email, urgency: high, success_indicator: User initiates transfer or reveals banking info, }该函数内置了四个典型场景IT 密码重置高紧迫、CEO 电汇高紧迫、供应商发票中紧迫、物理尾随低紧迫。这意味着你在设计攻击场景时可以直接把紧迫度作为变量紧迫度越高用户深思熟虑的时间越少成功率越高但报告时也要相应标注其人为操纵性更强。阶段三语音钓鱼活动Vishing Campaign通话脚本模板借口IT 服务台致电通知可疑登录 呼叫者您好我是 IT 服务台的 [姓名]。请问是 [目标姓名] 吗 [等待确认] 呼叫者我们检测到您的账户有来自异常位置的登录活动。 为了保护您我需要先核实您的身份。 呼叫者请确认您的员工 ID 以及账户关联的邮箱地址。 [记录回答] 呼叫者谢谢。我会给您发送一个验证链接来确认身份。 您能点击链接并输入凭据以便我们保护您的账户吗 [通话期间通过邮件/SMS 发送钓鱼链接] 呼叫者很好我确认您已通过验证您的账户现已安全。 如果还有任何问题请致电服务台 [真实号码]。该脚本的精妙之处在于全程采用保护性话术先制造威胁异常登录再以核实身份为由索取员工 ID 和邮箱最后将钓鱼链接包装成官方验证流程。收尾时给出真实服务台号码是为了降低受害者事后举报的意愿——这是一种典型的善后安抚技巧测试报告中也应专门记录。语音钓鱼需跟踪的指标指标说明电话接通Call answered目标接听电话深入交谈Engaged目标在初始提问后继续对话信息泄露Information disclosed目标提供了凭据、员工 ID 或 PII点击链接Link clicked目标点击了验证链接输入凭据Credentials entered目标在钓鱼页面输入了凭据上报Reported目标向安全团队举报了该通话语音钓鱼指标的价值在于其漏斗递减特征从接通到泄露凭据每一层都在筛掉一部分目标。报告阶段用这个漏斗可以精确指出员工在哪个环节失去了判断力——是接电话缺乏来电识别意识、交谈缺乏话术防御还是泄露信息缺乏敏感信息保护意识。阶段四物理社会工程Physical Social Engineering物理伪装场景场景 1快递员 - 携带标注为高管收件的包裹 - 请求亲自送达 - 尝试尾随tailgate通过安全门 - 在公共区域投放 U 盘 场景 2IT 供应商 - 佩戴打印的供应商工牌入场 - 声称有网络机柜的定期维护安排 - 尝试进入服务器机房 - 若获得访问权安装 rogue 无线 AP 场景 3新员工 - 声称第一天入职报到 - 请求临时工牌 - 尝试进入受限区域 - 拍摄敏感屏幕/文档 证据收集 - 执法记录仪如法律允许且经授权 - 访问区域的照片 - rogue AP 的 WiFi 探测 - 记录哪些门/检查点被绕过三个场景共同构成借口 接近 得手的物理攻击模型快递员场景测试尾随防护与前台流程IT 供应商场景测试机房访问控制与设备审查新员工场景测试临时访客管理制度。证据收集环节强调以合法可接受的方式留存证明——照片、探测日志、通过记录这些将直接进入报告作为整改依据。物理评估的量化记录Physical Assessment: ├── Tailgating Successful: 3/5 attempts ├── USB Drives Plugged In: 2/10 dropped ├── Restricted Areas Accessed: 2/4 attempted └── Challenged by Employee: 1 time被员工质疑Challenged by Employee是物理测试中最重要的正向指标——它说明安全意识培训在物理层面产生了效果。阶段五指标统计与风险分析活动结果看板示例数据Phishing Campaign Results: ├── Emails Sent: 200 ├── Emails Delivered: 195 (97.5%) ├── Emails Opened: 142 (72.8%) ├── Links Clicked: 68 (34.9%) ├── Credentials Submitted: 31 (15.9%) ├── MFA Bypassed: 8 (4.1%) [Evilginx] ├── Reported to SOC: 12 (6.2%) └── No Action: 53 (27.2%) Vishing Campaign Results: ├── Calls Made: 23 ├── Calls Answered: 18 (78.3%) ├── Engaged in Conversation: 15 (65.2%) ├── Information Disclosed: 9 (39.1%) ├── Credentials Provided: 4 (17.4%) └── Reported to Security: 2 (8.7%)注意示例中Reported to SOC: 12 (6.2%) 与 No Action: 53 (27.2%)安全团队在解读结果时不应只看攻破率还应看举报率衡量员工安全意识与无行动率衡量漠视程度。一次健康的测试其价值恰恰体现在举报率上升、凭据提交率下降的趋势对比上。指标计算口径仓库 api-reference.md 明确了指标公式统一以已发送邮件数为分母保证口径一致指标公式打开率 Open Rateemails_opened / emails_sent × 100点击率 Click Ratelinks_clicked / emails_sent × 100提交率 Submit Ratedata_submitted / emails_sent × 100举报率 Report Ratereported / emails_sent × 100用脚本自动化指标分析仓库提供两个可直接运行的 Python 脚本用于从 GoPhish API 拉取数据并生成报告process.py — 活动指标处理器通过 GoPhish REST API默认地址https://localhost:3333使用 Bearer API Key 鉴权拉取活动结果并按状态机累计计数python process.py --gophish-url https://localhost:3333 --api-key key --output ./results其核心逻辑analyze_campaign()依据 GoPhish 的status字段做漏斗统计Email Sent / Email Opened / Clicked Link / Submitted Data / Email Reported / Error 逐层递增并计算 open/click/submit/report 四类比率。analyze_by_department()则按position部门/职位字段拆分点击、提交与举报数据直接支撑部门风险矩阵的生成。generate_report()会产出 Markdown 格式的 se_campaign_report.md其中内嵌了风险评级逻辑if stats[submit_rate] 20: risk CRITICAL elif stats[submit_rate] 10: risk HIGH elif stats[submit_rate] 5: risk MEDIUM else: risk LOW这是从源码结构看得到的评级基准凭据提交率超过 20% 即评为 CRITICAL10%~20% 为 HIGH5%~10% 为 MEDIUM低于 5% 为 LOW。该阈值可以作为你报告中对总体风险等级的判定参考。agent.py — 评估管理 Agent支持通过 GoPhish API 编程化创建发送配置、模板与目标组并拉取活动指标python agent.py --gophish-url https://localhost:3333 --api-key key --campaign-id 1 --output report.json其GoPhishClient类封装了/api/campaigns/、/api/smtp/、/api/templates/、/api/groups/等端点对应 api-reference.md 中列出的 GoPhish 官方 API 接口。如果你希望在每次测试后自动化生成统一的指标报告可以直接复用这两个脚本的调用链拉取活动 → 分析指标 → 输出报告。风险评分矩阵攻击向量成功率风险等级优先级钓鱼凭据收割15.9%高P1语音钓鱼信息泄露39.1%严重P1物理尾随60%高P2USB 投放20%中P3鱼叉式钓鱼高管40%严重P1风险评分的逻辑是成功率 × 影响面语音钓鱼信息泄露率近 40% 且直接影响凭据安全故定为严重尾随成功率 60% 虽然数值最高但单次尾随的直接危害相对受限定为高优先级的 P2。阶段六报告与整改建议报告模板结构仓库提供了标准化的报告模板 assets/template.md其结构包含文档控制客户、测试类型、测试向量、周期、密级、执行摘要韧性概览、关键成功率、最高风险群体、分向量活动结果钓鱼/语音钓鱼/物理各自的指标表、部门风险矩阵部门 × 风险等级 × 优先整改动作、整改建议列表。报告默认密级标注为 CONFIDENTIAL且按 standards.md 的要求个体结果必须匿名化。整改优先级优先级整改建议时间线P1部署抗钓鱼 MFAFIDO2/WebAuthn30 天P1实施定向安全意识培训14 天P1部署带 URL 重写的邮件网关30 天P2强化物理访问控制防尾随闸机、访客工牌60 天P2按部门实施安全代言人Champion计划30 天P3部署 USB 设备控制策略30 天P3在邮件客户端建立钓鱼举报按钮14 天整改建议与测试发现一一对应凭据提交率高 → FIDO2 抗钓鱼 MFA 邮件网关 URL 重写尾随成功率高 → 物理访问控制USB 投放得手 → USB 设备控制策略举报率低 → 举报按钮 安全代言人计划。这正是以测试证据驱动安全投入的报告思路。仓库 process.py 中generate_report()自动生成的建议清单可作为起始模板FIDO2/WebAuthn MFA、高风险部门定向培训、URL 沙箱邮件网关、举报按钮与奖励机制、季度钓鱼演练实际报告可在此基础上按测试发现增删。工具速查表工具用途GoPhish钓鱼活动管理平台活动、模板、落地页、指标Evilginx2通过反向代理钓鱼实现 MFA 绕过Social Engineer Toolkit (SET)社会工程攻击框架含邮件/网页/短信向量MaltegoOSINT 与关系映射theHarvester邮箱与域名 OSINTKing Phisher钓鱼活动工具Modlishka凭据拦截反向代理结合 api-reference.md 的向量分类邮件钓鱼对应 GoPhish/King Phisher语音钓鱼对应借口脚本与 VoIP 工具物理攻击对应工牌克隆与尾随USB 投放对应 Rubber Ducky 与 USB Armory。测试团队应按向量为每个工具明确责任人避免单一工具单点故障。完整活动生命周期仓库 workflows.md 给出了从授权到报告的端到端流程Authorization Scoping │ ├── OSINT Target Profiling │ ├── Email harvesting │ ├── LinkedIn/social media reconnaissance │ └── Target group selection │ ├── Infrastructure Setup │ ├── Domain registration (lookalike) │ ├── GoPhish/Evilginx deployment │ ├── SMTP configuration (SPF/DKIM) │ └── Landing page creation │ ├── Campaign Execution │ ├── Phishing emails (batched sends) │ ├── Vishing calls │ ├── Physical pretexting │ └── USB drops │ ├── Monitoring Data Collection │ ├── Email opens/clicks tracking │ ├── Credential captures │ ├── Call recordings/notes │ └── Physical access logs │ └── Reporting Training ├── Metrics compilation ├── Risk scoring ├── Executive report └── Targeted training recommendations整个生命周期中监控与数据收集阶段最容易被忽视邮件打开/点击追踪依赖 GoPhish 的追踪像素与重定向链接凭据捕获依赖落地页的 Capture 设置通话记录依赖 VoIP 平台的录音物理访问日志依赖门禁系统数据。数据收集不完整报告阶段的风险评分就会失真。总结一次合格的社会工程渗透测试衡量的是组织的人类安全韧性而非攻击者的战绩。其完整闭环是OSINT 画像确定骗谁→ 借口设计确定怎么骗→ GoPhish/Evilginx/SET 执行实施骗→ 指标漏斗量化骗到多少→ 风险矩阵定位哪里最脆弱→ 整改建议驱动如何加固。结合仓库提供的 process.py 与 agent.py 脚本可以将指标分析环节自动化参考 template.md 可快速产出标准报告。而这一切的前提永远是明确、书面、经法务审查的授权——这既是行业最佳实践对应 NIST SP 800-61、PTES 等标准也是所有社会工程测试不可逾越的红线。【免费下载链接】Anthropic-Cybersecurity-Skills817 structured cybersecurity skills for AI agents · Mapped to 6 frameworks: MITRE ATTCK, 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),仅供参考
网站建设高端定制企业官网