前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python 爬虫进阶必备 | 某水利监管平台反爬分析(一)

Python 爬虫进阶必备 | 某水利监管平台反爬分析(一)

作者头像
咸鱼学Python
发布2021-11-26 10:30:18
4850
发布2021-11-26 10:30:18
举报
文章被收录于专栏:咸鱼学Python

图源:极简壁纸

今日网站

aHR0cDovL3h5cHQubXdyLmNuL2p1bXAuZG8/dXJsPWh0dHA6Ly94eXB0Lm13ci5jbjo4MC9Vbml0Q3JlSW5mby9saXN0Q3lyeVBhZ2UuZG8/VFlQRT0xJm1lbnU9Y3lyeQ==

这个网站应该可以写成一个系列文章,网站的除了滑块之外,还有某数的 5 代加密

今天主要是针对这个站点的滑块和反调试,属于入门系列,至于其他的就下次一定吧

反调 debugger 的绕过

这个 debugger 属于比较好过的,先来看看效果

请求进入这个网站之后就会滑一次这个验证码,想要复现的话需要通过下面的路径

首页 - 从业人员 - 点击人员的名字

通过这个路径就可以出现滑块了

打开控制台会出现 debugger 提示

先看第一次的验证

这里第一个栈就是 debugger

在行号的位置右键,选择Never Pause Here,效果如下

这个时候点击蓝色箭头这个断点就过了

这个时候进入第二个debugger

然后重复第一次的操作就可以跳过了

这个时候会进入下面的代码

还是一样的操作

再放一次就可以绕过了

有人说这样好麻烦啊,是的的确很麻烦

我这里提供一个解决反调的思路,下次遇到你自己捋捋

重点!!!

1、如果你遇到的是静态的页面中包含的debugger,你可以使用reresFiddler autoresponse替换静态资源,一步到位

可实战网站:

2、如果你遇到的是今天这种动态页面的debugger

2.1、如果你遇到的是构造出来的debugger,可以将构造器置空达到反debugger的目的

代码语言:javascript
复制
Function.prototype.constructor = function(){}

2.2、如果你遇到的是今天这个网站上的例子,图方便的话你只能像我这样一个个debugger了,就是右键行号 - Never Pause Here

2.3、如果你遇到的就是eval('debugger')这样的,同样可以直接把eval重新构造下,伪代码逻辑如下

代码语言:javascript
复制
eval_ = eval;
eval_ = function(val){
    if(val === 'debugger'){
        return eval_('') ...}

滑块的分析

通过上面的操作,可以正常捕获请求了,我们现在看下这个滑块

通过这个滑块的截图就感觉其实很简单的

看了下加载的文件列表也是有原图和滑块的

看了下提交的参数

提交的参数第一个是位置,第二个是时间戳,第三个是你的 ip 地址

所以直接套上 opencv 就完事了,这个的代码我感觉大家不都是有手就刑?

除了上述的两个反爬点外,剩下就是某数 5 代了

不会有人觉得会我会今天一篇搞完吧?

好了,以上就是今天的全部内容了。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-11-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 咸鱼学Python 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 今日网站
    • 反调 debugger 的绕过
      • 重点!!!
    • 滑块的分析
    相关产品与服务
    验证码
    腾讯云新一代行为验证码(Captcha),基于十道安全栅栏, 为网页、App、小程序开发者打造立体、全面的人机验证。最大程度保护注册登录、活动秒杀、点赞发帖、数据保护等各大场景下业务安全的同时,提供更精细化的用户体验。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档