正电子发生器:检测并拦截 Electron 应用的运行

155 天前
 WorseIsBetter

近日,与几位旧友聚餐。偶然谈起了桌面应用的现状。

友人甲:天下苦 Electron 久矣!因为这些 bloatware 的存在,我每天都要和 OOM Killer 斗智斗勇。

我:一开始就别安装,不就好了。

友人乙:是啊,我还没听说过哪个用 Electron 开发的软件,是优秀到不可替代的。

友人甲:可是安装之前也很难发现啊。有没有什么办法,能在运行的时候检测,如果是 Electron ,就不让它运行。

友人乙:听起来似乎不难。要不试试拿 Curs0r 二十分钟做一个?

我:哈哈,这么简单的需求就没必要劳烦 AI 了。你啥系统?

友人甲:那必然是 Linux 啊。I use Arch, btw.

我:好的,安排。


于是就有了这个小玩具:positrond ,全名 Positron Daemon 。 顾名思义,它持续发出正电子,与遇到的 Electron 应用湮灭,发出光子,照亮桌面软件开发行业。

扯远了。实际上它是基于 Linux 内核提供的 fanotify API ,监控并选择性地拦截文件的运行。 如果运行的 ELF 文件的 .rodata 段包含 dL7pKGdnNz796PbbjQWNKmHXBZaB9tsX 这个字符串,则判定为 Electron 并拦截,否则放行。 当然,绕过检测的方法也很简单。

代码只有一百来行,可自行取用把玩:https://paste.sr.ht/~cismonx/d727e3a6214f289905992ac2824484ffb823ded9

1938 次点击
所在节点    分享创造
11 条回复
ck65
155 天前
You sourcehut user on V2EX, fuiyoh. Code not bad not bad.
wheat0r
154 天前
那就都用 tauri 吧
swim2sun
154 天前
> 友人乙:是啊,我还没听说过哪个用 Electron 开发的软件,是优秀到不可替代的。


没听过 VS Code ?那 Cursor 呢?
ostrichb
154 天前
VSCode 可以用 nvim 取代
sunny352787
154 天前
@swim2sun 哈哈哈哈哈哈用 cursor 写个工具把 cursor 干掉了是吧
renmu
154 天前
electron 对 linux 桌面应该来说是大好事,不然压根没得用(笑
shintendo
154 天前
Linux 还挑啊😅
zhanying
154 天前
拿 cursor 写禁止 electron 允许的程序,唐完了
LevineChen
154 天前
you have two down son
lambdaq
154 天前
这个 dL7pKGdnNz796PbbjQWNKmHXBZaB9tsX 居然是硬编码啊。这都被你发现了。牛皮。
nomagick
154 天前
JVM 有识别码吗,这比我 cron job 运行 killall java 优雅多了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1124481

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX