加密请求包的爆破

2024-08-21 03:36
文章标签 加密 请求 爆破

本文主要是介绍加密请求包的爆破,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本文来源无问社区,更多实战内容可前往查看icon-default.png?t=N7T8http://wwlib.cn/index.php/artread/artid/10414.html

在平时进行漏洞挖掘的时候经常会在诸如登陆的地方遇到密码经过了加密,而且不是也 base64 或者 md5 啥的,而可能是 RSA 之类的,这就会对爆破造成很大的阻碍,因为 burp 其自带的编码和 hash 算法已经不够用了,因此我找到了一款插件:BurpCrypt

插件下载地址:

https://github.com/whwlsfb/BurpCrypto

BurpCrypto 内置的 RSA、AES、DES 模块可应对较为简单的前端加密接口,较为复杂的加密算法,可使用 ExecJS 模块直接手动编写处理代码。

对称加密

Base64 编码与 HEX 编码常常用于编码二进制数据

UTF8String 则是我们操作系统、网页中最常见的字符串的编码方式,下方是对 test_z 进行 Base64、HEX、UTF8String 编码的示例:

Base64:dGVzdF96HEX:746573745f7aUTF8String:test_z

AES 和 DES 加密都属于对称加密算法,既加解密使用同一套密钥的加密算法,同时也是目前前端加密中较为常见的加密算法

非对称加密

RSA 算法则属于非对称加密算法,密钥分为公钥与私钥,RSA 加密支持两种公钥格式的输入,分别为

  • X509
  • ModulusAndExponent

X509 密钥格式表现为一串由 Base64 编码后的字符串,常常以 MIG 开头。

ModulusAndExponent(模数,指数) 则表现为两个 HEX 编码的参数,Modulus 是模数,常常较长,Exponent 是指数,常常只有 6 位,以下为密钥示例:

X509:

MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCC0hrRIjb3noDWNtbDpANbjt5Iwu2NFeDwU16Ec87ToqeoIm2KI+cOs81JP9aTDk/jkAlU97mN8wZkEMDr5utAZtMVht7GLX33Wx9XjqxUsDfsGkqNL8dXJklWDu9Zh80Ui2Ug+340d5dZtKtd+nv09QZqGjdnSp9PTfFDBY133QIDAQAB

ModulusAndExponent:

Modulus: A1E4D93618B8B240530853E87738403851E15BBB77421F9B2377FB0B4F1C6FC235EAEC92EA25BB76AC221DCE90173A2E232FE1511909C76B15251D4059B288E709C1EF86BCF692757AAD736882DD1E98BEDFED9311A3C22C40657C9A52880BDC4B9E539041D44D52CB26AD13AB086F7DC294D144D6633A62EF91CA1775EB9A09Exponent: 010001

使用

首先判断相关接口的加密算法,然后填入相应算法的密钥,点击 Add processor,在弹出的加密配置命名输入对话框中,给予一个易于分辨的名称,提示 Apply processor success! 即表示成功。

在 intruder 中调用

【以 RSA 为例】

首先在网页中定位到 RSA KEY

将其复制出来,并且去掉其中所有的 \ n(不然会导致错误)

MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDUEYw/vsiCBE2Mt4QwUXZQxMkMmHPnwYdbSv44Hq5TXZX5Qyj9sVVvJ74l9f4DaINnT3Yd3Ntkj+rdJWbB/hYhrPN2DrqYYO8ukzmNBYPRYYjsslo59B/lquFR2/c/mYXk6XcSBVi9VUiItWpMki24+Zm/Bn80q1Hqm6cWZI/9ZQIDAQAB

放进 BurpCrypto 对应的 RSA 加密模块,这里根据特征,可以知道 key 的格式是 X509 的,然后点击 Add processor

在弹出的对话框中取个名字,然后确定即可。

接着在 Intruder 模块中,添加好需要爆破的变量和字典,在 Payload Processing 中选择 Invoke Burp extension,选择刚刚创建好的处理器,就可以了

这篇关于加密请求包的爆破的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1092001

相关文章

SpringBoot 获取请求参数的常用注解及用法

《SpringBoot获取请求参数的常用注解及用法》SpringBoot通过@RequestParam、@PathVariable等注解支持从HTTP请求中获取参数,涵盖查询、路径、请求体、头、C... 目录SpringBoot 提供了多种注解来方便地从 HTTP 请求中获取参数以下是主要的注解及其用法:1

SpringBoot请求参数传递与接收示例详解

《SpringBoot请求参数传递与接收示例详解》本文给大家介绍SpringBoot请求参数传递与接收示例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋... 目录I. 基础参数传递i.查询参数(Query Parameters)ii.路径参数(Path Va

使用Python的requests库来发送HTTP请求的操作指南

《使用Python的requests库来发送HTTP请求的操作指南》使用Python的requests库发送HTTP请求是非常简单和直观的,requests库提供了丰富的API,可以发送各种类型的HT... 目录前言1. 安装 requests 库2. 发送 GET 请求3. 发送 POST 请求4. 发送

python运用requests模拟浏览器发送请求过程

《python运用requests模拟浏览器发送请求过程》模拟浏览器请求可选用requests处理静态内容,selenium应对动态页面,playwright支持高级自动化,设置代理和超时参数,根据需... 目录使用requests库模拟浏览器请求使用selenium自动化浏览器操作使用playwright

SpringBoot监控API请求耗时的6中解决解决方案

《SpringBoot监控API请求耗时的6中解决解决方案》本文介绍SpringBoot中记录API请求耗时的6种方案,包括手动埋点、AOP切面、拦截器、Filter、事件监听、Micrometer+... 目录1. 简介2.实战案例2.1 手动记录2.2 自定义AOP记录2.3 拦截器技术2.4 使用Fi

使用zip4j实现Java中的ZIP文件加密压缩的操作方法

《使用zip4j实现Java中的ZIP文件加密压缩的操作方法》本文介绍如何通过Maven集成zip4j1.3.2库创建带密码保护的ZIP文件,涵盖依赖配置、代码示例及加密原理,确保数据安全性,感兴趣的... 目录1. zip4j库介绍和版本1.1 zip4j库概述1.2 zip4j的版本演变1.3 zip4

SpringBoot中SM2公钥加密、私钥解密的实现示例详解

《SpringBoot中SM2公钥加密、私钥解密的实现示例详解》本文介绍了如何在SpringBoot项目中实现SM2公钥加密和私钥解密的功能,通过使用Hutool库和BouncyCastle依赖,简化... 目录一、前言1、加密信息(示例)2、加密结果(示例)二、实现代码1、yml文件配置2、创建SM2工具

python实现对数据公钥加密与私钥解密

《python实现对数据公钥加密与私钥解密》这篇文章主要为大家详细介绍了如何使用python实现对数据公钥加密与私钥解密,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录公钥私钥的生成使用公钥加密使用私钥解密公钥私钥的生成这一部分,使用python生成公钥与私钥,然后保存在两个文

在Spring Boot中实现HTTPS加密通信及常见问题排查

《在SpringBoot中实现HTTPS加密通信及常见问题排查》HTTPS是HTTP的安全版本,通过SSL/TLS协议为通讯提供加密、身份验证和数据完整性保护,下面通过本文给大家介绍在SpringB... 目录一、HTTPS核心原理1.加密流程概述2.加密技术组合二、证书体系详解1、证书类型对比2. 证书获

python web 开发之Flask中间件与请求处理钩子的最佳实践

《pythonweb开发之Flask中间件与请求处理钩子的最佳实践》Flask作为轻量级Web框架,提供了灵活的请求处理机制,中间件和请求钩子允许开发者在请求处理的不同阶段插入自定义逻辑,实现诸如... 目录Flask中间件与请求处理钩子完全指南1. 引言2. 请求处理生命周期概述3. 请求钩子详解3.1