首页
社区
课程
招聘
[转帖]【银行逆向百例】05小程序逆向之微信开发者工具反编译修复插件未授权+WXSS+WXML格式错误
发表于: 2025-6-3 10:19 87

[转帖]【银行逆向百例】05小程序逆向之微信开发者工具反编译修复插件未授权+WXSS+WXML格式错误

2025-6-3 10:19
87

 什么都无法舍弃的人,什么都改变不了。——《进击的巨人》S1E20 






01



环境版本


环境:

电脑,Windows 11 专业版 23H2


软件:

微信,Windows 3.9.12.51

unveilr,2.0.1

微信开发者工具,1.06.2503290




02



操作步骤



1、使用yakit抓包发现请求响应加密

    7adK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6%4N6%4N6Q4x3X3g2&6j5h3E0D9j5h3&6Y4i4K6u0W2j5$3!0E0i4K6u0r3

    图片


    2、微信开发者工具配置参考文章2-8步骤


    【银行逆向百例】03小程序逆向之微信开发者工具反编译修复app.json

    图片


    3、报错插件未授权使用

    图片


    4、app.json中搜索plugins,删掉全部插件,重新编译

    图片


    5、WXSS 文件编译错误

      ./page/tabbar/home/index.wxss(1:1): unexpected token `{`

      图片


      6、删掉报错部分代码,重新编译

        {
          --theme-color: #1a73e8
        }

        图片


        7、WXML 文件编译错误

          ./miniprogram_npm/vant-weapp/wxs/bem.wxs:1:288:Unexpected token `}`

          图片


          8、右键格式化文档保存,重新编译

          图片


          9、WXML 文件编译错误

            ./utils/filter.wxs:1:8728:Unexpected token `}`

            图片


            10、右键格式化文档保存,重新编译,修复成功恢复网络请求

            图片




            03



            请求分析





            11、搜索ReqEncryptDataExt关键字,发现ReqEncryptDataExt=g,g赋值处断点,u.data是明文,i是时间戳,拼接i+'Z'作为加密key

            图片


            12、调用EncryptByKey方法进行加密,返回值=g=ReqEncryptDataExt,发现a对象有个DecryptByKey方法,解密成功

              JSON.parse(a.DecryptByKey("", i + "Z"))

              图片


              13、修改u.data.kndId=103,页面出现103商品

              图片


              14、将第一步的时间戳uniqueId赋值给i,解密ReqEncryptDataExt得到明文

              图片




              04



              响应分析






              15、将响应包的字符串解密得到明文

              图片


              16、分析一下EncryptByKey函数,AES加密ECB模式只有key没有iv,t是明文,r是uniqueId时间戳拼接'z'也就是key,n调用CryptoJS转换r格式为WordArray对象,返回值即密文ReqEncryptDataExt

              图片



              [培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

              收藏
              免费 0
              支持
              分享
              最新回复 (0)
              游客
              登录 | 注册 方可回帖
              返回