猿人学反混淆刷题平台:https://match.yuanrenxue.com/match/16


# 第十六题:抓取五页数字,求和

  1. # 抓包查看请求,毫无疑问 m 是加密参数

  2. # 查看堆栈,在 window.request 调用栈中找到加密参数。

  3. # 继续分析,发现参数就是用 btoa 函数传入时间戳生成的,我们都知道 btoabase64 编码,不可能这么简单,实际上确实如此, btoa 被魔改了

  4. # 代码扣下来,先补补环境,调试了一下就知道为啥这题叫蜜罐了。。。几个地方投了点毒,废了点劲跟了下代码。这里其实可以直接把移位后的数组抠出来,这样就可以少踩一个毒坑。

  5. # 数组搞定后,下面又有个 c 函数有毒, node 执行也会卡死。

  6. # 继续调试,发现还有两处投毒位置,调试一下就可以看到。

  7. # 解完毒,终于可以跑到最后了,但是还缺个 md5 ,验证了一下,也是魔改的,浏览器跳转就找到了,直接补上。

  8. # 补完 md5 ,加密结果就可以输出了,用 py 代码验证无误,可以获取正确的结果。

本题主要是加了些环境检测,重点不在于 webpack 了,代码不多,跟着调一下就能看到检测点。

更新于 阅读次数

请我喝[茶]~( ̄▽ ̄)~*

渣渣文 微信支付

微信支付

渣渣文 支付宝

支付宝