单步跟进,找到加密的入口了,可以看到js代码
是经过混淆的,不过不影响我们的分析,涉及的方法调用内部都打上断点,调试分析发现走完这几个方法就拿到了我们想要的结果
我们把加密内容和这几个方法扣到本地,本地运行会报错,如下
node
是没有window这个变量的,这里是调用了atob
方法进行解码
atob() 方法用于解码使用 base-64 编码的字符串。
base-64 编码使用方法是 btoa() 。
node
环境里我们可以直接调用,修改后再次运行,得来全不费功夫
到这里我们的工作完成了一半了,接下来分析下载接口里的auth_key
,取消过滤网络请求,然后随便点击一张图片然后观察网络请求,如下要什么来什么,接口请求https://api.zzzmh.cn/bz/v3/getUrl/71e52c67f5094e44b92ccaed93db15c521
,返回的状态码是302重定向
,然后重定向网址Location
就是我们要找的东西
我们直接打开Location
的网址https://cdn2.zzzmh.cn/wallpaper/origin/71e52c67f5094e44b92ccaed93db15c5.jpg/fhd?auth_key=1706716800-4fd9d400aa760d347954198f61eefb01e5036dcf-0-63b18ffb82f5a0ddab9cf92880576e7a