JavaScript逆向的时候遇到无限debugger怎么办


640?wx_fmt=gif

点击上方蓝字关注

在开始之前先简单说几句。

在群里的时候讨论关于JS逆向问题的时候,说到了debugger的问题,但是在遇到无限debugger的时候没什么思路,于是就请妄为大佬写了这份攻略,感谢分享。作者公众号为:为写代码。


·  正  ·  文  ·  来  ·  啦  ·


下面是正文:

今天应小伙伴们意愿写一下过无限debugger的两个案例。(其实都很简单,只要掌握一两个操作点的话)

因为咱粉丝比较少,就直接进行网站点名了,手动狗头

有些案例弄过的小伙伴,可能需要清除一下对应域名下的cookie后,才能触发无限debugger

1.药监局地址为:http://app1.sfda.gov.cn/datasearch/face3/base.jsp?tableId=120&tableName=TABLE120&title=%CA%B3%C6%B7%C9%FA%B2%FA%D0%ED%BF%C9%BB%F1%D6%A4%C6%F3%D2%B5(SC)&bcId=145275419693611287728573704379

在chrome键入地址后,打开f12,就迎来了我们今天的主题:

640?wx_fmt=png

美化一下代码发现就是一个debugger,此时在console控制台,重写该函数

640?wx_fmt=png

重写之后,点击X关闭f12窗口(切记不要刷新页面,因为刷新的话相当于重新加载一遍,刚才的重写函数也就没了意义),关闭之后再重新打开f12,又开始了debugger

640?wx_fmt=png

一个算时间差值的无限debugger,根据调用栈看一下

640?wx_fmt=png

根据代码,发现是eval执行的字符串,此时重写_$jQ函数

640?wx_fmt=png

重写后的函数没有具体意义,所以eval也就没东西可执行了,此时关闭f12,再重新打开,发现就不会再有debugger了。(ps:不管是加载别的页面也好,还是刷新也罢,只要浏览器重新加载了存在debugger语句的js,就会开始debug,所以要先擦除debugger,再去下断点分析你想要的内容)

640?wx_fmt=png

2,

努比亚论坛,地址:https://bbs.nubia.cn/

因为这是一个js生成cookie的案例,所以触发debugger的机制不太一样。

首先清除该网站下的cookie(ps:有些案例可能还需要清storage),键入地址,打开f12,此时再在浏览器地址栏回车,也就出现了debugger

640?wx_fmt=png

多查看几层调用栈,发现关键点

640?wx_fmt=png

一个直接调用,一个setInterval,老规矩重写_0x4db1c函数

640?wx_fmt=png

因为这个案例比较简单,我就多说两句,因为这个案例的特殊性,所以你关闭f12后,cookie就被生成了,然后页面数据就有了,还是分析不了cookie的生成规则,所以在函数执行前打上断点

640?wx_fmt=png

不关闭f12,刷新页面,断在了我们的断点位置

640?wx_fmt=png

此时在控制台重写目标函数_0x4db1c,但是重写之后,继续执行的话,还是看不到cookie生成规则,所以重写之后,不要轻举妄动,在关键位置打上断点(ps:这个案例是一个经典的js生成cookie案例,也就是arg1生成arg2的过程,断点我就直接打了)

640?wx_fmt=png

就是这一部分,打好断点后,此时点击按钮继续执行

640?wx_fmt=png

640?wx_fmt=png

断在了我们的预期位置,接下来就开始愉快的分析吧。

640?wx_fmt=gif

这就是今天的两个反反调试的案例,有点技巧的话都很简单,希望小伙伴们可以多多转发支持嘞。
ps:第二个js生成cookie的案例,在去年前年的时候可以值个500块左右吧,快去尝试吧,哈哈


猜你喜欢

JavaScript逆向教程之破解某麦参数加密的思路

实战案例浅析JS加密 - DES与Base64

当你写爬虫抓不到APP请求时之SSL Pinning对抗

当你写爬虫遇到APP的请求有加密参数时该怎么办?【初级篇-常规模式】

  • 5
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值