iw00tr00t/pci-network-pentest-framework

GitHub: iw00tr00t/pci-network-pentest-framework

这是一个专为 PCI DSS v4.0 合规设计的网络渗透测试与分段验证框架,提供从环境搭建到报告生成的完整九阶段方法论及自动化脚本。

Stars: 0 | Forks: 0

# PCI DSS 网络渗透测试与分段框架 一个久经考验、全面的 PCI DSS 网络渗透测试和分段验证评估框架。由经验丰富的渗透测试人员基于实战经验构建。 ``` ____ ____ ___ _ _ _ ____ _ _ | _ \ / ___|_ _| | \ | | ___| |_ | _ \ ___ _ __ | |_ ___ ___| |_ | |_) | | | | | \| |/ _ \ __| | |_) / _ \ '_ \| __/ _ \/ __| __| | __/| |___ | | | |\ | __/ |_ | __/ __/ | | | || __/\__ \ |_ |_| \____|___| |_| \_|\___|\__| |_| \___|_| |_|\__\___||___/\__| & Segmentation Testing Framework v1.0 ``` ## 这是什么? 这是一个用于执行 PCI DSS 内部网络渗透测试及分段验证的**完整、即插即用框架**。它涵盖了从初始界定范围到最终报告的所有环节,并与 **PCI DSS v4.0** 要求保持一致。 **克隆它。配置它。运行它。** 仅此而已。无需猜测,无需在项目中途 Google 搜索。 无论你是新手还是资深人士,该框架都提供: - **分步说明** —— 逐日演练,包含确切的命令 - **9 阶段方法论**,覆盖整个项目生命周期 - **现成可用的模板**,用于范围界定、发现、分段矩阵和资产清单 - **自动化脚本**,可部署到 Kali VM 并执行 - **PCI DSS v4.0 要求映射**,覆盖每个测试阶段 - **报告指南**,附带通用发现库,让你无需从零开始 - **工具安装指南** —— 一条命令安装所有工具 ## 从这里开始 其他所有内容(`templates/`、`scripts/`、`docs/`)均参考自这些指南。 ## 适用对象 - 进行 PCI DSS 网络评估的**渗透测试人员** - 验证持卡人数据环境分段的**红队** - 需要渗透测试证据的 **QSAs**(合格安全评估员) - 与商户或服务提供商合作的**安全顾问** - 参与 PCI 范围内内部网络项目的**漏洞赏金猎人** ## 框架结构 ``` pci-network-pentest-framework/ │ ├── README.md # You are here ├── GETTING-STARTED.md # Complete walkthrough (read first!) ├── DAY-BY-DAY.md # Day-by-day commands & decisions ├── INTERNAL-PENTEST-GUIDE.md # Full internal network assessment guide ├── TOOL-SETUP.md # Tool installation guide ├── METHODOLOGY.md # 9-phase methodology reference ├── QUICK-START.md # TL;DR for experienced pentesters ├── LICENSE │ ├── templates/ # Ready-to-use document templates │ ├── scope.md # Engagement scope template │ ├── checklist.md # Full assessment checklist │ ├── segmentation-matrix.md # Bidirectional segmentation results │ ├── asset-inventory.md # Host & service inventory │ ├── finding-template.md # Per-finding report template │ └── engagement-config.env # Variable configuration file │ ├── scripts/ # Automation scripts │ ├── setup.sh # Phase 0: Environment setup │ ├── segmentation-test.sh # Phase 1: Segmentation testing │ ├── cde-recon.sh # Phase 2: CDE reconnaissance │ ├── ad-attack.sh # Phase 3: Active Directory assessment │ └── parse-results.sh # Result parsing & quick wins │ ├── docs/ # Additional documentation │ ├── REPORTING-GUIDE.md # How to write findings & reports │ ├── pci-dss-v4-mapping.md # PCI DSS v4.0 requirement mapping │ ├── attack-playbook.md # Attack techniques reference │ └── emergency-procedures.md # Incident & emergency protocols │ └── examples/ # Example outputs (sanitized) └── sample-segmentation-matrix.md # Example completed matrix ``` ## 快速开始 ### 1. 克隆与配置 ``` git clone https://github.com/iw00tr00t/pci-network-pentest-framework.git cd pci-network-pentest-framework # 复制并编辑配置文件 cp templates/engagement-config.env my-engagement.env nano my-engagement.env ``` ### 2. 填写项目变量 使用你的特定项目详情编辑 `my-engagement.env`: ``` # Engagement Info ENGAGEMENT_ID="PT12345" CLIENT_NAME="Acme Corp" # CDE 网络 CDE_CIDR="10.x.x.0/24" CDE_KALI_IP="10.x.x.x" # 非 CDE 网络 NONCDE_CIDR="10.x.x.0/24" NONCDE_KALI_IP="10.x.x.x" ``` ### 3. 将模板复制到你的项目文件夹 ``` # 创建 engagement 目录 mkdir -p ~/engagements/${ENGAGEMENT_ID}/{findings,evidence,scans,ad,traffic-captures,scripts,report} # 复制并自定义模板 cp templates/*.md ~/engagements/${ENGAGEMENT_ID}/ ``` ### 4. 将脚本部署到 Kali VMs ``` # 使用 SCP 将脚本传输到你的 Kali VMs scp scripts/*.sh kali@:/root/ ``` ### 5. 开始测试 ``` # 在 Kali VM 上 - 阶段 0:Setup chmod +x *.sh ./setup.sh cde # or 'noncde' for the non-CDE VM # 阶段 1:Segmentation Testing ./segmentation-test.sh noncde-to-cde # from Non-CDE Kali ./segmentation-test.sh cde-to-noncde # from CDE Kali ``` ## 方法论概览 | 阶段 | 名称 | 时长 | 优先级 | |-------|------|----------|----------| | **0** | 前期准备与环境验证 | Day 1 (2-4 hrs) | Setup | | **1** | **分段测试** | Day 1-2 | **CRITICAL** | | **2** | CDE 网络侦察 | Day 2-3 | High | | **3** | Active Directory 评估 | Day 3 | High | | **4** | 漏洞评估 | Day 3-4 | High | | **5** | 利用与横向移动 | Day 4-5 | Medium | | **6** | 非 CDE/访客网络评估 | Day 5-6 | Medium | | **7** | 行业特定与 PCI 检查 | Day 6 | Medium | | **8** | 检测与日志验证 | Day 6 | Low | | **9** | 文档与报告 | Day 6-7 | Required | ## 涵盖的 PCI DSS v4.0 要求 | 要求 | 描述 | 框架阶段 | |-------------|-------------|-----------------| | 1.2.1 | NSC 限制入站 CDE 流量 | Phase 1, 7 | | 1.2.5 | 已识别服务/协议/端口 | Phase 1, 7 | | 1.3.1 | 限制入站 CDE 流量 | Phase 1 | | 1.3.2 | 限制出站 CDE 流量 | Phase 1 | | 1.4.1 | 受信与不受信网络间的 NSC | Phase 6 | | 2.2.1 | 已应用配置标准 | Phase 4 | | 2.2.2 | 已移除/禁用厂商默认值 | Phase 2-4 | | 2.2.7 | 非控制台管理已加密 | Phase 4 | | 4.2.1 | PAN 传输使用强加密 | Phase 4 | | 6.3.3 | 已安装安全补丁 | Phase 4 | | 11.4.1 | 内部渗透测试方法论 | Phase 1-5 | | 11.4.3 | 可利用漏洞已修正/重测 | Phase 4-5 | | 11.4.5 | 分段控制已验证 | Phase 1 | | 11.4.6 | 从 CDE 外部测试分段 | Phase 1 | ## 主要功能 ### 分段测试 (Phase 1) - **双向测试** - 非 CDE→CDE 和 CDE→非 CDE - **IPv6 分段** - 经常被忽视,可能绕过所有 IPv4 规则 - **高级绕过技术** - DNS 隧道、ICMP 隧道、分片、源路由 - **出站测试** - 数据能否离开 CDE? - **完整的分段矩阵模板**,包含逐协议结果 ### Active Directory 攻击路径 (Phase 3) - BloodHound 采集与分析 - Kerberoasting & AS-REP Roasting - ADCS (ESC1-ESC8) 利用 - 强制攻击 - NTLM 中继链 - 具备锁定感知的密码喷射 ### 行业特定检查 (Phase 7) 可根据客户的行业进行定制: - **酒店业** - POS 终端、支付网关、IoT/HVAC - **零售业** - POS 系统、电子商务后端、库存系统 - **医疗保健** - 医疗设备、PACS、HL7/FHIR 端点 - **金融业** - 交易平台、SWIFT 接口、ATM 网络 - **任何商户** - 支付处理、令牌化、加密 ## 所需工具 该框架假设使用标准的 Kali Linux 工具集: | 类别 | 工具 | |----------|-------| | **扫描** | Nmap, Masscan, arp-scan, netdiscover | | **AD 评估** | BloodHound, SharpHound, Impacket suite, Certipy, Rubeus | | **凭证攻击** | Responder, mitm6, NetExec (CrackMapExec), hashcat/john | | **利用** | Metasploit, Impacket (psexec/wmiexec/dcomexec), evil-winrm | | **枚举** | enum4linux-ng, smbclient, ldapsearch, snmpwalk, onesixtyone | | **Web** | Nikto, Gobuster, testssl.sh | | **网络** | Wireshark, tcpdump, traceroute | | **报告** | gowitness (screenshots) | ## 操作安全规则 该框架专为**生产环境**设计。每个脚本和检查清单项都遵循以下规则: 1. **拒绝 DoS** - 无破坏性利用、无服务重启、无数据修改 2. **CHD 掩码** - PAN 掩码为前 6/后 4 位,绝不外传 3. **留存一切证据** - 截图、记录、为每个操作打上时间戳 4. **范围纪律** - 仅测试授权网络 5. **干净退出** - 移除所有工具、清除战利品、无持久访问 6. **应急程序** - 发现主动入侵时立即停止,并立即通知 ## 免责声明 该框架**仅用于授权的安全评估**。在执行任何渗透测试活动之前,请务必确保你拥有明确的书面许可。未经授权访问计算机系统是非法的。 作者不对该框架的误用负责。请负责任且合乎道德地使用。 ## 许可证 本项目根据 MIT 许可证授权 - 有关详细信息,请参阅 [LICENSE](LICENSE) 文件。 ## 致谢 - [PCI Security Standards Council](https://www.pcisecuritystandards.org/) - PCI DSS v4.0 标准 - [OWASP](https://owasp.org/) - 测试方法论 - [PTES](http://www.pentest-standard.org/) - 渗透测试执行标准 - 感谢渗透测试社区的持续知识分享 如果你发现该仓库对你的 PCI 评估有帮助,请给个 **Star**!
标签:Cardholder Data, Cutter, PCI DSS, Penetration Testing, QSAs, Segmentation Validation, v4.0, 反取证, 安全指南, 安全评估, 工具集, 应用安全, 数据展示, 模板, 测试框架, 红队, 网络分段, 网络安全, 网络调试, 网络连接监控, 脚本, 自动化, 防御加固, 隐私保护