chrome debug和我一些挖洞的经验 (Adam)
字数 950 2025-08-10 08:28:42

Chrome Debug与Web渗透测试技巧详解

1. 通过替换响应包值绕过签名

原理分析

  • 数据在加密前输入
  • 被修改的数据未经过多次正则处理直接进入签名算法
  • 若经过正则替换,通常仅适用于简单int类型替换

适用场景

  • 主要适用于APP场景
  • 当签名算法未对输入数据进行严格处理时

2. Chrome Debug技巧详解

基础调试方法

常用快捷键:

  • F9:单步执行(逐行)
  • F10:跳过函数(不进入函数内部)
  • F8:继续执行(放行断点)

三种调试方式:

  1. XHR断点(针对特定URI的数据包)
  2. 事件监听断点(如鼠标点击事件)
  3. 手动函数断点

调试流程建议

  1. 初学者建议使用F9逐步跟踪数据流
  2. 熟悉后可直接定位关键代码行(如27-33行)
  3. 通过console打印变量类型和结果进行分析

Debug绕过签名实战应用

  • 适用于存在复杂签名难以分离算法的情况
  • 示例场景:sum=addend2+addend1(字符串拼接而非数值相加)
  • 通过调试可修改为A+B=AC而非正常的A+B=AB

高级技巧

  • 使用XHR断点或关键字搜索直接定位关键JS代码
  • 特别适用于大型项目(单个JS文件可能达十几MB)

3. Web渗透测试实用技巧

畸形数据包利用

  • 漏洞产生关键在于代码与数据库的交互方式
  • 不限于数据包形式(GET/POST/PUT/HTTP走私等)
  • 只要路由正确,非正常逻辑也可能触发漏洞

数据格式改变技巧

  1. GET → POST
  2. POST → JSON(可能触发fastjson反序列化)
  3. POST → XML
  4. POST → multipart(可能发现SQL注入)

关键点: 修改前后服务器响应相同但存在漏洞

参数污染技巧

  1. 在关键字段前添加空字段
  2. 无限扩充已有字段内容
  3. 创建大量无效字段
  4. 应用场景:绕过上传类型限制等

JavaScript相关技巧

  • JS是漏洞最多的地方之一
  • Vue项目可利用.map文件还原静态逻辑文件

操作步骤:

  1. 检查是否存在.js.map文件(如app.js.map
  2. 使用shuji工具反编译(需安装Node.js)
    npm install -g shuji
    shuji app.js.map -o desfile
    
  3. 用VSCode查看生成的desfile文件

4. 参考资源

Chrome Debug与Web渗透测试技巧详解 1. 通过替换响应包值绕过签名 原理分析 数据在加密前输入 被修改的数据未经过多次正则处理直接进入签名算法 若经过正则替换,通常仅适用于简单int类型替换 适用场景 主要适用于APP场景 当签名算法未对输入数据进行严格处理时 2. Chrome Debug技巧详解 基础调试方法 常用快捷键: F9 :单步执行(逐行) F10 :跳过函数(不进入函数内部) F8 :继续执行(放行断点) 三种调试方式: XHR断点(针对特定URI的数据包) 事件监听断点(如鼠标点击事件) 手动函数断点 调试流程建议 初学者建议使用 F9 逐步跟踪数据流 熟悉后可直接定位关键代码行(如27-33行) 通过console打印变量类型和结果进行分析 Debug绕过签名实战应用 适用于存在复杂签名难以分离算法的情况 示例场景: sum=addend2+addend1 (字符串拼接而非数值相加) 通过调试可修改为 A+B=AC 而非正常的 A+B=AB 高级技巧 使用XHR断点或关键字搜索直接定位关键JS代码 特别适用于大型项目(单个JS文件可能达十几MB) 3. Web渗透测试实用技巧 畸形数据包利用 漏洞产生关键在于代码与数据库的交互方式 不限于数据包形式(GET/POST/PUT/HTTP走私等) 只要路由正确,非正常逻辑也可能触发漏洞 数据格式改变技巧 GET → POST POST → JSON(可能触发fastjson反序列化) POST → XML POST → multipart(可能发现SQL注入) 关键点: 修改前后服务器响应相同但存在漏洞 参数污染技巧 在关键字段前添加空字段 无限扩充已有字段内容 创建大量无效字段 应用场景:绕过上传类型限制等 JavaScript相关技巧 JS是漏洞最多的地方之一 Vue项目可利用.map文件还原静态逻辑文件 操作步骤: 检查是否存在.js.map文件(如 app.js.map ) 使用shuji工具反编译(需安装Node.js) 用VSCode查看生成的desfile文件 4. 参考资源 Chrome Debug参考文章: Chrome调试技巧 shuji工具: npmjs shuji