2026/6/20 10:12:28
网站建设
项目流程
大兴模版网站建设哪家好,官网建设建站,自己怎样免费建网站,c2c模式分类第102天#xff1a;漏洞发现-漏扫项目篇Poc开发Yaml语法插件一键生成匹配结_笔记
一、漏洞发现—漏扫项目篇#xfeff;00:15
1. 漏洞扫描工具分类#xfeff;01:50
综合类工具#xff1a; BurpSuite#xff1a;集成化Web应用测试平台#xff0c;…第102天漏洞发现-漏扫项目篇Poc开发Yaml语法插件一键生成匹配结_笔记一、漏洞发现—漏扫项目篇00:151. 漏洞扫描工具分类01:50综合类工具BurpSuite集成化Web应用测试平台共享请求处理机制支持HTTP消息处理、代理、日志等功能Xray社区版漏洞扫描工具支持主动/被动扫描跨平台运行Windows/Linux/macOSAWVS商业Web漏洞扫描器可检测SQL注入、XSS等漏洞具备图形化界面和报告生成功能Goby自动化攻击面梳理工具支持靶场攻防演练和横向渗透特征类工具Nuclei基于YAML模板的定制化扫描器支持多协议检测拥有上万POC库Afrog可定制PoC的漏洞挖掘工具覆盖CVE/CNVD/默认口令等漏洞类型Yakit单兵安全平台集成端口扫描、MITM劫持等渗透测试功能2. POC开发核心要点1开发方式对比人工编写优势可直接复用Nuclei现有模板上万个POC资源方法掌握YAML语法即可快速开发GPT辅助开发直接问答模式生成代码需二次修改精度较低API集成模式需解决网络问题申请API Key开通会员适合专业开发场景2Yaml语法要点03:50匹配规则支持正则表达式匹配响应内容可提取HTTP头/响应体关键字段交互控制定义请求重试机制设置超时阈值协议支持覆盖HTTP/TCP/DNS/FILE等协议检测3. 主流工具详解Nuclei优势模板数量社区维护模板超万个开发效率YAML语法比传统编程语言更高效扩展性Go语言开发支持自定义模块AWVS特色企业级漏洞管理功能自动生成合规性报告Xray特性内置盲打平台支持流量镜像分析4. 演示案例04:081YAML语法基础基本语法规则层级关系使用缩进表示层级关系不同层级的元素需要左侧对齐缩进规则不允许使用Tab键缩进只允许使用空格缩进同级元素缩进空格数必须一致如2空格或4空格对齐要求相同层级的元素必须左侧对齐开发环境配置工具准备VSCode编辑器YAML语言支持插件参考资料官方文档https://docs.nuclei.sh/template-guide/introduction中文教程CSDN相关文章2Nuclei-Poc模板结构五部分核心结构ID漏洞的唯一标识编号Info包含漏洞的详细信息名称(name)作者(author)严重性(severity)描述(description)参考(reference)标签(tags)请求(Request)根据漏洞类型选择协议HTTP请求文件操作TCP连接等匹配器(Matchers)用于验证漏洞存在的结果匹配提取器(Extractors)用于从响应中提取特定信息匹配器类型statusHTTP状态码比较size响应内容长度比较word关键词匹配regex正则表达式匹配binary二进制数据匹配dsl领域特定语言匹配3开发实践要点模板编写流程步骤1创建独立编号步骤2填写详细信息步骤3编写协议流程步骤4设计结果匹配模式实际案例解析案例MinIO集群模式信息泄露漏洞(CVE-2023-28432)关键字段4注意事项缩进处理必须使用空格而非Tab键层级对齐同级元素必须严格对齐字段格式关键字段如id、info等必须正确填写结果验证匹配器和提取器需要精心设计以确保准确性5应用案例16:14例题Yaml模板编写模板结构id不得包含空格用于唯一标识POCinfo块包含名称、作者、严重性、描述、参考和标签等信息请求块定义HTTP/file/tcp等请求方式匹配器用于验证漏洞存在的条件提取器从响应中提取特定信息编写要点使用空格缩进表示层级关系禁止使用Tab键相同层级元素必须左侧对齐info块中的信息可根据需要选择性填写非必填项例题匹配器类型21:53主要类型status匹配状态码size匹配内容长度word匹配特定字符串regex使用正则表达式匹配binary匹配二进制数据dsl使用DSL表达式匹配匹配条件AND所有条件必须同时满足OR任一条件满足即可默认使用AND条件例题提取器类型25:28主要类型regex使用正则表达式提取kval从响应头/Cookie中提取键值对json从JSON响应中提取数据xpath从HTML中基于xpath提取dsl使用DSL表达式提取应用场景当返回结果包含动态内容时使用regex需要提取特定头信息时使用kval处理JSON格式响应时使用json提取器开发流程总结29:53例题poc模板套用30:27步骤复制现有模板作为基础修改id字段确保唯一性更新info块中的相关信息编写或修改请求部分配置匹配器或提取器优势避免从头编写提高效率确保格式规范减少出错概率例题poc模板应用32:03案例1CVE-2023-28432类型信息泄露漏洞检测方式发送POST请求检查返回内容匹配条件检查响应中是否包含MINIO_SECRET_KEYMINIO_SECRET_KEYMINIO_SECRET_KEY和MINIO_ROOT_PASSWORDMINIO_ROOT_PASSWORDMINIO_ROOT_PASSWORD案例2CVE-2022-30525类型远程命令注入检测方式交互式验证特点需要更复杂的匹配逻辑二、漏洞发现35:061. 创建Nuclei模板文件1模板文件结构metadata部分id: 漏洞唯一标识符如CVE编号info: 包含漏洞名称、作者、严重等级等基本信息tags: 用于分类的关键词标签如wpscan、wordpress等http请求部分raw: 包含HTTP请求原始数据method: 请求方法GET/POST等path: 请求路径如/wp-admin/admin.phpheaders: 请求头信息如Content-Type等2模板创建方法创建步骤在nuclei-templates目录下新建YAML文件复制现有模板内容作为基础修改关键字段id、info、http请求等注意事项文件编码应为UTF-8缩进使用2个空格非Tab严格遵循YAML语法格式3漏洞检测逻辑匹配器配置matchers-condition: 设置匹配条件关系and/or典型检测条件响应头包含text/html响应体包含XSS payload特征状态码为特定值认证请求需要先发送登录请求获取cookie使用cookie-reuse: true复用会话4模板修改要点36:40关键修改项更新CVE编号和漏洞名称调整HTTP请求路径和参数修改匹配器中的特征字符串更新reference中的参考链接调试技巧使用max-request: 2限制请求次数先测试单条请求再组合完整POC2. 修改poc36:341MinIO集群模式信息泄露漏洞(CVE-2023-28432)分析漏洞描述: MinIO是一个开源对象存储系统。在其RELEASE.2023-03-20T20-16-18Z版本不含以前集群模式部署下存在一处信息泄露漏洞。攻击方式: 攻击者可以通过发送一个POST数据包获取进程所有的环境变量其中包含敏感信息如账号密码MINIO_SECRET_KEYMINIO_SECRET_KEYMINIO_SECRET_KEY和MINIO_ROOT_PASSWORDMINIO_ROOT_PASSWORDMINIO_ROOT_PASSWORD。参考链接: https://github.com/vulhub/vulhub/blob/master/minio/CVE-2023-28432/README.zh-cn.md漏洞详细信息填写37:10漏洞编号: CVE-2023-28432漏洞名称: MinIO集群模式信息泄露漏洞作者: xiaodisec严重程度: medium修复建议: 升级到RELEASE.2023-03-20T20-16-18Z或更高版本PoC开发要点开发步骤:创建独立编号填入详细信息提交协议流程编写结果匹配模式判断结果提取模式判断标签设置: 建议使用minio、“cve”、cve2023等关键词进行标记便于后续归类总结漏洞评分信息CVSS评分: 6.1 (CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N)CWE分类: CWE-79EPSS评分: 0.00133 (百分位0.47722)参考资源主要参考:https://wpscan.com/vulnerability/7142a538-7c3d-4dd0-bd2c-cbd2efaf53c5https://plugins.trac.wordpress.org/changeset/2661008补充说明: 评分信息可根据实际需求选择性填写但参考链接应确保准确性和权威性2修改请求请求方法修改38:03方法选择模板默认使用GET请求但实际漏洞利用需要改为POST请求修改技巧可直接参考其他模板中的POST请求写法无需从头构造注意事项不同模板可能有不同写法选择最简单的一种即可数据包构造方式直接构造在raw字段中完整构造HTTP请求数据包分段构造使用method、path等字段分别定义请求各部分选择建议直接构造方式更简单直观适合初学者使用请求次数控制单次请求对于只需一次请求的漏洞可删除多余的请求配置多次请求某些漏洞需要先获取token再提交此时需保留两次请求配置方法通过req-condition和matchers-condition控制请求流程变量使用规范Hostname变量使用${Hostname}动态获取目标域名固定值风险直接写死域名会导致数据包无法适配不同目标其他变量${BaseURL}包含协议和端口的基础URL${Port}目标端口号${Path}请求路径匹配器配置匹配内容根据漏洞特征设置body或header中的关键字符串匹配条件type: word 表示关键词匹配part: body/header 指定匹配位置condition: and/or 设置多个条件的逻辑关系简化原则对于简单漏洞可只保留必要的匹配条件3修改匹配器41:36应用案例43:17例题CVE-2023-28432漏洞利用匹配器简化当只有一个匹配条件时可以删除多余的匹配器仅保留匹配关键字的匹配器body匹配规则单个请求直接写body多个请求时第二个请求写body_rh_and_r也指第二个请求的值关键字匹配只需匹配两个特定关键字注意引号使用单引号或双引号状态码验证可添加状态码为200的验证条件增强匹配准确性逻辑运算符and两个条件都必须满足or只需满足其中一个条件测试验证修改匹配关键字测试正确性通过改变状态码验证逻辑条件删除匹配器后应无法检测到漏洞例题交互式漏洞利用50:56交互式匹配原理用于解决无数据回显的命令执行漏洞检测DNS交互技术让目标执行ping命令访问特定DNS地址通过检测是否收到DNS请求判断漏洞存在工具内置变量使用扫描工具自带的接收器变量作为ping目标与传统匹配区别不依赖固定的返回内容匹配通过检测网络交互行为判断漏洞应用场景命令执行无回显情况需要外部网络交互验证的漏洞实现方法替换POC中的DNS地址为工具内置变量配置交互式匹配器检测DNS请求漏洞检测实践技巧POC编写要点保持简洁删除不必要的内容关键匹配条件要明确合理使用逻辑运算符测试验证流程基础功能测试负面测试修改为不存在的条件边界条件测试逻辑条件验证调试技巧逐步添加匹配条件通过修改条件验证匹配逻辑观察工具返回信息判断问题3. 插件一键生成57:051模板文件创建与修改模板复制方法通过创建r点yam文件复制粘贴模板内容进行修改修改要点需要修改编号和名称信息其他内容可根据需求选择性修改示例中将名称改为二零二二零其他保持默认2数据包处理技巧长度设置原则地址相关数据包长度不能固定因为目标地址长度不确定其他不影响的数据包可以固定长度注意事项固定长度会导致地址和后续内容受限必须理解每个poc的实际意义不能随意固定长度需要具备相关前置知识才能正确设置3变量定义与使用变量定义使用payload或小迪作为变量名格式示例小迪 ‘payload内容’执行命令处理将需要改变的内容定义为变量使用引号包裹变量值示例中采用拼接地址的方式4匹配器配置DNS匹配设置可直接套用现有模板无特殊条件时可暂停某些配置APP相关配置可选择性添加响应检测通过DNS请求判断漏洞存在使用模板可简化配置过程5检测与调试检测流程先单个目标测试验证脚本正确性确认存在漏洞的目标应能被检测到常见问题排查检查请求包和返回匹配配置变量命名需保持一致注意特殊符号如冒号的完整性空格和编码格式可能影响检测结果6批量检测实施批量检测方法使用r点PM配合目标列表文件可检测大量目标并输出结果结果验证对检测出的目标进行实际访问验证确保检测结果的准确性7插件安装与使用插件获取方式通过官方商店安装新版本支持或从GitHub下载后手动导入配置要点只需配置nuc内网文件路径启用后保存即可使用使用优势简化poc编写过程适合基础较弱的用户但仍需理解基本原理4. 插件使用01:12:151漏洞验证与POC模板生成01:16:10漏洞浮现流程抓包方法直接使用抓包工具获取目标地址请求包复制地址到工具中刷新即可捕获完整数据包端口修改要点必须同步修改请求地址和发包位置的端口号如9000端口单处修改会导致失败响应验证通过检查响应包中特定字段如word、mini user等判断漏洞存在性插件自动生成模板操作路径使用插件时选择拓展→武装裁剪→创建模板即可自动生成基础模板模板自定义需手动填写模板名称、ID等元数据自动生成路径和检测逻辑框架支持添加额外检测条件如固定响应匹配响应匹配技巧需将成功特征固定为响应条件否则会出现no secret未匹配情况模板应用与测试测试流程生成后立即运行测试观察是否返回预期漏洞特征文件管理单独使用的模板需指定存放目录系统集成的模板需复制到官方指定目录如cpe归档目录重新上传后自动加载更新2手工漏洞验证实践01:19:12验证流程双重验证原则既要验证检测脚本能跑出漏洞又要手工复现确认漏洞真实存在网络环境处理国外目标站点可能响应缓慢可尝试代理加速如小猫咪代理需排除本地网络带宽限制因素特殊场景处理交互式漏洞验证无法使用标准模板生成器需手动编写完整检测逻辑示例通过TCP建立连接验证端口类漏洞协议适配HTTP协议使用request模块非HTTP协议需改用TCP等底层协议匹配规则需对应协议特征多工具对比xray特性采用name/rules/request结构社区贡献机制提交POC可获奖励匹配规则包含状态码和内容双重验证yaklit特性包含查检和POC管理双模块语法复杂度较高但功能更完善通用编写原则逻辑结构可跨工具复用需根据工具文档调整语法细节90%漏洞可通过HTTP协议检测开发能力要求必须掌握YAML语法基础HTTP协议交互原理正则表达式匹配进阶需求Socket网络编程用于非HTTP漏洞多语言脚本编写能力Python等协议解码/编码技术三、知识小结知识点核心内容关键工具/技术难度系数YAML语法基础大小写敏感/空格缩进规则/层次结构表示VS CodeYAML插件⭐⭐POC开发框架ID标识/Info描述/请求协议/匹配器/提取器五要素Nuclei模板结构⭐⭐⭐HTTP漏洞检测POST请求构造/状态码匹配/响应体关键词检测BurpSuite抓包分析⭐⭐⭐⭐DNS交互验证无回显漏洞的DNSLOG验证技术Interactsh服务集成⭐⭐⭐⭐多工具语法对比Nuclei/Xray/Yakit的POC结构差异官方文档对照⭐⭐⭐⭐AI辅助开发GPT直接问答 vs API集成开发模式OpenAI库调用⭐⭐⭐⭐⭐插件化开发巴布图模板生成器使用流程商店插件安装/包导入⭐⭐实战案例1CVE-2023漏洞检测mini_user关键词匹配状态码200双条件AND验证⭐⭐⭐实战案例2命令执行漏洞DNS交互式验证技术Payload变量替换/Interactsh回调⭐⭐⭐⭐环境配置要点VS Code必备插件中文包/YAML语法校验插件市场安装⭐