首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JS逆向 | 无限Debugger之淘大象

今天继续和大家研究JS逆向,不少小伙伴在JS逆向的时候遇到过无限debugger的反爬,今天就拿一个网站练练手感受下无限debugger。...分析加密 很明显这个js文件经过一定程度的混淆,现在有两种方法解决: 一是直接扣代码,绕过debugger之后扣这个代码不要太简单。 二是通读加密,直接改写成python加密。...这里比较明显的是js中的两段代码: ?...(s): a = md5(s.encode()).hexdigest() return a 到这里这次的分析的网站 -- 淘大象 就被我们攻克了,这次的网站加密不是很难,主要难点是分析请求时的无限debugger...其实其他同类型的网站还有很多,我推荐大家阅读下面的文章,文章提到了其他解决debugger的方法希望对你有帮助。

3K30
您找到你想要的搜索结果了吗?
是的
没有找到

JS逆向 | 无限Debugger之淘大象

置顶公众号 今天继续和大家研究JS逆向,不少小伙伴在JS逆向的时候遇到过无限debugger的反爬,今天就拿一个网站练练手感受下无限debugger。...分析加密 很明显这个js文件经过一定程度的混淆,现在有两种方法解决: 一是直接扣代码,绕过debugger之后扣这个代码不要太简单。 二是通读加密,直接改写成python加密。...这里比较明显的是js中的两段代码: ?...比对两种方式,通过python方法改写更加方便,主要代码如下: 到这里这次的分析的网站 -- 淘大象 就被我们攻克了,这次的网站加密不是很难,主要难点是分析请求时的无限debugger。...其实其他同类型的网站还有很多,我推荐大家阅读下面的文章,文章提到了其他解决debugger的方法希望对你有帮助。

1.9K10

JS逆向:常见无限Debugger以及绕过方法

1.1.3 方法间的循环调用1.1.4 计时器JS中的定时器 是setInterval ,参数:第一个参数是要定时执行的代码,第二个参数是时间。...eval(debugger;)1.2.3 可以重度混淆这里可以对constructor、debugger 、call 、apply 、action 等关键字进行混淆,增加调试的困难Function("debugger...[];}二、绕过debugger方法2.1 取消所有的断点如图所示,但这样操作的弊端就是,其他所需要的断点均不能使用2.2 使用一律不在此处暂停在 JS 代码 debugger 行数位置,鼠标右键点击一律不在此处暂停...,对应行前面会添加一个橙色的断点标志2.3 添加条件断点在 JS 代码 debugger 行数位置,鼠标右键添加 条件断点,其中条件 设为 false 2.4 置空无限debugger产生的原因ff`...= function(){}2.5 修改响应文件把JS文件保存到本地修改,修改范围主要是将debugger相关的代码删除或者改写,可以使用文件替换、抓包工具拦截方式[其余绕过方法可见​] http

2.3K60

破解无限 debugger

这几天碰到了一个网站,打开 F12 直接 debugger ,点击下一步,一直 debugger什么都做不了。 ? 然后就开始百度,看大家怎么解决的。...解决办法: 使用抓包工具,注入修改过的 js。...查看调用栈,找到前端 debugger 的位置,一般都是定时任务 setInterval 执行匿名或者有名字函数实现,将这个 js 复制出来,然后将定时执行函数的地方注释掉就行。 ?...需要注意的地方就是,有时候 js 已经缓存到本地了,然后使用抓包工具时找不到这个 js 的请求。这时候需要点击一下下面这个地方。然后刷新就可以了。然后抓包工具中就看到这个 js 了 ?...然后刷新之后,页面的 debugger 就没了,你也可以继续打断点了。 不过在这个网站 debugger 中还有一个问题,它的 js 名字一直是动态变化的,每次都不一样,所以如果写死的话,就没用了。

3.1K40

JS逆向 | 分析某监测网站的 debugger 反爬措施

建议收藏 | 最全的 JS 逆向入门教程合集 目标网站 IGh0dHBzOi8vd3d3LmFxaXN0dWR5LmNuLw0K 这个网站的加密比较简单的,网上也有不少关于这个网站加密的分析例子,所以关于这个网站的正文加密...去年,咸鱼写过一篇关于某网站的无限 debugger 的样例分析,感兴趣的可以看看之前的分析文章。...JS逆向 | 无限Debugger之淘大象 除了这类 debugger 样例外,还有一类反调试的样例是通过时刻监控浏览器的控制台是否打开来控制数据接口的读取的。 网站分析 现在我们来看看。...我们来回忆一下正常的无限debugger场景:一个无限循环的方法中包含了可以被执行的debuger语句,我们通过置空法是下次循环要执行的debugger语句(说明下次循环的debug还未执行)替换为空了...扫码查看JS逆向课程 同时这里也感谢「花哥」 对我的帮助以及对本次案例提供的技术支持与解答。 撒花![ 完 ]

1.8K10

教你解决禁止F12、调试Debugger、丑化JS等反爬

1 前言 在爬取数据时,有一些网站设置了反爬(禁止F12、网页调试Debugger、丑化Js),比如下面这几种情况: 1.禁止查看源代码 ? ?...2.网页调试Debugger 上面禁止查看网页问题,可以先按F12,再访问网站,但是又有网页调试Debugger ? 经过各种百度之后,可以在浏览器里面关闭Debug调试 ?...3.丑化JS 通过查看,可以发现数据是异步加载过来,查看数据包(network)时,发现js是被丑化过,无法查看 ? 遇到以上这些反爬,难道就会阻止我们去采集数据了???...显然不可能(哈哈哈) 上有政策,下有对策 今天教大家如何用python去解决这些问题,并爬取数据。...2 Python解决上述反爬 1.引入Selenium 本来想通过Reuqest请求数据,奈何数据是异步加载,异步链接也被js丑化了。

7.9K41

JS 逆向百例】无限debugger绕过,某政民互动数据逆向

我们尝试抓包,打开开发者工具,刷新一下页面,会发现此时页面被断到 debugger 的位置,点击下一步,又会被断到另一个 debugger 的位置,这种情况就是无限 debugger,无限 debugger...,将原来的含有无限 debugger 的函数给替换掉,这种方法适用于知道无限 debugger 函数所在的具体 JS 文件,重写 JS 文件,使其不含有无限 debugger 的函数,利用第三方工具将原来的...4.方法置空 直接在 Console 中将无限 debugger 的函数重写置空也可以破解无限 debugger,缺点是刷新后失效,基本上不太常用。...完整代码仓库地址:https://github.com/kgepachong/crawler/ JS 加密代码 isNotNull = function (obj) { if (obj ===...', 'r', encoding='utf-8') as f: js = f.read() encrypted_parameters = execjs.compile(js).call

1.3K00

反调试问题-debugger

但这个页面一打开控制台就不断的debugger,无法正常观察Network。 ? 虽然这个代码简单,但是却很有效。...那我们如何来解决这个问题呢? 相对应的,我们也有一种简单有效的方法,那就是禁止断点,具体操作是点击Deactive breakpoints,或者Ctrl+F8 即可(下图右上角的蓝色箭头)。 ?...当然我们还有一些其他的办法可以处理debugger问题。目标就是既能阻止网页不停地debugger,也能让我们在网页上进行断点调试。...方法二 下载这个含有debuggerjs文件到本地,将debugger代码除去,使用抓包工具Fiddler替换js文件,具体的操作可以见这篇文章。...这个替换的js文件是去除debugger之后的js文件。这样我们就解决了某些网页的debugger问题。 ?

1.6K20

TensorFlow的Debugger调试实例

之前有翻译整理过关于TensofFlow的Debugger的简单教程,具体内容见这里。这次用自己实际的例子,来简要的做个使用介绍。...首先是代码遇到了问题,训练过程中的loss不是为nan,就是为负数,让我觉得很奇怪,但是自己去检查代码又找不到问题出在哪里,这时候就想到了TensorFlow自带的Debugger。...之前也有使用过,如果在没出问题的情况下,Debugger还是比较给力的。...01 用Debugger封装需要调试的Session 首先在代码的开头需要import对应的debugger模块(官方教程喜欢import debug as tf_debug,我这里就简写了,为了省事,...这是可以输入运行的指令(如果不清楚TensorFlow Debugger的指令,可以查看之前的教程) r -f has_inf_or_nan 这样运行就会在有过滤器的情况下运行,并会捕获出现了过滤器指定数值的

1.1K60

JavaScript奇技淫巧:debugger拦截

如果想要拦截debugger,是不容易的,常用的函数替代、proxy方法均对它无效,如:window.debugger = (function() { var origDebug = console.debugger...而debugger有多种写法,如:1、debugger;2、Function("debugger").call();3、eval("debugger");4、setInterval(function()...{debugger;},1000);5、[].constructor.constructor('debugger')();最原始的debugger,想要拦截这一个单词,确实是似乎不可行,但它在现实中的使用频率是不高的...这是因为,debugger更多的被人们用于反调试,比如用JShaman对JavaScript代码进行混淆加密后,就可以被加入多种不同的debugger指令用于反调试。...('debugger')();} catch (error) { console.error("Anti debugger");}运行效果:

29220

TensorFlow的Debugger调试实例

之前有翻译整理过关于TensofFlow的Debugger的简单教程,具体内容见这里(https://www.jianshu.com/p/9fd237c7fda3)。...首先是代码遇到了问题,训练过程中的loss不是为nan,就是为负数,让我觉得很奇怪,但是自己去检查代码又找不到问题出在哪里,这时候就想到了TensorFlow自带的Debugger。...之前也有使用过,如果在没出问题的情况下,Debugger还是比较给力的。...01 用Debugger封装需要调试的Session 首先在代码的开头需要import对应的debugger模块(官方教程喜欢import debug as tf_debug,我这里就简写了,为了省事...03 总结 使用TensorFlow的Debugger并不困难,大致总结起来有这么几个流程: 1.import要使用的TensorFlow的调试模块 from tensorflow.python import

1.3K90
领券