【JS 逆向百例】网洛者反爬练习平台第五题:控制台反调试

关注微信公众号:K哥爬虫,持续分享爬虫进阶、JS/安卓逆向等技术干货!
声明
本文章中所有内容仅供学习交流,抓包内容、敏感网址、数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系我立即删除!
逆向目标
- 目标:网洛者反反爬虫练习平台第五题:控制台反调试
- 链接:http://spider.wangluozhe.com/challenge/5
- 简介:打开浏览器控制台,控制台 Console 位置输出 bbbb[0] 可看见答案,填上答案提交即可。

逆向过程
我们直接打开控制台,发现右键不能使用,直接 F12,页面就会直接跳转到首页了,问题不大,新起一个页面,先打开 F12 再进入页面即可,此时可以看到控制台在疯狂输出 div 标签,如下图所示:

这里比较尴尬的就是,虽然控制台在不断刷 div,但是对我们的输入没有太大影响,直接输入 bbbb[0],往上找一找,就可以看到答案了,或者直接输入 copy(bbbb[0]) 就直接把答案复制到粘贴板了。如下图所示:

这个题不知道是什么原因,有可能是出题不太规范让我们直接钻空子了,作者的本意应该是让我们去掉这个无限刷 div 的情况,再去获取答案的,所以我们还是来分析一下源码,可以看到输出 div 的方法都在 5.js 里,直接点进去,是一个 setInterval 定时器方法:

处理方法有很多:
- Hook 定时器,将输出 div 的语句删除;
- 替换 JS 代码,直接将定时器或者输出 div 的语句删除;
- 直接控制台 Hook,将定时器方法置空。
本次我们直接在控制台 Hook,将定时器置空,这里注意,如果程序已经进入了定时器,再 Hook 是没用的,所以正确的做法是在定时器前,比如 let div 的地方下个断点,刷新网页,再在控制台输入 setInterval = function() {}; 将定时器置空,再放开断点输入 bbbb[0] 获取答案:


我们注意到控制台有个报错 Uncaught SyntaxError: Identifier 'div' has already been declared,这是因为在 JS 和页面的 HTML 里各自声明了一遍 div 导致的,在页面的 HTML 里再次声明时就会报错,对我们结果的获取没有影响。至此,本题分析完毕。提交答案成功:


【JS 逆向百例】网洛者反爬练习平台第五题:控制台反调试的更多相关文章
- Python爬虫入门教程 62-100 30岁了,想找点文献提高自己,还被反爬了,Python搞起,反爬第2篇
学术搜索 学习理论的知识少不了去检索文献,好多文献为你的实操提供了合理的支撑,我所在的大学内网默认是有知网账户的,非常NICE 今天要完成的网站是 http://ac.scmor.com/ Googl ...
- Python爬虫入门教程 64-100 反爬教科书级别的网站-汽车之家,字体反爬之二
说说这个网站 汽车之家,反爬神一般的存在,字体反爬的鼻祖网站,这个网站的开发团队,一定擅长前端吧,2019年4月19日开始写这篇博客,不保证这个代码可以存活到月底,希望后来爬虫coder,继续和汽车之 ...
- Python爬虫入门教程 63-100 Python字体反爬之一,没办法,这个必须写,反爬第3篇
背景交代 在反爬圈子的一个大类,涉及的网站其实蛮多的,目前比较常被爬虫coder欺负的网站,猫眼影视,汽车之家,大众点评,58同城,天眼查......还是蛮多的,技术高手千千万,总有五花八门的反爬技术 ...
- Python3爬取起猫眼电影实时票房信息,解决文字反爬~~~附源代码
上文解决了起点中文网部分数字反爬的信息,详细链接https://www.cnblogs.com/aby321/p/10214123.html 本文研究另一种文字反爬的机制——猫眼电影实时票房反爬 虽然 ...
- 《C# 爬虫 破境之道》:第二境 爬虫应用 — 第六节:反爬策略研究
之前的章节也略有提及反爬策略,本节,我们就来系统的对反爬.反反爬的种种,做一个了结. 从防盗链说起: 自从论坛兴起的时候,网上就有很多人会在论坛里发布一些很棒的文章,与当下流行的“点赞”“分享”一样, ...
- CSS常见反爬技术
目录 利用字体 反爬原理 应对措施 难点: 利用背景 反爬原理 应对措施 利用伪类 反爬原理 应对措施 利用元素定位 反爬原理 应对措施 利用字符切割 反爬原理 应对措施 利用字体 反爬原理 反爬原理 ...
- 通过JS逆向ProtoBuf 反反爬思路分享
前言 本文意在记录,在爬虫过程中,我首次遇到Protobuf时的一系列问题和解决问题的思路. 文章编写遵循当时工作的思路,优点:非常详细,缺点:文字冗长,描述不准确 protobuf用在前后端传输,在 ...
- 我去!爬虫遇到JS逆向AES加密反爬,哭了
今天准备爬取网页时,遇到『JS逆向AES加密』反爬.比如这样的: 在发送请求获取数据时,需要用到参数params和encSecKey,但是这两个参数经过JS逆向AES加密而来. 既然遇到了这个情况,那 ...
- Python之手把手教你用JS逆向爬取网易云40万+评论并用stylecloud炫酷词云进行情感分析
本文借鉴了@平胸小仙女的知乎回复 https://www.zhihu.com/question/36081767 写在前面: 文章有点长,操作有点复杂,需要代码的直接去文末即可.想要学习的需要有点耐心 ...
- Python反爬:利用js逆向和woff文件爬取猫眼电影评分信息
首先:看看运行结果效果如何! 1. 实现思路 小编基本实现思路如下: 利用js逆向模拟请求得到电影评分的页面(就是猫眼电影的评分信息并不是我们上述看到的那个页面上,应该它的实现是在一个页面上插入另外一 ...
随机推荐
- Solon2 接口开发: 了解 LoadBalance
上一文的代码 HttpUtils.http(sevName, ctx.path()) (来自 "solon.cloud.httputils" 插件的工具类),内部是通过 sevNa ...
- 用Python制作高逼格数学动画manim
简介 manim是斯坦福大学数学系小哥Grant Sanderson开源的数学仿真模拟python库,并用于YouTube 频道3Blue1Brown,来解说高等数学. manim是一个非常优秀的数学 ...
- SpringBoot 项目实战 | 瑞吉外卖 优化篇 Day01
该系列将记录一份完整的实战项目的完成过程,该篇属于优化篇第一天,主要负责完成缓存优化问题 案例来自B站黑马程序员Java项目实战<瑞吉外卖>,请结合课程资料阅读以下内容 该篇我们将完成以下 ...
- 【转】OS | 从一道面试题谈 Linux 下 fork 的运行机制
今天一位朋友去一个不错的外企面试 Linux 开发职位,面试官出了一个如下的题目: 给出如下C程序,在 Linux 下使用 gcc 编译: #include "stdio.h" # ...
- Vue中使用el-menu高亮显示问题
https://blog.csdn.net/weixin_43336525/article/details/132541500 <template> <el-menu :defaul ...
- freeswitch的任务引擎问题与解决方案
概述 freeswitch核心框架中有一个定时任务系统task,在开发过程中用来做一些延时操作和异步操作很方便. 我们在VOIP的呼叫流程中,经常会有一些对实时性要求没那么高的操作,或者会有阻塞流程的 ...
- freeswitch自带yum源配置方式
概述 在开发过程中,我们使用freeswitch源代码编译安装的方式比较多,这种方式适合对fs比较了解,有一定基础的研发人员. 但是,对于希望快速上手使用fs普通功能的人员来说,源代码编译的方式就过于 ...
- C#将汉字转换为拼音
首先上效果图 方法调用 private void txt_Chinese_TextChanged(object sender, EventArgs e) { txt_PinYIn.Text = //调 ...
- 使用 FormatMessage 格式化 Windows 错误码.md
https://docs.microsoft.com/en-us/windows/win32/api/winbase/nf-winbase-formatmessage #include <str ...
- Prime Time - 介绍
Prime Time是对timing进行分析 Prime Time使用的是STA方法进行分析 工具会有更新,但是核心内容是不变的 Prime Time(intro to STA) 没有PT工具的时候, ...