这个是属于比较入门级别的js逆向?吧?

网易有道的网址:网易有道

一. js逆向分析过程

打开f12,通过输入搜索词,点击搜索,可以看到相对应的异步请求:

可以看到,中间的这个表单数据的sign就是里面的加密内容了。对源代码进行搜索,输入“sigh:”,可以搜索到sign在代码中的情况:

通过断点分析,这里就是加密的签名了,监控一下这个参数f,发现其生成的代码都是在上面:

分别输出各个参数,很容易发现这些参数大多数通过简单的字符串组合而来,点进去h()函数,h()函数如下:

这是一个简单的md5加密函数,并把结果转成16进制。

二. 代码实现

给出核心代码

import hashlib

keyword = '你好'

def get_t():
    v = 'webdict'
    r = ''.join([keyword, v])
    time = str(len(r) % 10)
    o = hashlib.md5(r.encode('utf8')).hexdigest()
    return ''.join(['web', keyword, time, o])

def getsign():
    t = get_t()
    return hashlib.md5(t.encode('utf8')).hexdigest()

getsign()

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐