记录一次前端RSA加密实战

1、开局一个登录框

image-20240124084244114

2、看看历史的数据包,可以看到对密码进行了加密处理,并且携带了一个uuid参数。

image-20240124084714723

3、经过测试,uuid随验证码刷新更新,通过/prod-api/captchaImage接口获取,咱主要看rsa加密部分,所以这个先不管

image-20240124085405848

4、咱就先搜索password关键字

在找的过程中发现看到挺多loginForm.password这样的数据

image-20240125014643035

想到了Vue中,实现双向数据绑定,存储表单数据形式如下:

data() {
   return {
      loginForm: {
        username: "",
        password: "",
      }
   }
}

然后就搜索关键字,loginForm.password,因为和他相关的就5处,很容易找到了这个函数g

image-20240125013659824

5、那就下个断点调试一下

果然不出意外,这个函数g就是对password这字段加密的函数

image-20240125004902458

image-20240125004926903

6、在调试一下,找一下g这个函数,就看到了这块!

大胆的猜测一下,d是公钥、m是私钥。然后g是加密的函数、f是解密的函数。

image-20240125005112884

7、既然拿到了公钥,直接去怼,看看能不能成功!在这之前,注意到一个问题,这公钥看着怪怪滴。

​ 猜测加密前应该有对公钥进行过一些处理,因为函数g里边有个setPublicKey()方法,咱先不跟进去看。全局搜索一下PublicKey关键字看看。

​ 接着看到了一个长得像处理公钥的函数。

image-20240125005718095

8、拿出咱得js调试工具,copy代码。干

image-20240125010227808

9、这下看着正常多了,一个标准的PEM格式。直接用YakRuning模块进行RSA加密。

image-20240125012024580

10、因为之前推测有个函数f是用来解密的。

经过测试,咱们加密过的数据可以被解密,结束!

image-20240125012138931

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值