基于规则的流量加解密工具-CloudX
字数 1299 2025-09-01 11:26:17

CloudX 流量加解密工具使用教程

一、工具简介

CloudX 是一款基于规则的流量加解密工具,主要用于处理 HTTP 请求/响应中的加密数据。它具有以下特点:

  • 提供可视化界面配置加解密规则
  • 支持多种加密算法和参数生成规则
  • 可集成到 Burp Suite 等代理工具中使用
  • 能够自动处理请求参数和响应数据的加解密

二、JS逆向分析

在示例场景中,目标系统使用了以下加密逻辑:

1. 请求参数构成

  • r:代表时间戳
  • n:请求体参数
  • i:由 p() 函数生成的加密接口标识
  • s:将 (n + i + r) 进行 MD5 加密后的签名

2. 关键函数分析

  • p() 函数:生成一个符合 UUID v4 标准的唯一标识符(32位随机字符串)
  • l(t) 函数:负责请求体的加密
    • 算法:AES CBC 模式
    • 填充:Pkcs7
    • Key 和 IV:均为 1234567891234567

三、CloudX 配置步骤

1. 发送数据包到 CloudX

将需要处理的加密请求发送到 CloudX 工具中,工具会自动解析并显示请求参数。

2. 配置 timestamp 参数规则

  1. 选择请求参数中的 timestamp
  2. 选择内置函数列表中的"时间戳-毫秒"
  3. 形成驱动表达式
  4. 点击"验证当前规则"
  5. 验证成功后点击"添加规则"

注意:应选择毫秒级别的时间戳函数,因为 Date.parse(new Date) 生成的是毫秒级时间戳。

3. 配置 requestId 参数规则

  1. 点击请求参数中的 requestId
  2. 选择"随机字符(字母数字)"
  3. 设置长度为32位
  4. 添加到自定义参数功能界面
  5. 点击"自定义参数"中的"添加参数"
  6. 形成驱动表达式
  7. 验证并添加到规则列表

4. 配置 sign 参数规则

  1. 按照顺序添加表达式(与 timestamp 和 requestId 配置类似)
  2. 注意表达式顺序要与实际签名生成逻辑一致

5. 配置请求体加密规则

  1. 对请求体右键,选择"AES"进入配置界面
  2. 配置相关 Key 和 IV(示例中为 1234567891234567
  3. 添加请求体规则

6. 配置返回体规则

  1. 类似请求体配置方法
  2. 设置相应的解密规则

7. 调整规则顺序

根据 JS 执行的逻辑顺序调整规则的执行顺序,确保参数生成和加密/解密流程正确。

四、验证与测试

  1. 重新发送登录请求,在 history 中查看加密数据是否已变成明文
  2. 在 repeater 中修改参数进行测试
  3. 验证各参数生成和加解密是否正确

五、注意事项

  1. x-request-id 中的连字符 - 可能会与减号或加号冲突,需特别注意
  2. 规则顺序对加解密结果有重要影响,必须按照实际业务逻辑顺序排列
  3. 不同系统的加密算法和参数可能不同,需要根据实际情况调整配置

六、参考资源

  1. 视频教程:Bilibili 教程链接
  2. 工具下载:GitHub 仓库

七、总结

CloudX 提供了一种便捷的方式来处理 Web 应用中的加密流量,通过规则配置可以自动化完成参数生成、签名计算和数据加解密。掌握该工具的使用可以大大提高安全测试和逆向分析的效率。

CloudX 流量加解密工具使用教程 一、工具简介 CloudX 是一款基于规则的流量加解密工具,主要用于处理 HTTP 请求/响应中的加密数据。它具有以下特点: 提供可视化界面配置加解密规则 支持多种加密算法和参数生成规则 可集成到 Burp Suite 等代理工具中使用 能够自动处理请求参数和响应数据的加解密 二、JS逆向分析 在示例场景中,目标系统使用了以下加密逻辑: 1. 请求参数构成 r :代表时间戳 n :请求体参数 i :由 p() 函数生成的加密接口标识 s :将 (n + i + r) 进行 MD5 加密后的签名 2. 关键函数分析 p() 函数:生成一个符合 UUID v4 标准的唯一标识符(32位随机字符串) l(t) 函数:负责请求体的加密 算法:AES CBC 模式 填充:Pkcs7 Key 和 IV:均为 1234567891234567 三、CloudX 配置步骤 1. 发送数据包到 CloudX 将需要处理的加密请求发送到 CloudX 工具中,工具会自动解析并显示请求参数。 2. 配置 timestamp 参数规则 选择请求参数中的 timestamp 选择内置函数列表中的"时间戳-毫秒" 形成驱动表达式 点击"验证当前规则" 验证成功后点击"添加规则" 注意 :应选择毫秒级别的时间戳函数,因为 Date.parse(new Date) 生成的是毫秒级时间戳。 3. 配置 requestId 参数规则 点击请求参数中的 requestId 选择"随机字符(字母数字)" 设置长度为32位 添加到自定义参数功能界面 点击"自定义参数"中的"添加参数" 形成驱动表达式 验证并添加到规则列表 4. 配置 sign 参数规则 按照顺序添加表达式(与 timestamp 和 requestId 配置类似) 注意表达式顺序要与实际签名生成逻辑一致 5. 配置请求体加密规则 对请求体右键,选择"AES"进入配置界面 配置相关 Key 和 IV(示例中为 1234567891234567 ) 添加请求体规则 6. 配置返回体规则 类似请求体配置方法 设置相应的解密规则 7. 调整规则顺序 根据 JS 执行的逻辑顺序调整规则的执行顺序,确保参数生成和加密/解密流程正确。 四、验证与测试 重新发送登录请求,在 history 中查看加密数据是否已变成明文 在 repeater 中修改参数进行测试 验证各参数生成和加解密是否正确 五、注意事项 x-request-id 中的连字符 - 可能会与减号或加号冲突,需特别注意 规则顺序对加解密结果有重要影响,必须按照实际业务逻辑顺序排列 不同系统的加密算法和参数可能不同,需要根据实际情况调整配置 六、参考资源 视频教程: Bilibili 教程链接 工具下载: GitHub 仓库 七、总结 CloudX 提供了一种便捷的方式来处理 Web 应用中的加密流量,通过规则配置可以自动化完成参数生成、签名计算和数据加解密。掌握该工具的使用可以大大提高安全测试和逆向分析的效率。