Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
PoshC2 — 一个支持代理的C2框架,用于帮助红队成员进行后渗透和横向移动。 | Kitploit
工具/GitHubGitHub/nettitude/poshc2
渗透测试框架Payload生成横向移动后渗透利用命令与控制红队
GitHubnettitude/poshc2

PoshC2

一个支持代理的C2框架,用于帮助红队成员进行后渗透和横向移动。

查看仓库
2.1k3559个月前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

PoshC2 标志

Docker 镜像 CI

PoshC2 是一个支持代理的 C2 框架,用于帮助渗透测试人员进行红队行动、后渗透和横向移动。

PoshC2 主要使用 Python3 编写,采用模块化格式,允许用户添加自己的模块和工具,实现可扩展且灵活的 C2 框架。开箱即用的 PoshC2 提供了 PowerShell/C# 和 Python2/Python3 的植入程序,有效载荷包括 PowerShell v2 和 v4、C++ 和 C# 源代码、各种可执行文件、DLL 和原始 shellcode,以及 Python2/Python3 有效载荷。这些为广泛的设备和操作系统(包括 Windows、*nix 和 OSX)提供了 C2 功能。

PoshC2 的其他显著功能包括:

  • 使用 Docker 实现一致且跨平台的支持。
  • 高度可配置的有效载荷,包括默认的信标时间、抖动、截止日期、用户代理等。
  • 大量开箱即生成并频繁更新的有效载荷。
  • 包含内置 AMSI 绕过和 ETW 修补的 shellcode,具有高成功率和隐蔽性。
  • 自动生成的 Apache Rewrite 规则,用于 C2 代理,保护您的 C2 基础设施并保持良好的操作安全。
  • 模块化和可扩展的格式,允许用户创建或编辑 C#、PowerShell 或 Python3 模块,这些模块可由植入程序在内存中运行。
  • 通过 Pushover 或 Slack 收到成功植入程序时的通知。
  • 全面且持续维护的上下文帮助,以及具有上下文自动补全、历史记录和建议的智能提示。
  • 完全加密的通信,即使在通过 HTTP 通信时也能保护 C2 流量的机密性和完整性。
  • 客户端/服务器格式,允许多个团队成员使用单个 C2 服务器。
  • 全面的日志记录。每个操作和响应都带有时间戳,并存储在数据库中,包含所有相关信息,如用户、主机、植入编号等。此外,C2 服务器输出直接记录到单独的文件中。
  • 使用 C# 或 Python2/Python3 的不依赖 PowerShell 的植入程序,无需 System.Management.Automation.dll。
  • 使用 SharpSocks 的免费开源 SOCKS 代理。
  • 植入程序的 HTTP(S) 和 SMB 命名管道通信,并结合植入程序链式连接,以访问无法访问互联网的网络。

文档

我们在 https://poshc2.readthedocs.io/en/latest/ 维护 PoshC2 文档。

在 #Slack 上找到我们 - poshc2.slack.com(如需邀请,请发送电子邮件至 [email protected])

安装

您可以直接安装 PoshC2 或使用 Docker 镜像,两种方式的说明如下。

在 Kali 主机上直接安装

提供了一个用于安装 PoshC2 的安装脚本:

root@kitploit:~
*** PoshC2 安装脚本 ***
用法:
./Install.sh -b <git 分支> -p <克隆 PoshC2 的目录>

默认分支为 master,默认目录为 /opt/PoshC2

需要提升权限,因为安装脚本会执行 apt 更新和安装。

root@kitploit:~
curl -sSL https://raw.githubusercontent.com/nettitude/PoshC2/master/Install.sh | sudo bash

或者,克隆仓库后手动运行安装脚本。

root@kitploit:~
sudo ./Install.sh

您可以通过将参数 -p 传递给 Install.sh 脚本来手动设置 PoshC2 安装目录。默认为 /opt/PoshC2:

root@kitploit:~
curl -sSL https://raw.githubusercontent.com/nettitude/PoshC2/master/Install.sh | sudo bash -s -- -p /root/PoshC2

前沿功能

我们希望保持 master 分支的稳定,以确保用户在需要时能够依赖它。因此,更改通常可能功能完整但尚未出现在 master 上,因为它们尚未完全测试并签署。

如果您想查看 PoshC2 即将推出的功能,可以查看 dev 分支,或任何从 dev 分支出的独立功能分支。

由于功能在合并到 dev 之前会进行测试,因此该分支应仍然相当稳定,操作员可以选择使用此分支或特定功能分支进行任务。 但这会以牺牲稳定性换取新功能,请自行斟酌。

要使用 dev 或功能分支,请将分支名称作为 -b 参数传递给 Install.sh 脚本:

root@kitploit:~
curl -sSL https://raw.githubusercontent.com/nettitude/PoshC2/dev/Install.sh | sudo bash -s -- -b dev

注意 URL 中也包含分支名称(此处为 dev 而非 master)。

安装 Docker

您也可以使用 Docker 运行 PoshC2,这样运行更稳定,并且使 PoshC2 能够轻松地在其他操作系统上运行。

Docker 安装不会克隆 PoshC2,而是使用 Docker Hub 上的 PoshC2 镜像,因此仅执行一些依赖项和脚本的最小安装。

首先,在主机上安装 Docker,然后根据您的操作系统,将 PoshC2 项目目录添加为 Docker 的共享目录。默认情况下,*nix 上为 /var/poshc2,Mac 上为 /private/var/poshc2。

基于 Kali 的主机

安装脚本:

root@kitploit:~
*** PoshC2 的 Docker 安装脚本 ***
用法:
./Install-for-Docker.sh -b <git 分支>

默认分支为 master

需要提升权限,因为安装脚本会执行脚本安装。

root@kitploit:~
curl -sSL https://raw.githubusercontent.com/nettitude/PoshC2/master/Install-for-Docker.sh | sudo bash

要在 Docker 中使用 dev 或功能分支,请从相应分支下载 Install-for-Docker.sh,并将分支名称作为参数传递:

root@kitploit:~
curl -sSL https://raw.githubusercontent.com/nettitude/PoshC2/BRANCHNAME/Install-for-Docker.sh | sudo bash -s -- -b BRANCHNAME

Windows

在 Windows 上,导入 PoshC2.psm1 PowerShell 模块。

root@kitploit:~
Import-Module -DisableNameChecking C:\PoshC2\resources\scripts\PoshC2.psm1
posh-project -PoshC2Dir "C:\PoshC2" -LocalPoshC2ProjectDir "C:\PoshC2_Project" -Arg1 "-n" -Arg2 "newproject"
posh-config -PoshC2Dir "C:\PoshC2" -LocalPoshC2ProjectDir "C:\PoshC2_Project"
posh-server -PoshC2Dir "C:\PoshC2" -LocalPoshC2ProjectDir "C:\PoshC2_Project"
posh -PoshC2Dir "C:\PoshC2" -LocalPoshC2ProjectDir "C:\PoshC2_Project" username

运行 PoshC2

创建一个新项目:

root@kitploit:~
posh-project -n <项目名称>

可以使用此脚本切换或列出项目:

root@kitploit:~
[*] 用法:posh-project -n <新项目名称>
[*] 用法:posh-project -s <要切换到的项目>
[*] 用法:posh-project -l (列出项目)
[*] 用法:posh-project -d <要删除的项目>
[*] 用法:posh-project -c (显示当前项目)

编辑项目的配置:

root@kitploit:~
posh-config

启动 PoshC2 服务器:

root@kitploit:~
posh-server

或者作为服务启动:

root@kitploit:~
posh-service

另外,运行 ImplantHandler 以与植入程序交互:

root@kitploit:~
posh -u <用户名>

请参阅 https://poshc2.readthedocs.io/en/latest/ 以获取 PoshC2 的完整文档。

指定 Docker 标签

如果您使用 Docker,可以使用 -t 选项为 posh-server 和 posh 指定要运行的 Docker 镜像标签。

例如:

root@kitploit:~
posh-server -t latest

更新 PoshC2 安装

不建议在任务期间更新 PoshC2。传入的更改可能与现有项目不兼容,并可能导致异常行为。

当使用 git 克隆版本的 PoshC2 时,您可以使用以下命令更新您的 PoshC2 安装:

root@kitploit:~
*** PoshC2 更新脚本 ***
用法:
posh-update -b <git 分支>

默认分支为 master

使用旧版本

您可以通过引用相应的标签来使用旧版本的 PoshC2。请注意,这仅在您已克隆仓库的情况下有效。 您可以通过以下命令列出仓库的标签:

root@kitploit:~
git tag --list

如果您有 PoshC2 的本地克隆,可以在离线时通过检出要使用的版本来更改使用的版本:

root@kitploit:~
git reset --hard <标签名称>

例如:

root@kitploit:~
git reset --hard v4.8

但请注意,这将覆盖对文件的任何本地更改,例如对配置文件的更改,并且您可能需要重新运行该版本的安装脚本或相应地重新设置环境。

许可/使用条款

本软件仅应用于授权的测试活动,不得用于恶意用途。

下载本软件即表示您接受使用条款和许可协议。

下载工具