极验2代破解(二)

  • 2018-10-09
  • 2,491
  • 40
  • 3

还是老规矩 请勿用于非法用途


上篇文章讲的是 RSA 加密

极验2代破解(一)

这一次 讲的就是 AES 加密部分了

也就是这一行代码 加密的数据如下

{
    "userresponse": "66bac01", 
    "passtime": 450, 
    "imgload": 665, 
    "aa": "?/Bm/01/0(!!:t(!)(!)(!*bsyts(!!(jd8?H:8d@M9O$)q", 
    "ep": {
        "v": "6.0.9"
    }, 
    "rp": "bfa0586f70f833654665b7239fd9129c"
}

定义处在

aa -> 轨迹

rp -> 校验

userresponse -> x 和 challenge 生成 (下篇讲吧)

重点!!!

AES KEY 生成

(65536 * (1 + Math.random()) | 0).toString(16).substring(1);

那么服务器怎么知道AES加密的密钥是多少?

答: 将Key用RSA加密 发送到服务器

也就是H7z部分

跳入后是

这样的

Pkcs7+CBC+IV:(0000000000000000)

然后用了某种方法专成 bytes

那么 AES加密部分 解析完成

但是此时数据还是bytes

接下来是 通过

这一行来转换

跟入

就是这个函数了

(为了方便演示 我用浏览器直接跑了 没有放反混淆的代码… 你们自己重写吧)

验证可用

那么 AES 只剩下 JSON部分的加密

整体上 还差一个轨迹加密(Easy…)


请勿用于非法用途

 

评论

  • mm回复

    那几个加密算法,能不能把完整js发出来

    • lengyue回复

      不能

  • curry回复

    轨迹数据是从哪个方法传进去的啊?一直找不到

  • jianjain回复

    给大佬发个红包鼓励下qq,941404998

  • jianjain回复

    请问到最后获得valide值时,出现({“success”: 0, “message”: “forbidden”}),这是什么问题了?

    • lengyue回复

      轨迹被ban

  • cola回复

    来膜一下大佬~