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修改成自己的密码

import hashlib
hashlib.md5('P@ssW0rd'.encode('utf-8')).hexdigest()

在这里插入图片描述

用secrets生成jwt加盐密钥

impoty secrets
secrets.token_hex(16)

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

最终文件如下:

'''用户配置页
'''# 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 生成认证文件,这里改成自己想用的账号密码

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伪造

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

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

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

可以正常上线主机

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/601690.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Java EE初阶六】多线程案例(单例模式)

1. 单例模式 单例模式是一种设计模式,设计模式是我们必须要掌握的一个技能; 1.1 关于框架和设计模式 设计模式是软性的规定,且框架是硬性的规定,这些都是技术大佬已经设计好的; 一般来说设计模式有很多种,…

Go语言之父:开源14年,Go不止是编程语言,究竟做对了哪些?

提及编程语言,2023 年,除了老牌的 C 和新晋之秀 Rust 热度最高之外,就要数 Go 了。 从 2009 年由 C 语言获取灵感而发布,到如今风靡已久的高性能语言,Go 已经走过了 14 个年头。 “Go是一个项目,不只是一门…

基于ssm的智慧社区电子商务系统+vue论文

目 录 目 录 I 摘 要 III ABSTRACT IV 1 绪论 1 1.1 课题背景 1 1.2 研究现状 1 1.3 研究内容 2 2 系统开发环境 3 2.1 vue技术 3 2.2 JAVA技术 3 2.3 MYSQL数据库 3 2.4 B/S结构 4 2.5 SSM框架技术 4 3 系统分析 5 3.1 可行性分析 5 3.1.1 技术可行性 5 3.1.2 操作可行性 5 3…

HTML5大作业-精致版个人博客空间模板源码

文章目录 1.设计来源1.1 博客主页界面1.2 博主信息界面1.3 我的文章界面1.4 我的相册界面1.5 我的工具界面1.6 我的源码界面1.7 我的日记界面1.8 我的留言板界面1.9 联系博主界面 2.演示效果和结构及源码2.1 效果演示2.2 目录结构2.3 源代码 源码下载 作者:xcLeigh …

在MS中基于perl脚本实现氢键统计

氢原子与电负性大的原子X以共价键结合,若与电负性大、半径小的原子Y(O F N等)接近,在X与Y之间以氢为媒介,生成X-H…Y形式的一种特殊的分子间或分子内相互作用,称为氢键。 氢键通常是物质在液态时形成的&…

第1章 线性回归

一、基本概念 1、线性模型 2、线性模型可以看成:单层的神经网络 输入维度:d 输出维度:1 每个箭头代表权重 一个输入层,一个输出层 单层神经网络:带权重的层为1(将权重和输入层放在一起) 3、…

数据库设计——DML

D M L \huge{DML} DML DML:数据库操作语言,用来对数据库中的数据进行增删改查。 增(INSERT) 使用insert来向数据库中增加数据。 示例: -- DML : 数据操作语言 -- DML : 插入数据 - insert -- 1. 为 tb_emp 表的 us…

Kubernetes二进制部署 单节点

一、环境准备 k8s集群master1:192.168.229.90 kube-apiserver kube-controller-manager kube-scheduler etcd k8s集群node1: 192.168.229.80 kubelet kube-proxy docker flannel k8s集群node2: 192.168.229.70 kubelet kube-proxy docker flannel 至少2C2G 常见的k…

Flutter3.X基础入门教程(2024完整版)

Flutter介绍: Flutter是谷歌公司开发的一款开源、免费的UI框架,可以让我们快速的在Android和iOS上构建高质量App。它最大的特点就是跨平台、以及高性能。 目前Flutter已经支持 iOS、Android、Web、Windows、macOS、Linux的跨平台开发。 教程所讲内容支持…

独立式键盘控制步进电机实验

#include<reg51.h> //包含51单片机寄存器定义的头文件 sbit S1P1^4; //将S1位定义为P1.4引脚 sbit S2P1^5; //将S2位定义为P1.5引脚 sbit S3P1^6; //将S3位定义为P1.6引脚 unsigned char keyval; //储存按键值 unsigned char ID; …

bat批处理文件_命令汇总(2)

文章目录 1、换行2、返回上一级目录cd..3、隐藏指令回显echo off4、开启指令回显echo on5、用关闭echo off指令本身的回显6、echo提示信息 1、换行 cd.. echo. echo. echo. pause2、返回上一级目录cd… 3、隐藏指令回显echo off echo off echo hello1 echo hello2 pause4、开…

tomcat session cookie值设置逻辑

tomcat session cookie 值设置&#xff0c;tomcat jsessionid设置 ##调用request.getSession() Controller RequestMapping("/cookie") public class CookieController {RequestMapping("/tomcatRequest")ResponseBodypublic String tomcatRequest(HttpS…

软件测试|什么是Python构造方法,构造方法如何使用?

构造方法&#xff08;Constructor&#xff09;是面向对象编程中的重要概念&#xff0c;它在创建对象时用于初始化对象的实例变量。在Python中&#xff0c;构造方法是通过特殊的名称__init__()来定义的。本文将介绍Python构造方法的基本概念、语法和用法。 什么是构造方法&…

轻松获取CHATGPT API:免费、无验证、带实例

免费获取和使用ChatGPT API的方法 快速开始&#xff1a;视频教程 章节一&#xff1a;GPT-API-Free开源项目介绍 GPT-API-Free 是一个开源项目&#xff0c;它提供了一个中转API KEY&#xff0c;使用户能够调用多个GPT模型&#xff0c;包括gpt-3.5-turbo、embedding和gpt-4。这…

记一次服务器被入侵的排查过程

起因 阿里云安全中心报告了告警信息&#xff0c;同时手机短信、邮件、电话也接收到了来自阿里云的风险通知&#xff0c;感觉这方面阿里云还是不错。 排查及解决过程 这条wget指令究竟是怎么被运行的 我无法定位到攻击人员是通过什么样的方式让我的java程序执行了wget这条指…

地平面--高速布线

https://baijiahao.baidu.com/s?id1764139038516816855&wfrspider&forpc 概念 回顾传输线&#xff0c;由任意两条有一定长度的导线组成&#xff0c;一条为信号路径&#xff0c;一条为返回路径。基本电路理论告诉我们&#xff0c;信号是由电流传播的&#xff0c;明确的…

ECMAScript简介及特性

ECMAScript&#xff0c;通常简称为ES&#xff0c;是一种由ECMA&#xff08;欧洲计算机协会&#xff09;国际组织标准化和推动的脚本语言规范。它被广泛用于Web浏览器和服务器端编程&#xff0c;是JavaScript的基础。 ECMAScript的起源可以追溯到1996年&#xff0c;当时Netscape…

vue2 消息弹框

父页面 <template><div style"margin-top: 20px"><div class"nav-style msg-style"><el-badge :value"value" :max"99" class"num" v-if"value > 0"><i class"el-icon-bell&…

深度生成模型之图像翻译GAN ->(个人学习记录笔记)

文章目录 深度生成模型之图像翻译GAN图像翻译的应用1. 风格迁移2. 数据增强3. 经典图像任务4. 内容创作5. 人脸图像编辑6. 人体图像编辑 图像翻译模型1. 有监督图像翻译模型2. 无监督图像翻译模型3. 多域图像翻译模型 深度生成模型之图像翻译GAN 图像翻译的应用 1. 风格迁移 …

8、VS中Git使用

VS中Git使用 1.基础操作1.1 VS配置Git1.2 操作界面 2.本地库版本管理2.1 创建管理本地库2.2 暂存、存储2.3 提交2.4 版本切换 3.分支操作3.1 分支应用3.2 新建分支3.3 合并分支、解决冲突3.4 删除分支 4.远程库版本管理4.1 新建、克隆4.2 提取、拉取、推送与同步4.3 团队开发 最…