Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

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

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

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

工具目录

分类

查看所有分类
Loading categories
RedPeanut — RedPeanut 是一个用 .Net Core 2 开发的小型 RAT,其代理基于 .Net 3.5 / 4.0。 | Kitploit
工具/GitHubGitHub/b4rtik/redpeanut
渗透测试框架权限提升漏洞利用框架Payload生成持久化机制Shellcode后渗透利用命令与控制红队远程访问工具
GitHubb4rtik/redpeanut

RedPeanut

33078196年前Kitploit 审核通过

RedPeanut 是一个用 .Net Core 2 开发的小型 RAT,其代理基于 .Net 3.5 / 4.0。

查看仓库

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

RedPeanut

__________________________________________________________________________
ooooooo________________oo_ooooooo___________________________________oo____
oo____oo___ooooo___oooooo_oo____oo__ooooo___ooooo__oo_ooo__oo____o__oo____
oo____oo__oo____o_oo___oo_oo____oo_oo____o_oo___oo_ooo___o_oo____o_oooo___
ooooooo___ooooooo_oo___oo_oooooo___ooooooo_oo___oo_oo____o_oo____o__oo____
oo____oo__oo______oo___oo_oo_______oo______oo___oo_oo____o_ooo___o__oo__o_
oo_____oo__ooooo___oooooo_oo________ooooo___oooo_o_oo____o_oo_ooo____ooo__
__________________________________________________________________________
________________________________________________RedPeanut_v0.3.0___@b4rtik
__________________________________________________________________________

当前正在测试中。

已知模块问题:

process -> spawnasagent

process -> spawnasshellcode


RedPeanut 是一个基于 .Net Core 2 开发的小型 RAT,其代理基于 .Net 3.5 / 4.0。RedPeanut 的代码执行基于 DonutCS 生成的 shellcode。因此,虽然它使用 .Net 开发,但并非完全依赖 Assembly.Load。这增加了检测面,但使我们能够练习和实验与 dotnet 环境、进程管理和注入相关的各种规避技术。此行为可以在运行时通过 "managed" 和 "unmanaged" 命令更改。如果你对可用于真实渗透测试的一致且稳定的 .Net C2 框架感兴趣,我推荐 Covenant。

RedPeanut 集成了以下威胁工具:

  • GhostPack
  • SharpGPOAbuse
  • SharpCOM
  • EvilClippy
  • DotNetToJS
  • SharpWeb
  • 修改版 PsExec
  • SharpSploit
  • TikiTorch

RedPeanut Agent

RedPeanut 代理可以编译为 .Net 3.5 和 4.0 版本,并通过 NamedPipe 支持横向移动。 代理在非托管模式下执行时,会在独立进程中执行关键任务,以防止 AV 响应检测或执行错误导致整个代理丢失。

执行流程如下:

  1. 创建进程
  2. 注入由 DonutCS 生成的静态 shellcode
  3. 加载器加载并执行 stager 或模块

代理目前仅支持 https 信道。

C2 信道

代理的 checkin 协议非常简单:

  1. Stager 请求一个代理 ID,消息使用共享服务器密钥进行 RC4 加密
  2. 服务器解密消息,编译并发送代理,生成并发送用于未来 AES 加密通信的 KEY 和 IV,消息使用 RC4 加密
  3. Stager 解密消息并通过 Assembly.Load 加载代理
  4. 代理向服务器发送 checkin 消息,消息使用 AES 加密

另外,可以激活覆盖信道功能(目前仅为 PoC)。其思路是模拟真实用户的网络流量。通常一个网页由 HTML 页面及其显示所需的所有对象(如 CSS、图片等)组成。在请求新任务时,服务器的响应将不是直接加密的任务,而是一个 HTML 页面,从中提取包含加密任务的图片链接。图片的 HTTP 请求将包含 Referer 头。

内容分发

内容分发分为 4 个信道:

  1. 可通过配置文件自定义的 C2 信道
  2. 由 RedPeanut 生成/管理的动态内容,可通过配置文件自定义
  3. 映射到 /file/ 的静态内容
  4. 用于恢复包含负载的图片的覆盖信道,映射到 /images/

配置文件

RedPeanut 能够自定义服务器端和客户端的网络痕迹。可设置的属性包括:

  • 通用
    • Delay(请求间隔)
    • ContentUri(动态内容 URL,例如 dll、hta 等)
    • UserAgent
    • Spawn(用于执行关键任务的进程)
    • HtmlCovered(启用覆盖信道)
    • TargetClass(用于查找图片恢复的类)
  • HttpGet
    • ApiPath(逗号分隔的 URL 列表,例如 /news-list.jsp,/antani.php 等)
      • 服务器端
        • Prepend
        • Append
        • Headers(HTTP 头的名称和值对)
      • 客户端
        • Headers
  • HttpPost
    • ApiPath(逗号分隔的 URL 列表,例如 /news-list.jsp,/antani.php 等)
    • Param(POST 请求负载参数的名称)
    • Mask(用于解释键值对格式,例如 {0}={1})(需要更多工作...)
    • 服务器端
      • Prepend
      • Append
      • Headers(HTTP 头的名称和值对)
    • 客户端
      • Headers

域名前置

要启用域名前置支持,需要在客户端部分(POST 和 GET 均需)设置 "Host" 头(在默认配置 2 中有示例)。

PowerShellExecuter

PowerShellExecuter 模块允许在运行空间中执行单行命令或文件,并已内置 AMSI 绕过、日志绕过和 PowerView。

启动器

  • Exe
  • Dll
  • PowerShell
  • Hta(vbs、powershell)
  • InstallUtil
  • MSBuild
  • MacroVba

本地模块

  • EvilClippy

Agent 任务

  • Upload
  • DownLoad
  • SharpWeb
  • SharpWmi
  • SharpUp
  • UACBypass Token Duplication
  • SharpDPAPIVaults
  • SharpDPAPITriage
  • SharpDPAPIRdg
  • SharpDPAPIMasterKeys
  • SharpDPAPIMachineVaults
  • SharpDPAPIMachineTriage
  • SharpDPAPIMachineMasterKeys
  • SharpDPAPIMachineCredentials
  • SharpDPAPICredentials
  • SharpDPAPIBackupKey
  • Seatbelt
  • SafetyKatz
  • RubeusTriage
  • RubeusTgtDeleg
  • RubeusS4U
  • RubeusRenew
  • RubeusPurge
  • RubeusPtt
  • RubeusMonitor
  • RubeusKlist
  • RubeusKerberoast
  • RubeusHash
  • RubeusHarvest
  • RubeusDump
  • RubeusDescribe
  • RubeusCreateNetOnly
  • RubeusChangePw
  • RubeusASREPRoast
  • RubeusAskTgt
  • SharpCOM
  • SharpGPOAddUserRights
  • SharpGPOAddStartupScript
  • SharpGPOAddLocalAdmin
  • SharpGPOAddImmediateTask
  • PowerShellExecuter
  • LatteralMSBuild
  • SharpPsExec
  • SharpAdidnsdump
  • PPIDAgent
  • SpawnAsAgent
  • SpawnShellcode
  • SpawnAsShellcode
  • SharpMiniDump
  • SharpKatz

持久化

  • Autorun
  • Startup
  • WMI
  • CRL

BlockDlls

从版本 0.3.0 开始,RedPeanutAgent 支持 blockdlls 命令。启用此选项后,在非托管模式下为执行任务而创建的子进程将以 PROCESS_CREATION_MITIGATION_POLICY_BLOCK_NON_MICROSOFT_BINARIES_ALWAYS_ON 属性创建。此属性可防止进程加载非 Microsoft 签名的 DLL,从而保护我们的任务免受 AV 和 EDR 钩子技术的影响。

直接系统调用与动态 DLL 加载

RedPeanutAgent 使用动态 DLL 加载来避免使用可疑的 DLL 导入。动态 DLL 加载的功劳归功于 @TheRealWover、@cobbr_io 和 @FuzzySec 在 SharpSploit 中的工作。

一些 AV 和 EDR 供应商使用钩子技术来跟踪活动。为避免使用被钩子的系统调用,RedPeanutAgent 通过自动注入必要代码来使用直接系统调用。直接系统调用的功劳归功于 @Cneelis

运行

要运行 RedPeanut,你需要安装 dotnet。在 Kali 上安装 dotnet:

wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.asc.gpg
mv microsoft.asc.gpg /etc/apt/trusted.gpg.d/
wget -q https://packages.microsoft.com/config/debian/9/prod.list
mv prod.list /etc/apt/sources.list.d/microsoft-prod.list
chown root:root /etc/apt/trusted.gpg.d/microsoft.asc.gpg
chown root:root /etc/apt/sources.list.d/microsoft-prod.list

apt-get install apt-transport-https
apt-get update
apt-get install dotnet-sdk-2.1
git clone --recursive https://github.com/b4rtik/RedPeanut.git

对于覆盖信道功能,需要安装 libgdiplus 库,因此:

对于 Linux 用户:

apt-get install -y libgdiplus

对于 OSx

brew install mono-libgdiplus

程序集签名密钥生成

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community>sn.exe -k 4096 key.snk

然后将 key.snk 复制到 Workspace/KeyFile

root@kali:~# cd RedPanut
root@kali:~/RedPeanut# dotnet run
Using launch settings from /root/Projects/RedPeanut/Properties/launchSettings.json...
Enter password to encrypt serverkey: 

__________________________________________________________________________
ooooooo________________oo_ooooooo___________________________________oo____
oo____oo___ooooo___oooooo_oo____oo__ooooo___ooooo__oo_ooo__oo____o__oo____
oo____oo__oo____o_oo___oo_oo____oo_oo____o_oo___oo_ooo___o_oo____o_oooo___
ooooooo___ooooooo_oo___oo_oooooo___ooooooo_oo___oo_oo____o_oo____o__oo____
oo____oo__oo______oo___oo_oo_______oo______oo___oo_oo____o_ooo___o__oo__o_
oo_____oo__ooooo___oooooo_oo________ooooo___oooo_o_oo____o_oo_ooo____ooo__
__________________________________________________________________________
________________________________________________RedPeanut_v0.3.0___@b4rtik
__________________________________________________________________________

[*] No profile available, creating new one...
[RP] >

Shellcode 生成器

DonutCS 是一个 shellcode 生成工具,可以从 .NET 程序集创建位置无关的 shellcode 负载。此 shellcode 可用于将该程序集注入任意 Windows 进程。给定任意 .NET 程序集、参数和入口点(如 Program.Main),它会生成从内存加载它的位置无关 shellcode。.NET 程序集可以从 URL 分阶段获取,或者通过直接嵌入在 shellcode 中进行无阶段加载。

CLR 持久化

CLR 持久化技术首次在 这篇文章 中由 @Am0nsec 提出。该技术在于执行应用程序域管理器钩子。如文章所述,需要用于执行钩子的程序集,该程序集可在 GAC 中找到。要在 GAC 中使用的程序集必须具有强名称,并使用密钥进行签名。CLR 持久化模块需要一个密钥来签署程序集,可以使用 sn.exe 工具生成,如下所示:

**********************************************************************
** Visual Studio 2017 Developer Command Prompt v15.9.3
** Copyright (c) 2017 Microsoft Corporation
**********************************************************************

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community>sn.exe -k 4096 key.snk

将 key.snk 文件复制到 Workspace/KeyFile 文件夹。此文件将用于签署持久化程序集。

工具更新

RedPeanut 中包含的一些知名工具(如 GhostPack 工具)被完整包装并在客户端执行。要更新工具(例如 SeatBelt)而无需更新整个仓库,需要:克隆 Seatbelt 仓库,将 "Main" 方法重命名为 "Execute",添加 public 修饰符,然后重新编译为 dll。必须使用 RastaMouse 的脚本 Get-CompressedShellcode.ps1 对 dll 进行压缩并编码为 Base64。

致谢

下载工具