逆向JS分析实战某违规网站1--反反调试案例分析

在一次偶然的机会遇到了一个特别的网站,在打开F12并刷新查看元素时,发现会自动跳到debug,然后接着的就是无限debug。如下图:

在这里插入图片描述
在这里插入图片描述

一看这情况,顿时就来了兴趣。究竟怎样才能突破这层反反调试呢?面对这种一进入调试模式就无限debug,应如何应对?
经过翻阅各大神精华贴,发现下面这个帖子还是很有借鉴作用。

浏览器控制台反调试

当然这里我第一个反应是借鉴安卓逆向的常规思路,跳过反调试逻辑是不是就可以越过这层防护了呢?为什么我会有这样一个想法?先看下图:

在这里插入图片描述
F5刷新后,程序就停在图中圈起来的地方,明显可以看出是一个js文件,而且还是写了反调试逻辑的 js。那是不是就可以大胆假设这个wz.js文件写满的是防止游客调试该网址的防护代码?当然可能不只有这样一个反调试 js,也可能还有几个,但是逆向本身就是见招拆招的过程,不必过于在意有几个或几种反调试在等我们。

网页js与安卓逆向也有不一的地方,网页js代码是在服务器端的,本地常规手法是无法直接修改。那在不使用极端手法的前提下,应如何跳过js的反调试呢?

在这里,我给出的最简单方案是利用抓包工具fiddler(因为本来电脑就安装了,所以就懒得用其他抓包工具)。

众所周知,抓包工具本身就是一个拦截器,可以拦截浏览器访问服务器的数据,也可拦截服务器给浏览器的数据。那在这里,我们将用到的是伪造服务器返回给浏览器的数据。

要实现这一手法:
第一步 通过"查看网页源代码"打开网页的html代码,然后全选复制。
在这里插入图片描述
第二步 桌面新建一个文本文件并打开,把刚才复制的内容粘贴到文本里,关闭文本并保存,然后将文本的后缀改成 .html。

要注意一点是:如果看到粘贴的内容如下图,那就把fiddler关闭,再查看网页源代码,即可复制到完整的内容。
在这里插入图片描述

如果关闭fiddler后,查看网页源代码得到的是下图这样一大坨东西
在这里插入图片描述

那就用下面这个网站格式化后再复制即可。
HTML 代码格式化

第三步 打开fiddler,把浏览器的调试台先关掉,然后F5刷新下页面。

在这里插入图片描述

在fiddler中点击找到目标网页,再fiddler的右边窗口找到”自动回复“

在这里插入图片描述

然后点击”添加规则“,图中打圈的都要勾上

在这里插入图片描述
点击”添加规则“后,就会出现下图的情况

在这里插入图片描述

点击图中红框位置,然后把滚动条拉到最下面,选择"查找文件",选择刚刚粘贴网页代码的html后缀文件(后面均称为A.html)。

在这里插入图片描述
在这里插入图片描述
点击打开后,这个伪装服务器返回给浏览器数据的准备工作就算完成了。

但是打开F12重新刷新页面,还是会去到debug界面,因为A.html文件里,有调用反调试js的代码,现在我们需要做的就是像修改安卓的classes.dex文件一样,把不用的代码注释或删除掉即可。
上面的初步分析中提到程序是停留在wz.jsxxxxxx文件,那就在A.html文件搜索 “wz.js” ,看在哪里调用了。
在这里插入图片描述

从上图可以看出,wz.js是动态写入,那就先把图中框起来的这行代码全部删除并保存,然后在浏览器打开F12并重新刷新网页。
在这里插入图片描述
此时,就会发现网页不会卡在debug,就这样首页的反调试就过了。
在这里插入图片描述
总结:
整个过程下来,不难看出本文是借用了抓包的拦截和返回数据功能成功跳过了原服务器的 js 反调试保护。
预告:
逆向JS分析实战某违规网站2将会讲述从主页跳转后,如何过资源界面的反调试。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
某flutter-app逆向分析是指对于一个使用flutter框架开发的应用进行逆向工程分析逆向工程是通过分析应用的代码、二进制文件等来了解其内部实现细节。 首先,我们需要获取该应用的安装包文件(APK或IPA文件),然后进行解包操作,将其转换为可读取的文件目录结构。 接下来,我们可以使用一些工具来提取应用的资源文件、代码文件等。对于flutter-app来说,可以提取出dart文件,这是flutter的主要代码文件,其中包含了应用的逻辑实现。 通过阅读dart文件,我们可以了解应用的代码结构、数据模型、界面设计等。可以分析应用的逻辑实现方法,包括各种函数、类、方法的调用关系。 同时,还可以通过分析相关配置文件、资源文件等来了解应用的各种设置、资源加载方式等。 在逆向过程中,还可以使用一些调试工具来进一步了解应用的运行机制。例如,hook工具可以拦截应用的函数调用,并捕获输入输出数据,用于进一步分析逆向分析的目的可以有很多,比如了解应用的工作原理、发现潜在的漏洞或安全问题、提供参考用于自己的开发等。 需要注意的是,逆向分析需要遵守法律规定。未经授权的逆向分析可能侵犯他人的知识产权,涉及到隐私等方面的问题。因此,在进行逆向分析之前,应该了解并遵守当地相关法律法规,避免产生法律纠纷。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

脱壳潜行者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值