如有侵权,请联系我删除
1、引言
最近想找个网站练练手,突然想到朋友之前使用模拟浏览器爬过某安的政府网站的新闻发布信息,看下今天能不能把他成功逆向一下。
2、分析
通过分析可以看出这个网站需要__jsl_clearance_s和__jsluid_s这两个cookie才能正常的访问网站
__jsluid_s获取可以通过第一次访问链接由服务端返回。
然后通过第一次访问返回的内容是一个js脚本代码,我们给他美化一下
然后在浏览器的console执行一下,本以为__jsl_clearance_s就弄好了
谁知再次访问链接还是521状态码,再次查看一下返回的内容
注:需要由第一次从服务端返回__jsluid_s和上图js执行后的cookie同时存在才能成功访问下图body
给他美化一下,发现美化后有500多行代码
到这大概就知道他那两个cookie是怎么来的了
3、逆向js
1、第一个比较简单我就不说了,可以通过下图直接执行,因为我发现他里面的语法和Python的语法差异太大了,我也懒得给他替换了就直接使用js2py执行了
2、我们还是主要看下第二个页面返回的东西,我们还是先看一下他的入口函数在哪里,发现他的入口在哪个go函数中
3、通过document关键字搜索发现他应该是在下图这两个地方设置cookie的
4、通过上图大胆推测下应该是_0x5080('0xea', 'dcAK') +'ie'拼接成cookie关键字来的
5、通过在console验证确实是这样生成的,那我们对这些_0x5080('0xea', 'dcAK')加密先手动的给他替换一下,让他更有可读性
6、关键函数
4、使用Python代码执行
5、注意的点
1、&,>> 需要通过ctypes.c_int库执行
2、这次只正对sha1加密逆向,这个网站还有其他加密逻辑