web|Python 爬虫进阶必备 | 某代理免费页面数据加密逻辑分析

点击上方“咸鱼学Python”,选择“加为星标”
第一时间关注Python技术干货!
今日网站 aHR0cHM6Ly93d3cuYmFpYmlhbmlwLmNvbS9ob21lL2ZyZWUuaHRtbA==
现在做代理也不容易啊,时不时要和友商对线,还得时刻警惕吃免费饭的风险,大家都不容易。
加密分析与定位
老规矩先看网站的加密在哪里?
访问网页可以看到页面上是展示着免费 IP 的信息

“ 爬虫新手经常喜欢整点免费代理池,爬爬妹子图啥的
遇到这个网站就比较难受了,IP 在页面源码上的展示是下面这样的
web|Python 爬虫进阶必备 | 某代理免费页面数据加密逻辑分析
文章图片
IP 信息的位置是下面这样的代码
FFsempstress('ZGLlZGHkAwZ3AwDmYwV1ZP4kZwDhBGtkAwZlAmZ5BQpl');

像这类加密就是检索就能一把梭出来的加密
而且因为在页面上加载的所以想通过Initiator找堆栈也是没有值的
web|Python 爬虫进阶必备 | 某代理免费页面数据加密逻辑分析
文章图片
检索的结果如下
web|Python 爬虫进阶必备 | 某代理免费页面数据加密逻辑分析
文章图片
只有两个,出去free.html另外一个应该就是加密的位置了。
进入 js 文件,看到下面的代码
function FFsempstress(s) { document.write(ddip(s)); }

【web|Python 爬虫进阶必备 | 某代理免费页面数据加密逻辑分析】可以看到FFsempstress这里调用的其实还是ddip这个方法,在页面里重新检索ddip这个方法
可以看到如下的位置
web|Python 爬虫进阶必备 | 某代理免费页面数据加密逻辑分析
文章图片
ddip在一个eval里,回顾上一节的内容
eval处理可以直接一把梭出来
web|Python 爬虫进阶必备 | 某代理免费页面数据加密逻辑分析
文章图片
function ddip(e0){e1=r13(e0.toString()); e2=$.base64.decode(e1); e3=e2.toString().substr(10); l3=e3.length; e4=e3.substr(0,l3-10); return e4}

这里可以看到用到了r13...等函数,继续在页面检索
web|Python 爬虫进阶必备 | 某代理免费页面数据加密逻辑分析
文章图片
可以看到在上一个eval里面
解开是下面的代码
web|Python 爬虫进阶必备 | 某代理免费页面数据加密逻辑分析
文章图片
web|Python 爬虫进阶必备 | 某代理免费页面数据加密逻辑分析
文章图片
和之前的代码拼在一块,愉快的运行一下
很好,报错了,报错不用怕,先看看错误提示
提示如下
web|Python 爬虫进阶必备 | 某代理免费页面数据加密逻辑分析
文章图片
提示$没有定义,我们自己定义一下,
var $ = {};

直接找到这个$的位置复制粘贴进去
“ 把匿名函数传入的 jquery 修改成 $
然后就完事了,结果如下
web|Python 爬虫进阶必备 | 某代理免费页面数据加密逻辑分析
文章图片
又是一篇热气腾腾的新手教学文。
好了,今天的文章就到这里,我们下次再会~
使用 “钞” 能力 | 安利两套安卓+JS逆向课程,适合初中高级爬虫逆向

web|Python 爬虫进阶必备 | 某代理免费页面数据加密逻辑分析
文章图片
对了,看完记得一键四连,这个对我真的很重要。

    推荐阅读