声明
本文章中所有内容仅供学习交流,抓包内容、敏感网址、数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系我立即删除!
jsvmp是什么
JSVMP是一个用于JavaScript代码混淆的工具。它采用了一系列的技术和算法来使代码变得难以理解和逆向工程。JSVMP使用了变量名和函数名的混淆技术。它会将原始的变量和函数名替换为一系列随机生成的字符串。这样一来,代码中的变量和函数名就变得无意义,使得阅读和理解代码变得更加困难。此外,JSVMP还使用了字符串和数字的混淆技术。它会将代码中的字符串和数字进行加密,然后在运行时解密。这样一来,即使代码被反编译,也很难获得原始的字符串和数字的值。JSVMP还会对代码的控制流进行混淆。它会对代码中的条件语句和循环进行重构,使得代码的执行流程变得更加复杂和难以预测。总的来说,JSVMP使用了一系列的技术和算法来使JavaScript代码变得难以理解和逆向工程。它可以帮助开发者保护自己的代码,防止代码被盗用或者逆向工程。
目标网站
aHR0cHM6Ly93d3cuZG91eWluLmNvbS92aWRlby83MzU3MjkzMDUzODgwNjY3NDQ2
插桩生成位置分析
定位abogus定位生成的文件bdms.js window下注册了bdms,肯定有用 然后把该文件挪到本地,直接ast还原到switch-case的形式
然后对每个指令集进行ast还原
对了,要求对每个指令都要熟悉,你必须清楚整个vmp的流程操作,if,if-else,while,function等等指令,就可以吐出来全部的逻辑
最终发现 xml关键函数被重写 然后最终走了90左右个辅助函数,对关键参数进行多重加密
多的不放了,没啥意思,后面就是还原的rc4加密、以及对数组的调用、在经过t函数(代指sm3)、魔改base64-->abogus
jsvmp如何去解决
- 反编译jsvmp
- 单独插桩还原算法(不太推荐这个方案!祛魅吧)
- 插桩补环境
- 等死
我这里选择了用jsvmp还原的形式去面对!
直接放出最终请求成功图!
需要注意:正确错误返回码都是200,正确是响应体是有值的
番外
小弟斗胆拉了个群,求大佬们赏脸进来玩玩!
小弟才疏学浅,还望各位多多指教,带带小弟飞!
欢迎大佬们来放松一下!
群号:625288193
Next-Target
- 主动调用Android-Wechat文本信息
- 腾讯滑块tdc
- 顶象
- 数美
- 易盾
- js盾
最近想法
我开了个知识星球,把将本期成品已放到了里面,有需要的小伙伴可以自行去取,jd的参数,阿里bxet纯算、快手滑块,Pdd—Anti,ikuai,b站login之-极验3文字,某音ab,瑞数456vmp补环境等等,主要是某些大佬加我问成品,很多人都打着白嫖的手段去加我好友为目的,问完基本就以后没有任何的交集,这样的交好友雀氏没有任何意义。不如我直接开个星球,里面直接放我逆向的成品以及逆向的思路,这样大家各取所需,我也有点收益,意义更明确点,免得浪费大家的时间。星球如果你们遇到了什么问题的话,也可以直接提出来,我肯定以我最大的能力去回答,后续的话,随着知识星球的作品越来越多,涨价是必然的。至于一些没有特殊难点的站或app,我会直接把思路以及成品到星球里面,同时也欢迎各位大佬的技术合作,有技术,有想法的一起交流成长。
本文使用 mdnice 排版