type
status
date
slug
summary
tags
category
icon
password
前言
群里讨论某网站的逆向,想去试一下,于是记录下过程,实力微薄,勿怪勿怪。
一 初窥
先看看这个网站什么情况

可以发现只有请求头里面有加密的参数,看看启动器里面调用栈,打打断点看看


可以看到这个网站是使用的
axios
这个库去调用的网络请求,这个库也是个很常用的网络请求库,如果你当时并不知道这个库,你可以搜索一下,也会发现
简单看下这个文档会发现有请求拦截器功能,这个在请求的请求头校验大概率也是在拦截器里面添加的,我们可以看下拦截器的用法

现在去网站看下有没有拦截器的痕迹

果然是有拦截器的存在,点进去看看

二 深挖
混淆的代码,老规矩丢进反混淆网站里面看看,结果是这样的:

通过第一个地方可以发现使用方法和官方的是一样的,所以我们的思路的完全正确的,第二个地方就是请求头附加加密参数的地方,进去看看


发现最后是这个函数给请求头设置的加密参数,入参就是请求信息,也是丢进反混淆看看,但是这个结果就不尽人意了,就手动看吧
通过观察就会发现这类的混淆最大的特点就是字符串加密,把固定字符串和方法名加密后使用
[]
的方法去调用, _0xf2d8ea
很明显就是获取字符或字符串的方法,好在这个方法比较好,咱们调试一下手动替换就好,如果长的话就 ast
替换,原理是一样的,找到规律然后替换

就这样使用类似的方法,找到真的的名字,替换,改为方便去看的最好得到的结果是这样的:

这就很清晰了,通过查看代码可以发现
getlocal_init_time
和 getserver_init_time
是直接获取的localStorage里面的,观察发现界面刷新之后也没有发现改变所以这里就直接写死搞定
观察发现上面主要提到了下面几种加密方法:
- JSON序列化
- sha1哈希
- hmac加密
如果自己弄的时候在其中遇到不清楚的要先去网络上搜一下用户用途,了解了之后转python就好写了.
完整代码
运行结果

总结
- 要思路清晰,先看网站是怎么写的,如果能确定如果正向开发的,逆向好好办了
- 灵活运用搜索引擎和工具
hssp
是在下自己写的爬虫库,还未彻底完善,感兴趣的可以的看看,点个🌟也可以的,地址是这个:hssp
x-haose • Updated Mar 15, 2025
- 作者:昊色居士
- 链接:https://blog.haose.love//article/1b0d8e83-ddeb-80d7-aa86-eaa7e32823bc
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。