36氪详情页AES

今天发现详情页数据改了,html中有经过加密的内容。

在这里插入图片描述

搜索时需要的参数之前写过:[36氪acw_sc__v2]


定位分析

一般情况全局搜索找不到返回内容,大概率是对数据进行了编码或者加密。

全局搜索decrypt,找到解密位置

在这里插入图片描述

代码部分:

    var ne = ee.a.enc.Utf8.parse("efabccee-b754-4c");
    var re, oe = window.initialState || {};
    oe.isEncrypt && (oe = JSON.parse((re = window.initialState.state,
    ee.a.AES.decrypt(re, ne, {
        mode: ee.a.mode.ECB,
        padding: ee.a.pad.Pkcs7
    }).toString(ee.a.enc.Utf8).toString())));

控制台打印下:

在这里插入图片描述

找一个在线AES解密平台进行测试。
在这里插入图片描述


本地还原

解密代码:

import base64
from Crypto.Cipher import AES
from Crypto.Util.Padding import pad

def decrypt(data):
    html = base64.b64decode(data)
    key = b'efabccee-b754-4c'
    aes = AES.new(key=key, mode=AES.MODE_ECB)
    info = aes.decrypt(html)
    decrypt_data = pad(info, 16).decode()
    return decrypt_data

结合列表页的完整部分:

【温馨提示:此处隐藏内容需要付费订阅后才能查看!】

点赞

发表回复