对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 目录里创建文件夹或写入文件

相关推荐
郭wes代码1 小时前
纯 CSS+JS 实战:手搓一张支持自定义的通用金色电子奖状(万字详细拆解)
前端·javascript·css
用户847181054192 小时前
DeepAgents.js 教程 06—— 跨会话长期记忆(Memory与AGENTS.md)
javascript·agent
阿黎梨梨2 小时前
React 表单处理与性能优化:从入门到进阶
前端·react.js
Whbbit19992 小时前
发布自己的 shadcn-vue 扩展组件,并支持 CLI 安装
前端·开源
Tian_Hang2 小时前
Vue3 父子组件通讯
前端·javascript·vue.js
breeze jiang2 小时前
React memo、useCallback 与 useMemo:父组件多状态时如何减少无效渲染
前端·javascript·react.js
小黑技术栈2 小时前
Java前端基础到入门——16day
java·开发语言·前端
朱涛的自习室3 小时前
从 Prompt 到 Graph:AI 工程的进化史
android·前端·人工智能
敲代码的玉米C4 小时前
让两个模型一写一审
前端·人工智能·架构
代码不加糖4 小时前
common.js和es6中模块引l入的区别?
前端·javascript·es6