E星期五,一个心情日记和分享记录的博客

分类: SS-R

bt宝塔面板上报后门,更加隐蔽

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

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

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

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

可以看出是创建了个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)

下面反编译看看这个方法是具体干什么的
2.png
宝塔搞了个很有迷惑性的方法名,初看还以为是获取软件列表的,实际根本不是。方法内部只是把cid发送到接口https://cpi.bt.cn/get_soft_list,并未对返回值进行处理,可确定不是获取软件列表的。

之前已经有人爆料过宝塔的上报接口(site_task.py),为什么10月9日又新增了一个?可能是之前的接口只是上报一些统计的数据,并没有上报用户IP这种敏感信息。另外现在新增的这个更加隐蔽,通过迷惑性方法名、夹杂在公共js文件等手段进行隐藏。
我刚才还疑惑,明明有上百种方法可以获取到用户IP,为什么非要写那么一大堆js通过WebRTC的方式来获取。原来这种方式可以无视代理,我这边试了即使是开了全局代理,也一样可以获取到真实IP而不是代理服务器IP!

记录 VLESS

网站配置文件最后}之前加

编辑
/usr/local/etc/v2ray

更新:https://github.com/v2fly/fhs-install-v2ray

service v2ray restart #重启V2Ray服务
service v2ray status #查看v2ray是否运行

记录一次v2ray安装过程

主要是这类错误,如果出现这条,即表明CAPABILITIES这个有问题ExecStart=/usr/local/bin/v2ray -config /usr/local/etc/v2ray/config.json (code=exited, status=218/CAPABILITIES)

文件在/etc/systemd/system/v2ray.service,删掉CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE
AmbientCapabilities=CAP_NET_ADMIN CAP_NET_BIND_SERVICE

如果修改了User=nobody 还会出现user错误(code=exited, status=217/USER)

——-2022年更新,CentOS由7.0变更到CentOS 7.5——–

出现Could not resolve host: raw.githubusercontent.com; Unknown error这类解析错误,需要增加DNS服务,
/etc/resolv.conf被清空的原因是/etc/sysconfig/network-scripts/ifcfg-eth0中没有dns server信息,所以重启后系统自动使用/etc/sysconfig/network-scripts/ifcfg-eth0中的设置重新设置/etc/resolv.conf,导致修改/etc/resolv.conf无效。只要将/etc/sysconfig/network-scripts/ifcfg-eth0中加入nameserver信息, /etc/resolv.conf根本不用做修改,系统重启或网络重启后会自动根据ifcfg-eth0设置resolv.conf。
知道了原因,彻底解决的方法就有了:打开ifcfg-eth0,在末尾加上下面语句:下面xxx用dns server的地址代替。
DNS1=8.8.8.8
DNS2=8.8.4.4

重启网络服务:service network restart

删掉后运行命令1重新载入、systemctl daemon-reload
2重启v2、service v2ray restart
3查看运行状态、service v2ray status
安装BT,安装Nginx
一键去除注册命令sed -i "s|if (bind_user == 'True') {|if (bind_user == 'REMOVED') {|g" /www/server/panel/BTPanel/static/js/index.js
新建网站,申请SSL,放行23450端口
修改配置文件 location /目录 {
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $http_host;
proxy_intercept_errors on;
if ($http_upgrade = "websocket" ){
proxy_pass http://127.0.0.1:23450; #自定义端口,与下同
}
}

修改/usr/local/etc/v2ray/config.json
{
"log" : {
"access": "/var/log/v2ray/access.log",
"error": "/var/log/v2ray/error.log",
"loglevel": "warning"
},
"inbound": {
"port": 23450, #自动生成的端口,须与Nignx设置的相一致,可自定义
"protocol": "vmess",
"settings": {
"clients": [
{
"id": "id", #自动生成的UUID
"level": 1,
"alterId": 64
}
]
},
"streamSettings": {
"network":"ws",
"wsSettings": {
"path": "/目录", #path可自定义,这里是/ws,须与Nginx和客户端的path相一致
"headers": {
"Host": "域名" #Host可自定于任意域名,此处没有添加
}
}
}
},
"outbound": {
"protocol": "freedom",
"settings": {}
},
"outboundDetour": [
{
"protocol": "blackhole",
"settings": {},
"tag": "blocked"
}
],
"routing": {
"strategy": "rules",
"settings": {
"rules": [
{
"type": "field",
"ip": [
"0.0.0.0/8",
"10.0.0.0/8",
"100.64.0.0/10",
"127.0.0.0/8",
"169.254.0.0/16",
"172.16.0.0/12",
"192.0.0.0/24",
"192.0.2.0/24",
"192.168.0.0/16",
"198.18.0.0/15",
"198.51.100.0/24",
"203.0.113.0/24",
"::1/128",
"fc00::/7",
"fe80::/10"
],
"outboundTag": "blocked"
}
]
}
}
}

v2ray

国内的视频全是流量明星节奏大师,还是看youtube吧
安装v2ray
SSH连接上远程VPS后,下载安装脚本:
wget https://install.direct/go.sh
然后执行脚本安装V2Ray:
sudo bash go.sh
在安装完V2Ray之后,修改配置文件重启V2Ray即可,配置文件路径为/etc/v2ray/config.json

以容编辑全选覆盖
{
"log" : {
"access": "/var/log/v2ray/access.log",
"error": "/var/log/v2ray/error.log",
"loglevel": "warning"
},
"inbound": {
"port": 你的端口, #自动生成的端口,须与Nignx设置的相一致,可自定义
"protocol": "vmess",
"settings": {
"clients": [
{
"id": "b25e5370-3100-4bba-b108-0367e1239efb", #自动生成的UUID
"level": 1,
"alterId": 64
}
]
},
"streamSettings": {
"network":"ws",
"wsSettings": {
"path": "/你的伪装路径", #path可自定义,这里是/ws,须与Nginx和客户端的path相一致
"headers": {
"Host": "你的域名" #Host可自定于任意域名,此处没有添加
}
}
}
},
"outbound": {
"protocol": "freedom",
"settings": {}
},
"outboundDetour": [
{
"protocol": "blackhole",
"settings": {},
"tag": "blocked"
}
],
"routing": {
"strategy": "rules",
"settings": {
"rules": [
{
"type": "field",
"ip": [
"0.0.0.0/8",
"10.0.0.0/8",
"100.64.0.0/10",
"127.0.0.0/8",
"169.254.0.0/16",
"172.16.0.0/12",
"192.0.0.0/24",
"192.0.2.0/24",
"192.168.0.0/16",
"198.18.0.0/15",
"198.51.100.0/24",
"203.0.113.0/24",
"::1/128",
"fc00::/7",
"fe80::/10"
],
"outboundTag": "blocked"
}
]
}
}
}

sudo service v2ray start #启动V2Ray
sudo service v2ray stop #停止运行V2Ray
sudo service v2ray restart #重启V2Ray
sudo service v2ray status #查看V2Ray状态

安装完BT,申请证书
站点「设置」的「配置文件」选项,在ssl最后一个}前添加如下代码:
location /ws {
proxy_pass http://127.0.0.1:123;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $http_host;
}

重启「Nignx服务」

service v2ray restart #重启V2Ray服务
service v2ray status #查看v2ray是否运行

最新版:ERROR: This script has been DISCARDED, please switch to fhs-install-v2ray project.
HOW TO USE: https://github.com/v2fly/fhs-install-v2ray
TO MIGRATE: https://github.com/v2fly/fhs-install-v2ray/wiki/Migrate-from-the-old-script-to-this

停止V2Ray服务
[cc]# systemctl disable v2ray.service –now[/cc]
可移除的原始文件
[cc]# rm -r /usr/bin/v2ray/
# rm /etc/systemd/system/v2ray.service
# rm /lib/systemd/system/v2ray.service
# rm /etc/init.d/v2ray[/cc]
迁移配置文档
[cc]# mv /etc/v2ray/ /usr/local/etc/[/cc]
修改 Log 權限
nobody:nogroup
[cc]$ id nobody[/cc]

uid=65534(nobody) gid=65534(nogroup) groups=65534(nogroup)
[cc]# chown -R nobody:nogroup /var/log/v2ray/[/cc]
nobody:nobody
[cc]$ id nobody[/cc]

uid=65534(nobody) gid=65534(nobody) groups=65534(nobody)
[cc]# chown -R nobody:nobody /var/log/v2ray/[/cc]
下載此指令碼
[cc]$ curl -O https://raw.githubusercontent.com/v2fly/fhs-install-v2ray/master/install-release.sh[/cc]
執行此指令碼
[cc]# bash install-release.sh[/cc]

下载
// 安装本体和数据文件
[cc]# curl -O https://raw.githubusercontent.com/v2fly/fhs-install-v2ray/master/install-release.sh[/cc]
// 只更新数据文件
[cc]# curl -O https://raw.githubusercontent.com/v2fly/fhs-install-v2ray/master/install-dat-release.sh[/cc]
安装和更新V2Ray

[cc]# bash install-release.sh[/cc]

启动
[cc]systemctl enable v2ray[/cc]
[cc]systemctl start v2ray[/cc]
查看状态
[cc]service v2ray status[/cc]

SSR一键安装脚本

wget --no-check-certificate https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocksR.sh
chmod +x shadowsocksR.sh
./shadowsocksR.sh 2>&1 | tee shadowsocksR.log

使用命令:
启动:/etc/init.d/shadowsocks start
停止:/etc/init.d/shadowsocks stop
重启:/etc/init.d/shadowsocks restart
状态:/etc/init.d/shadowsocks status

配置文件路径:/etc/shadowsocks.json
日志文件路径:/var/log/shadowsocks.log
代码安装目录:/usr/local/shadowsocks Continue reading

© 2025 E星期五的博客

Theme by Anders NorenUp ↑