Supershell防溯源反制配置

简介

项目地址:https://github.com/tdragon6/Supershell

Supershell是一个集成了reverse_ssh服务的WEB管理平台,使用docker一键部署(快速构建),支持团队协作进行C2远程控制,通过在目标主机上建立反向SSH隧道,获取真正的完全交互式Shell,同时支持多平台架构的客户端Payload,客户端Payload的大小为几MB,可以理解为在目标主机上部署了一个几MB的ssh服务器,然后获取了一个ssh shell;Supershell集成了客户端管理、客户端Payload生成、交互式Shell、文件管理、文件服务器、内存注入、安装服务、迁移guid、客户端监听、本地原生sftp命令传输文件、本地ssh隧道端口转发和备忘录等功能。

这里通过修改几个小配置达成效果:无法判断这个端口开放的是否是Supershell,无法通过jwt伪造登录。

下载发行版:

复制代码
wget -P /opt/ https://github.com/tdragon6/Supershell/releases/download/v2.0.0/Supershell.tar.gz

解压:

复制代码
cd /opt
tar zxvf Supershell.tar.gz
cd Supershell

修改配置文件

修改默认密码和jwt盐

Supershell根目录下config.py默认内容如下

用python生成新密码的md5,P@ssW0rd修改成自己的密码

python 复制代码
import hashlib
hashlib.md5('P@ssW0rd'.encode('utf-8')).hexdigest()

用secrets生成jwt加盐密钥

python 复制代码
impoty secrets
secrets.token_hex(16)

最终文件如下:

python 复制代码
'''
    用户配置页
'''

# web登录和会话配置信息
user = 'admin'
pwd = '5ca33d221fd09f16c1ecba9c1aadc3eb' # 明文密码 P@ssW0rd 的md5

# jwt加密盐
global_salt = '1a632e90f508692426baa98ca832c200' # 必须修改,不然可以伪造jwt token直接登录

# 会话保持时间,单位:小时
expire = 48


# 共享远控shell的共享密码
share_pwd = '5ca33d221fd09f16c1ecba9c1aadc3eb' # 明文密码 P@ssW0rd 的md5

# 共享shell会话保持时间,单位:小时
share_expire = 24

修改默认端口

修改docker-compose.yml文件,在第七行可以看到默认端口是8888,这里修改成30100这种不常用端口

设置Nginx基础认证

进入volume/nginx目录

用 htpasswd 生成认证文件,这里改成自己想用的账号密码

bash 复制代码
htpasswd -nbm admin password > admin.pwd

修改default.conf

location /下面添加下面内容

复制代码
auth_basic "please login";
auth_basic_user_file /etc/nginx/admin.pwd; 

再次修改docker-compose.yml文件

在第十三行后面添加下面内容

复制代码
- ./volume/nginx/admin.pwd:/etc/nginx/admin.pwd

效果

docker-compose up -d启动

访问30100端口,效果是这样的,没有任何supershell的特征

输入正确密码才会进入SuperShell界面

这里由于刚才修改默认账号密码和jwt盐,所以无法被暴力破解和jwt伪造

输入正确账号密码即可登录

可以正常上线主机

相关推荐
网络抓包与爬虫14 分钟前
Wireshark——抓包分析
websocket·网络协议·tcp/ip·http·网络安全·https·udp
仙女很美哦1 小时前
Flutter视频播放、Flutter VideoPlayer 视频播放组件精要
websocket·网络协议·tcp/ip·http·网络安全·https·udp
CYRUS STUDIO3 小时前
Unidbg Trace 反 OLLVM 控制流平坦化(fla)
android·汇编·算法·网络安全·逆向·ollvm
写代码的小王吧3 小时前
【Java可执行命令】(十)JAR文件签名工具 jarsigner:通过数字签名及验证保证代码信任与安全,深入解析 Java的 jarsigner命令~
java·开发语言·网络·安全·web安全·网络安全·jar
iOS技术狂热者6 小时前
Flutter 音视频播放器与弹幕系统开发实践
websocket·网络协议·tcp/ip·http·网络安全·https·udp
予安灵7 小时前
XSS 攻击(详细)
前端·web安全·网络安全·网络攻击模型·xss·安全架构·xss攻击
网络抓包与爬虫9 小时前
flutter WEB端启动优化(加载速度,加载动画)
websocket·网络协议·tcp/ip·http·网络安全·https·udp
网络抓包与爬虫9 小时前
从头开发一个Flutter插件(二)高德地图定位插件
websocket·网络协议·tcp/ip·http·网络安全·https·udp
色的归属感10 小时前
一款功能强大的手机使用情况监控工具
websocket·网络协议·tcp/ip·http·网络安全·https·udp