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

相关推荐
盛夏绽放35 分钟前
jQuery 知识点复习总览
前端·javascript·jquery
胡gh3 小时前
依旧性能优化,如何在浅比较上做文章,memo 满天飞,谁在裸奔?
前端·react.js·面试
大怪v3 小时前
超赞👍!优秀前端佬的电子布洛芬技术网站!
前端·javascript·vue.js
胡gh3 小时前
你一般用哪些状态管理库?别担心,Zustand和Redux就能说个10分钟
前端·面试·node.js
项目題供诗3 小时前
React学习(十二)
javascript·学习·react.js
无羡仙3 小时前
Webpack 背后做了什么?
javascript·webpack
roamingcode4 小时前
Claude Code NPM 包发布命令
前端·npm·node.js·claude·自定义指令·claude code
码哥DFS4 小时前
NPM模块化总结
前端·javascript
灵感__idea5 小时前
JavaScript高级程序设计(第5版):代码整洁之道
前端·javascript·程序员
唐璜Taro5 小时前
electron进程间通信-IPC通信注册机制
前端·javascript·electron