JS逆向 某土地市场网逆向分析

admin 2025年6月23日22:39:11评论5 views字数 1490阅读4分58秒阅读模式

逆向目标

  • 网址:aHR0cHM6Ly93d3cubGFuZGNoaW5hLmNvbS8jLw==
  • 目标:反调试及请求头Hash

反调试

进入网站,我们会发现F12无法打开控制台。那就换一种方式,以谷歌浏览器为例设置 -> 更多工具 -> 开发者工具,然后网页就会跳到空白页了,这是除了debugger外一种经典的反调试手段。

那么我们如何过掉这个反调试呢?目前,我遇到的就两种情况,第一种就是window.close(),第二种就是location.href = '',还有其他情况的话欢迎各位大佬补充。

下面直接开始分析:

我们用无痕浏览器分析(因为在Script断点时不会加载插件的JS代码),打开控制台,勾上Script断点,输入网址,成功断住。

JS逆向  某土地市场网逆向分析

然后我们先搜索window.closeF8一直走,之后某个文件出现了相关代码,直接下断。

JS逆向  某土地市场网逆向分析

然后放开Script断点,直接F8过掉,成功在断点处停住。

JS逆向  某土地市场网逆向分析

我们往前跟栈,看网站通过什么手段进行的反调试。可以看到,是e > 10 * this.maxPrintTime这个条件成立才触发this.onDevToolOpen,从而触发后续的window.close

JS逆向  某土地市场网逆向分析

那我们就看看代码具体做了什么,我们在前面的er处下断,重新请求,成功断住。

JS逆向  某土地市场网逆向分析

然后我们单步跟进去m函数,可以看到,先取了一下时间戳,然后调用传进的参数,最后再返回参数调用的时间差,那猫腻肯定是出现在传入的函数中了。

JS逆向  某土地市场网逆向分析

我们直接进入被调用的参数函数中,可以看到t.largeObjectArray是一个大对象,b其实是console.table函数,也就是在控制台打印一个大对象。

JS逆向  某土地市场网逆向分析

那反调试的逻辑大体清楚了:如果打开了控制台,就会通过console.table打印一个很大的对象,这就需要消耗时间,后续e > 10 * this.maxPrintTime就成立,就会进入最终window.close的逻辑。

我们可以通过hook,返回一个固定的时间戳来过掉反调试(油猴或者直接在控制台注入都可以)。

 复制代码 隐藏代码
Date.prototype.getTime = function(){
return1741067137856
}

hook掉时间戳之后,我们会发现控制台一直会被清空,也不利于调试,我们直接把清空控制台的代码置为空函数E = function(){}

JS逆向  某土地市场网逆向分析

同理,再把和控制台打印相关的bw函数也置空(在对应函数断住的时候去置空)。

JS逆向  某土地市场网逆向分析

最后,能够在控制台输入并输出表示我们成功过掉了反调试。

JS逆向  某土地市场网逆向分析

抓包分析

我们直接点击土地供应 -> 供地计划,会发一个list的包,请求头中的Hash参数就是需要逆向的参数。

JS逆向  某土地市场网逆向分析

逆向分析

一般请求头参数加密,我们可以通过hook的手段去找加密位置(可以去找现成的hook代码)。我选择直接从启动器去找了,一般都会看异步之前的request

JS逆向  某土地市场网逆向分析

下断,发包,然后找请求拦截器。

JS逆向  某土地市场网逆向分析

很显然,下图大概率就是加密参数的生成位置。

JS逆向  某土地市场网逆向分析

我们在控制台输出一下结果,可以看到密文的长度为64,看起来很像SHA256

JS逆向  某土地市场网逆向分析

那我们就去尝试一下,看是否为标准的SHA256,字符串'1'的摘要为6b86b273ff34fce19d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4b

JS逆向  某土地市场网逆向分析

再去控制台对字符串'1'进行摘要,经对比,算法是标准的,没有魔改。

JS逆向  某土地市场网逆向分析

那加密过程大概清楚了,对userAgent今天的日期(日)以及list进行SHA256得到Hash

JS逆向  某土地市场网逆向分析

那我们直接对接口进行请求模拟。

JS逆向  某土地市场网逆向分析

成功!!!

· 今 日 推 荐 ·

JS逆向  某土地市场网逆向分析

本文内容来自网络,如有侵权请联系删除

原文始发于微信公众号(逆向有你):JS逆向 -- 某土地市场网逆向分析

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年6月23日22:39:11
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   JS逆向 某土地市场网逆向分析https://cn-sec.com/archives/4193177.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息