对Electron打包的exe文件进行反解析

一、了解

Electron 打包的 exe,本质上就是打包了网页 (HTML+CSS+JS),核心文件是 app.asar。超级容易还原,还原率接近 100%

为什么 Electron 特别容易?

因为 Electron 根本没有真正编译成机器码 ,它只是把网页资源(HTML/JS/CSS)压缩打包成了一个 app.asar 文件而已,本质上还是文本文件。

所以只要用 asar extract 一解压,源码就回来了。

二、步骤

判断是否是Electron打包的网页

  1. exe点击安装了之后,找到安装目录

  2. 找是否有resources/app.asarapp 文件夹

  3. 如果有app.asar,可以确认这是一个electron应用

解包app.asar文件

  1. 首先必须有node环境

  2. 打开命令行,全局安装asar工具

npm install -g asar

3.解包命令

asar extract 路径/app.asar 输出目录

bash 复制代码
# 例如
asar extract "D:\myapp\resources\app.asar" "D:\myapp\extracted"

如下图所示,即为成功

成功后看到文件夹里的变成了

结束~

❗ 注意:路径不能在c盘, 会报错EPERM: operation not permitted

这是windows的保护机制,没有权限在 C:\Program Files 目录里创建文件夹或写入文件

相关推荐
同志3271325 分钟前
用HTML+CSS做了一个网易云音乐客户端首页
前端·css
小猪欧巴哟27 分钟前
pnpm install 安装项目依赖遇到 illegal operation on a directory, symlink 问题
前端·vue.js
独角仙梦境27 分钟前
🚀🚀🚀学习这个思路,你也能手撸自己的专属vip脚手架🚀🚀🚀
前端
CJWbiu30 分钟前
Github Action + docker 实现自动化部署
前端·自动化运维
关山31 分钟前
在TS中如何在子进程中动态实例化一个类
前端
吃瓜群众i31 分钟前
兼容IE8浏览器的8个实用知识点
前端·javascript
前端烨35 分钟前
vue3子传父——v-model辅助值传递
前端·vue3·组件传值
猫头虎1 小时前
如何解决IDE项目启动报错 error:0308010C:digital envelope routines::unsupported 问题
javascript·ide·vue.js·typescript·node.js·编辑器·vim
Mintopia1 小时前
Three.js 在数字孪生中的应用场景教学
前端·javascript·three.js
da-peng-song1 小时前
ArcGIS arcpy代码工具——根据属性结构表创建shape图层
javascript·python·arcgis