有个叫etool的快捷文本软件, 发现安装后无法卸载.不知道大家如何彻底卸载?
window中卸载显示成功, 但是重启window后又悄悄安装上了
程序把自身隐藏在多个系统路径. 每次启动都会悄悄安装.
基本跟大佬分析的一样, 谢谢解惑
有个叫etool的快捷文本软件, 发现安装后无法卸载.不知道大家如何彻底卸载?
window中卸载显示成功, 但是重启window后又悄悄安装上了
程序把自身隐藏在多个系统路径. 每次启动都会悄悄安装.
基本跟大佬分析的一样, 谢谢解惑
用 Everything 搜一下 etool 看看系统里还有哪些目录残留?
或者试试 Geek Uninstaller 之类的(但你已经卸载了我不知道还管不管用)
话说这个工具作者在论坛发过贴来着:
用everything删除了几次还有黑暗残留. 最后还是用totoaluninstaller , 跟你说的geek uninstall类似把. 才搞干净.
这作者这样搞,也没谁了…
这个介绍贴最后 发现还有其他人也被这个坑过啊.
解包看了一下,静默写注册表了,而且没有关闭选项。
每次启动 Windows 都会调用 ETool.exe --hidden,这是很多软件都有的【开机自启】功能。卸载逻辑应该有 BUG,没有移除注册表项。
这也能解释为什么 geek 能解决问题,它会帮你删除注册表项。
至于 ETool.exe 背后会做什么不得而知。我在 sandbox 做的测试,不能重启系统。软件用 jsc 加密了,需要看字节码。
如果是卸载后开机报错(就如你上述的那个用户),我倾向解释为 BUG —— 我看了部分代码,作者不像是熟练使用 Node.js;如果是卸载后重启电脑会悄悄重装,我倾向解释为故意。不过话不能说得太满,毕竟开发者一般不怎么测试卸载操作。
不大可能是故意的,都用 electron 了,如果自动安装的话,那完全藏不了啊
如果不是作者水平不够 , 我还不知道一直有这个悄悄在启动
我装到d盘了, 卸载后还把d盘安装目录删除了,
每次启动电脑 他每次悄悄启动的时候就去读原目录的东西,找不到就有报错对话框谈出来.
后面悄悄装的时候, 装了 系统好几个位子, 看起来是有计划的.
我选装的d盘, 卸载过, 安装包和启动路径的文件都删除了, 重启电脑如何又自动安装到 c盘去的?
我的意思是,真要做恶意软件,谁会用 electron ?
appdata 是 electron 默认的用户数据存放地址,一般情况下,所有 electron 的 updater 都会塞进去。
是在这个位置有悄悄下载 etool-2.xx的安装包, 以及etool.exe的启动文件, 还有几个 etool-update.exe等文件. 不是标准的appdata路径,还有几个系统路径都塞了东西.
我觉得也有可能是能力问题。我把他的部分代码塞给 AI,扮演面试官问代码水平如何。AI 的回答是 Code Review 不能通过的代码。我猜是条件判断写得不好,误调用了 updater 了。
分析了一下程序.
基于 electron 开发的. 卸载后, C:\Users\用户名AppData\Roaming\ETool 文件夹有残留的数据库信息 未发现残留可执行文件.
分析安装脚本未发现有隐藏或捆绑安装, 卸载部分未见特殊操作.
v2.6.0 装一把你就可以见识了. 至少不知道一个人中标把.

就是下载的最新版, 安装后分析的. 程序也解包分析了.
我觉得吧.
首先, 用 electron 做流氓软件得多蠢才能干得出来.
其次吧, 这个软件本身也做的让人一言难尽, 不像有做流氓软件的水平.
垃圾软件受害者
建议远离electronelectron就是个大过滤器,用electron开发不一定代表水平低,不用electron也不一定代表水平高,不过概率这东西嘛
那估计就是我刚好触发了这个软件的严重逻辑缺陷.
这软件装上去,发现没啥用, 或者说基本用不了, 我就卸载了, 结果第二天开始每天开机就报错,跟之前那兄弟贴的一样, 最开始几次有工作要做,点了下确定就没管.
后面频发出现就处理了.
我觉得这个可能性很大, 尤其是升级更新过程, 很可能有逻辑bug.
此软件的更新用的是 electron-updater。
electron-updater 的设计逻辑就是:下载到缓存目录 → 等待时机 → 自动替换安装。
盲猜楼主在卸载前正好命中了它的升级周期。楼主刚好卸载掉它,并且由于注册表项的存在,在下次 Windows 启动后直接启动新版本的软件了。
electron-updater在 Windows 的缓存目录一般是C:\Users\<用户名>\AppData\Local\<应用名>-updater\。这也能解释你说的残留可执行文件和楼主说的etool-update.exe文件。
我在解包后看到一个 app-update.yml 文件,内容如下,大概率是用于 update 逻辑的。
provider: generic
url: https://api.etool.site/updater/etool/
updaterCacheDirName: etool-updater
disableWebInstaller: true
此软件没有关闭 Electron 的远程调试功能,通过在控制台打印 navigator.userAgent 得知版本为 Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) ETool/2.6.0 Chrome/126.0.6478.234 Electron/31.7.6 Safari/537.36,对应的 V8 版本是 12.6,应该可以通过构建一个相同的 V8 环境来尝试分析 .jsc 文件。字节码总比汇编好看,有兴趣的话可以试试。
嗯嗯, 果然如我猜测的一样.