2022-10-26 11:17:31 最新帖子
今天对比了一下最新版7.9.4的宝塔面板(宝塔的开发习惯是即使是同一个版本号,也会不断更新文件)。发现了一个js文件比较可疑,经过分析后得出,是宝塔最新增加的上报后门,可以上报用户自己的IP和端口(非服务器的)
js文件路径:/panel/BTPanel/static/laydate/laydate.js
根据文件时间戳,可知是10月9日更新的。
这个文件本身是layer的日期显示组件,但是宝塔在最后加入了一段eval加密的js。这种js很好解密,以下是解密后的js:
完整代码粘贴不出来,会被论坛拦截,只能截图部分
可以看出是创建了个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)
下面反编译看看这个方法是具体干什么的
宝塔搞了个很有迷惑性的方法名,初看还以为是获取软件列表的,实际根本不是。方法内部只是把cid发送到接口https://cpi.bt.cn/get_soft_list,并未对返回值进行处理,可确定不是获取软件列表的。
之前已经有人爆料过宝塔的上报接口(site_task.py),为什么10月9日又新增了一个?可能是之前的接口只是上报一些统计的数据,并没有上报用户IP这种敏感信息。另外现在新增的这个更加隐蔽,通过迷惑性方法名、夹杂在公共js文件等手段进行隐藏。
原文 https://hostloc.com/thread-1090304-1-1.html
二楼网友
我刚才还疑惑,明明有上百种方法可以获取到用户IP,为什么非要写那么一大堆js通过WebRTC的方式来获取。原来这种方式可以无视代理,我这边试了即使是开了全局代理,也一样可以获取到真实IP而不是代理服务器IP! 回复: 浏览器关闭WEBRTC
只用7.7.0开心版,这个版本好像只有上次/www/server/panel/logs/request/这个地方收集
问 bt发送服务器ip到自己的数据库有什么用?
答 搞不好这个库就直接和公安联网呢
关于aaPanel安装脚本的跟踪代码:
1.当用户安装面板时,安装脚本的跟踪代码用于记录服务器IP,安装时间和该IP的安装次数。脚本代码在安装过程中只会记录一次
2.ajax.py中的代码将收集用户ip,站点总数,数据库和ftp总数,设备信息(系统版本,内存大小,处理器型号,Web服务器类型,面板版本)
3.ajax.py还有一个代码可以记录IP是否在此处安装aaPanel
原文:https://forum.aapanel.com/d/1504-about-the-tracking-code-of-the-aapanel-installation-script
其他:https://www.lowendtalk.com/discussion/comment/3105526#Comment_3105526
至于国内版宝塔面板会收集哪些信息就不得而知了。希望有测试过的大佬能说下。
毕竟由于监管的不同,很多软件的国内国际版都区分对待
其实当你用浏览器打开宝塔面板的登录页面时,
页面默认会加载宝塔APP的图片,
http://app.bt.cn/static/app.png
理论上,就已可以通过浏览器的请求头Referer记录到了用户登录IP,服务器IP,面板端口,安全入口和其他信息,不过这些都在他的网站日志里。
Referer: http://XXX.XXX.XXX.XXX:8888/xsdwdwdd/
国内版国外版都有此情况,打算用aaPanel的注意一下。
可以用浏览器插件伪装Referer和X-Forwarded-For
注意:ModHeader被爆有安全问题
另外看源码发现宝塔国内版某个文件夹下有大量伪装成图片的代码,
不知这样搞有何意义?
好像是宝塔首页的源码?
/www/server/panel/BTPanel/static/img/dep_ico/目录下
bfz.png
JTBC.png
skm.png
test.png
test2.png
ttttt.png
wp.png
z-blog.png
ZFAKA.png
meilinhost大佬:
利用闲时挖币
h20大佬:
问题是,收集来干嘛?收集时提示用户同意了没?
krazy176大佬:
居然收集这么多信息。。。。。。
fullbody大佬:
居然收集这么多信息。。。。。。
这还是英文版的,
国内版估计收集得更多
乌鸦大佬:
看来我只能用lnmp了吗?
fullbody大佬:
问题是,收集来干嘛?收集时提示用户同意了没?
原文中管理员解释得最后得一段话:
“除此之外,我们没有其他跟踪代码。如果以后需要跟踪任何信息,我们将在此处添加一条语句,并在用户同意后执行跟踪。
最后,感谢您的信任和使用”
原文链接:https://hostloc.com/thread-762727-1-1.html
其他参考资料
2020年宝塔面板国内版已知收集的隐私信息,根据GitHub上开源的代码分析【转载】