BT最新版增加了新的上报后门,更加隐蔽

今天对比了一下最新版7.9.4的宝塔面板(宝塔的开发习惯是即使是同一个版本号,也会不断更新文件)。发现了一个js文件比较可疑,经过分析后得出,是宝塔最新增加的上报后门,可以上报用户自己的IP和端口(非服务器的)

js文件路径:/panel/BTPanel/static/laydate/laydate.js

根据文件时间戳,可知是10月9日更新的。

这个文件本身是layer的日期显示组件,但是宝塔在最后加入了一段eval加密的js。这种js很好解密,以下是解密后的js:

部分代码截图部分
153237i4gh644erie0qa7q.webp

可以看出是创建了个WebRTC连接,最终是拿到了用户自己的IP和端口(id和pid变量),并组合后进行了简单加密,赋值给cid,POST到接口/plugin?action=get_soft_list_thread

那么get_soft_list_thread是在干什么呢,找到py代码,是异步调用/script/flush_soft.py,然后这个文件里面是调用加密模块里面的一个方法PluginLoader.get_soft_list(cid)

下面反编译看看这个方法是具体干什么的
153237i4gh644erie0qa7q-2.webp

宝塔搞了个很有迷惑性的方法名,初看还以为是获取软件列表的,实际根本不是。

方法内部只是把cid发送到接口https://cpi.bt.cn/get_soft_list,并未对返回值进行处理,可确定不是获取软件列表的。

之前已经有人爆料过宝塔的上报接口(site_task.py),为什么10月9日又新增了一个?
可能是之前的接口只是上报一些统计的数据,并没有上报用户IP这种敏感信息。
另外现在新增的这个更加隐蔽,通过迷惑性方法名、夹杂在公共js文件等手段进行隐藏。

明明有上百种方法可以获取到用户IP,为什么非要写那么一大堆js通过WebRTC的方式来获取。
原来这种方式可以无视代{过}{滤}理,我这边试了即使是开了全局代{过}{滤}理,也一样可以获取到真实IP而不是代{过}{滤}理服务器IP!

简单解决方法:

防止宝塔最新版本获取真实IP地址

后续:虽然官网解释是授权,用来正常的登录及授权信息校准模块。那大家自行判断、技术分享和分析。

免费的bt宝塔一直都很不错!方便、快捷,支持正版bt宝塔 !!!
使用盗版、破解版bt宝塔可能存在更可怕的东西。

本文来自52PJ世态炎凉S冷暖自!

© 版权声明
THE END
如果喜欢,可以【点赞】【分享】【收藏】
点赞9赞赏 分享
评论 抢沙发
头像
非注册用户需审核通过后才能查看。友好交流,勿发纯表情,勿恶意灌水!
提交
头像

昵称

取消
昵称表情代码图片
    • 头像陶小桃Blog0