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

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

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

3307866年前Kitploit 审核通过

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

查看仓库

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

RedPeanut

root@kitploit:~
__________________________________________________________________________
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:

    root@kitploit:~
    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
    
    root@kitploit:~
    git clone --recursive https://github.com/b4rtik/RedPeanut.git
    

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

    对于 Linux 用户:

    root@kitploit:~
    apt-get install -y libgdiplus
    

    对于 OSx

    root@kitploit:~
    brew install mono-libgdiplus
    

    程序集签名密钥生成

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

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

    root@kitploit:~
    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 工具生成,如下所示:

    root@kitploit:~
    **********************************************************************
    ** 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。

    致谢

    • Donut - @TheRealWover
    • DonutCS - @n1xbyte
    • SharpSploit - @cobbr_io
    • GhostPack - @harmj0y
    • SharpCOM - @rvrsh3ll
    • SharpGPOAbuse - @mwrlabs
    • EvilClippy - @StanHacked
    • DotNetToJS - @tiraniddo
    • Sharpshooter - @domchell
    • SharpWeb - @djhohnstein
    • PsExec 原始版本 - @malcomvetter
    • TikiTorch - @_RastaMouse
    • ReadLine - Toni Solarin-Sodara
    下载工具