常见JS解密工具

admin 2022年2月15日19:54:41评论858 views字数 1250阅读4分10秒阅读模式

在项目中往往会遇到JS加密参数的情况,下面是两款不需要编写代码的JS解密工具使用记录


测试环境

可以使用jsEncrypter项目带的靶场进行测试

地址:https://github.com/c0ny1/jsEncrypter


BurpCrypto解密

项目地址:

https://github.com/whwlsfb/BurpCrypto

项目介绍:

支持多种加密算法或直接执行JS代码的用于爆破前端加密的BurpSuite插件

项目特点:

通过在前端页面找到的加密key或者加密公钥实现 对加密参数进行“加解密”。

常见JS解密工具


RAS解密演示

通过分析选择第6种RSA加密需要找到public_key值

常见JS解密工具

往下翻找到了公钥public_key

MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC0Llg1bVZhnyslfezwfeOkvnXWq59bDtmQyHvxkP/38Fw8QQXBfROCgzGc+Te6pOPl6Ye+vQ1rAnisBaP3rMk40i3OpallzVkuwRKydek3V9ufPpZEEH4eBgInMSDiMsggTWxcI/Lvag6eHjkSc67RTrj96oxj0ipVRqjxW4X6HQIDAQAB

常见JS解密工具

在BurpCrypto设置在RSA设置中添加public_key值,并创建一个处理器test.com

常见JS解密工具

抓包发现已经加密111

常见JS解密工具

使用BurpCrypto进行枚举测试,密码参数添加为变量

常见JS解密工具

设置测试字典

常见JS解密工具

使用BurpCrypto加密字典字段

选择payload processing项,选择从拓展中进行参数处理,选择Burpcrytop里面的test.com处理器

常见JS解密工具

常见JS解密工具

开始枚举测试

常见JS解密工具

常见JS解密工具

字段快速加密


视频演示:

JS-Forward解密

项目地址:

https://github.com/G-Security-Team/JS-Forward

项目介绍

浏览器在对参数进行加密时,通常会将需要加密的参数传入一个加密函数,返回密文。将服务器密文传入一个解密函数,返回明文,那么不管中间使用的是什么加密方式,总会有两个点可以进行修改,即加密函数入参与解密函数返回,此时加解密问题就变成了如何修改js运行过程参数的问题,到了这里思路逐渐明了。方法大致有两种:

1、js hook

2、使用http请求将参数发送出来再外部进行修改,将修改后的返回值再替换原参数。

JS-Forward使用第二种,但是外带出来的好像有点问题,主要还是要定位加密函数调用


解密参数过程

重点是分析加密函数在哪里,怎么调用加密函数,需要把生成的payload插入加密函数后

常见JS解密工具

解密参数放在paswwrod上,提示找不到定义的声明

常见JS解密工具

这里看到被加密的参数是password,通过password生成payload

常见JS解密工具


错误事例

将生成的payload加入在加密函数后,下面这个事例导致无法修改带出来的参数,原因在加密函数在前面就有,所有在后面调用的话,导致无法修改带出来的参数

常见JS解密工具

代理请求的明文字符串就会变成密文

常见JS解密工具

常见JS解密工具

完整演示


原文始发于微信公众号(锋刃科技):常见JS解密工具

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年2月15日19:54:41
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   常见JS解密工具http://cn-sec.com/archives/778991.html

发表评论

匿名网友 填写信息