当前位置: 首页 > news >正文

js逆向——webpack实战案例(一)

今日受害者网站:https://www.iciba.com/translate?type=text

首先通过跟栈的方法找到加密位置

我们跟进u函数,发现是通过webpack加载的

 

向上寻找u的加载位置,然后打上断点,刷新网页,让程序断在加载函数的位置

 

u = r.n(a)
c = r(46485) 

1、扣取webpack主文件

控制台输入r,跟进加载器内部,这样就进入了主文件,直接全部扣取下来

2、扣取webpack所有子文件

点击运行到下面一个断点

输入webpackJsonXXX命令,按照顺序扣取所有子文件,依次放到主文件的下面

这样就拿到了webpack的所有主文件和子文件

 

3、导出加载器,调用加密函数

新开一个网页,创建一段代码片段,将所有的主文件和子文件复制到里面

然后将加载器导出到全局,即window.bubu当中

 

接着就可以使用导出的加载器来执行加密函数

r=window.bubu;
a = r(68214)
u = r.n(a);
u()('6key_web_new_fanyi6dVjYLFyzfkFkk你好啊').toString().substring(0, 16) 

这样在浏览器环境下就得到了正确的结果

 

4、fd无环境调用加密函数  

然后进入fd无环境修修补补,也成功得到了正确的结果

 

5、简化webpack代码 

在fd当中获取webpack加载的所有代码

使用:window.code+=r+":"+e[r]+","来拿到所有的加载模块来简化代码

将加载的模块放到自执行函数的参数列表里面,发现简化后的代码只有700多行

将代码放到fd当中继续运行

遇到报错,我们这里大数组没有参数e,补充上e,然后把下面var e={}删除

报错t未定义,补上:var t={} 

 

这样使用fd插件就得到了简化运行的正确结果了

 

ok,今天的你就到此为止吧,明天还要接着🐺啊 

http://www.lryc.cn/news/449001.html

相关文章:

  • Spring Boot 进阶-Spring Boot的全局异常处理机制详解
  • 滚雪球学MySQL[7.1讲]:安全管理
  • 反射及其应用---->2
  • [Python学习日记-32] Python 中的函数的返回值与作用域
  • 儿童发光耳勺值得买吗?儿童发光耳勺最建议买的五个牌子!
  • TIPS 二进制程序暴露符号给动态链接库使用
  • 【分布式微服务云原生】8分钟掌握微服务通信的艺术:Dubbo与OpenFeign全面解析
  • sicp每日一题[2.33]
  • 【Mybatis】常见面试题汇总 共56题
  • 每天一道面试题(17):服务网格学习笔记
  • 【nrm】npm 注册表管理器
  • 解压短视频素材资源网站推荐
  • Qemu开发ARM篇-6、emmc/SD卡AB分区镜像制作并通过uboot进行挂载启动
  • Spring Boot中使用ThreadPoolTaskScheduler实现轻量级多线程定时任务
  • 完全二叉树的节点个数 C++ 简单问题
  • 每日一题学习笔记
  • 从事人工智能学习Python还是学习C++?
  • 博客摘录「 CNN中的感受野和有效感受野会对模型产生怎样的影响?」2024年9月29日
  • AURIX单片机示例:开发入门与点亮LED
  • MySQL字符串函数与操作
  • HTML+CSS 水滴登录页
  • 基于Next.js和TailwindCss的TailwindCss
  • 若依开源系统多数据源整合clickhouse数据库详细步骤
  • Subdominator:一款针对漏洞奖励计划的子域名安全枚举工具
  • [leetcode]516_最长回文子序列
  • 电子相册|智能化电子相册|基于java的电子相册管理系统设计与实现(源码+数据库+文档)
  • linux项目_c语言:Makefile编写、动态库生成、添加动态库路径
  • Python学习(1):字典、DataFrame的创建方法
  • async await 介绍 从0手动实现async await
  • UDP校验和计算及网络中的校验和机制