逆向网站:aHR0cHM6Ly9zZ25lYy5zZ2NjLmNvbS5jbi9hdGxhcy9wcm9qZWN0UHVibGljaXR5打开网站,可以看见有个项目列表数据,主要分析这个接口,打开F12后发现界面直接回退了,回退到上一个界面,说明有反调试,这里有个技巧,打开历史记录,在历史记录界面打开F12到源代码界面,然后点击刚刚目标网站的历史记录,迅速按下暂停,这样就可以调试了然后一步步往下跟,可以发现控制台输出了很多日志,其中有一些关键的加密日志,但是后面会清除掉,这里先不管它,先把回退这个解决先,往下跟,跟到这里很明显就是在这将网页回退的,我直接跟着调用堆栈,启用本地替换,把这个函数的调用给删掉了,这样就不会回退了,参考下面图中位置解决完后就可以正常打开F12,注意这里还是先在历史记录那打开F12,然后再进入目标界面,如果直接在目标界面那打开的话会卡死,接下来就是定位目标请求了,直接点查询触发请求,然后发现请求体和响应体中都有加密这里全局搜关键字或者通过XHR断点都不太好定位,但是还有个关键的地方,之前有提到过,我们在跟界面回退的过程中可以看到控制台那实际上输出了很多关键日志,只是后面清除掉了,现在我们可以分析一下那里的日志,还是跟之前一样,在进入目标网页是点暂停,然后一步步调试,可以定位到控制台日志打印的地方很明显,就是这了,可以看到有对data进行一些操作,还有请求头的Sign和timestamp,打上断点触发请求,然后就是分析了,到这里就没啥难点了,加密和解密都是AES,请求头那还有个Sign需要处理,有一个需要注意的地方就是在Python中JSON序列化的时候要去除空格再进加密操作,不然拿不到数据,因为JS中是没空格的
完整代码就不给了,主要是想分享一下遇到的反爬和解决的技巧
传播安全知识、拓宽行业人脉——看雪讲师团队等你加入!