加密请求包的爆破

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

相关文章

Qt实现发送HTTP请求的示例详解

《Qt实现发送HTTP请求的示例详解》这篇文章主要为大家详细介绍了如何通过Qt实现发送HTTP请求,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1、添加network模块2、包含改头文件3、创建网络访问管理器4、创建接口5、创建网络请求对象6、创建一个回复对

SpringBoot使用Jasypt对YML文件配置内容加密的方法(数据库密码加密)

《SpringBoot使用Jasypt对YML文件配置内容加密的方法(数据库密码加密)》本文介绍了如何在SpringBoot项目中使用Jasypt对application.yml文件中的敏感信息(如数... 目录SpringBoot使用Jasypt对YML文件配置内容进行加密(例:数据库密码加密)前言一、J

SpringBoot项目注入 traceId 追踪整个请求的日志链路(过程详解)

《SpringBoot项目注入traceId追踪整个请求的日志链路(过程详解)》本文介绍了如何在单体SpringBoot项目中通过手动实现过滤器或拦截器来注入traceId,以追踪整个请求的日志链... SpringBoot项目注入 traceId 来追踪整个请求的日志链路,有了 traceId, 我们在排

如何使用Java实现请求deepseek

《如何使用Java实现请求deepseek》这篇文章主要为大家详细介绍了如何使用Java实现请求deepseek功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1.deepseek的api创建2.Java实现请求deepseek2.1 pom文件2.2 json转化文件2.2

Android 悬浮窗开发示例((动态权限请求 | 前台服务和通知 | 悬浮窗创建 )

《Android悬浮窗开发示例((动态权限请求|前台服务和通知|悬浮窗创建)》本文介绍了Android悬浮窗的实现效果,包括动态权限请求、前台服务和通知的使用,悬浮窗权限需要动态申请并引导... 目录一、悬浮窗 动态权限请求1、动态请求权限2、悬浮窗权限说明3、检查动态权限4、申请动态权限5、权限设置完毕后

C#使用HttpClient进行Post请求出现超时问题的解决及优化

《C#使用HttpClient进行Post请求出现超时问题的解决及优化》最近我的控制台程序发现有时候总是出现请求超时等问题,通常好几分钟最多只有3-4个请求,在使用apipost发现并发10个5分钟也... 目录优化结论单例HttpClient连接池耗尽和并发并发异步最终优化后优化结论我直接上优化结论吧,

Java后端接口中提取请求头中的Cookie和Token的方法

《Java后端接口中提取请求头中的Cookie和Token的方法》在现代Web开发中,HTTP请求头(Header)是客户端与服务器之间传递信息的重要方式之一,本文将详细介绍如何在Java后端(以Sp... 目录引言1. 背景1.1 什么是 HTTP 请求头?1.2 为什么需要提取请求头?2. 使用 Spr

Java中的密码加密方式

《Java中的密码加密方式》文章介绍了Java中使用MD5算法对密码进行加密的方法,以及如何通过加盐和多重加密来提高密码的安全性,MD5是一种不可逆的哈希算法,适合用于存储密码,因为其输出的摘要长度固... 目录Java的密码加密方式密码加密一般的应用方式是总结Java的密码加密方式密码加密【这里采用的

使用Python制作一个PDF批量加密工具

《使用Python制作一个PDF批量加密工具》PDF批量加密‌是一种保护PDF文件安全性的方法,通过为多个PDF文件设置相同的密码,防止未经授权的用户访问这些文件,下面我们来看看如何使用Python制... 目录1.简介2.运行效果3.相关源码1.简介一个python写的PDF批量加密工具。PDF批量加密

SpringBoot中Get请求和POST请求接收参数示例详解

《SpringBoot中Get请求和POST请求接收参数示例详解》文章详细介绍了SpringBoot中Get请求和POST请求的参数接收方式,包括方法形参接收参数、实体类接收参数、HttpServle... 目录1、Get请求1.1 方法形参接收参数 这种方式一般适用参数比较少的情况,并且前后端参数名称必须