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

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

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

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

工具目录

分类

查看所有分类
Loading categories
SharpWhispers — SysWhispers2 的 C# 移植版本。它使用 SharpASM 查找代码洞以执行系统调用存根。 | Kitploit
工具/GitHubGitHub/secforce/sharpwhispers
IDS/IPS规避Shellcode后渗透利用红队Payload 开发
GitHubsecforce/sharpwhispers

SharpWhispers

SysWhispers2 的 C# 移植版本。它使用 SharpASM 查找代码洞以执行系统调用存根。

查看仓库
11217203年前Kitploit 审核通过

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

SharpWhispers

LOGO

SysWhispers2 的 C# 移植版。

它使用 SharpASM 来查找用于执行系统调用存根的代码洞。

阅读博客文章了解技术细节:https://www.secforce.com/blog/sharpasm-sharpwhispers/

要求

  • Visual Studio
  • .NET Framework >= 3.5
  • Python3

使用方法


   ______               _      ____   _                    
  / __/ /  ___ ________| | /| / / /  (_)__ ___  ___ _______
 _\ \/ _ \/ _ `/ __/ _ \ |/ |/ / _ \/ (_-</ _ \/ -_) __(_-<
/___/_//_/\_,_/_/ / .__/__/|__/_//_/_/___/ .__/\__/_/ /___/
                 /_/                    /_/                

@d_glenx
@SECFORCE_LTD

=============================================================


usage: SharpWhispers.py [-h] [-p PRESET] [-f FUNCTIONS] -o OUT_FILE

optional arguments:
  -h, --help            show this help message and exit
  -p PRESET, --preset PRESET
                        Preset ("all", "common", "dinvoke")
  -f FUNCTIONS, --functions FUNCTIONS
                        Comma-separated functions
  -o OUT_FILE, --out-file OUT_FILE
                        Output basename (w/o extension)

创建 Visual Studio 项目的说明见此处

基本进程注入示例见此处

预设

目前,json 文件包含生成 33 个系统调用所需的数据。

注意:All 预设仅包含所有系统调用中的一个子集。

All

==== System Calls Imported ====

==[DInvoke]==
[i] Number of Delegates: 13

NtCreateThreadEx
NtCreateSection
NtUnmapViewOfSection
NtMapViewOfSection
NtQueryInformationProcess
NtOpenProcess
NtAllocateVirtualMemory
NtFreeVirtualMemory
NtQueryVirtualMemory
NtProtectVirtualMemory
NtWriteVirtualMemory
NtReadVirtualMemory
NtOpenFile

==[Additional]==
[i] Number of Delegates: 20

NtOpenThread
NtQueueApcThread
NtOpenSection
NtSuspendThread
NtQueryInformationFile
NtSetContextThread
NtResumeProcess
NtOpenProcessToken
NtWaitForMultipleObjects
NtQueryDirectoryFile
NtAdjustPrivilegesToken
NtQuerySystemInformation
NtDeviceIoControlFile
NtResumeThread
NtCreateProcess
NtSuspendProcess
NtGetContextThread
NtClose
NtQueryInformationThread
NtTestAlert

Common

NtCreateThreadEx
NtCreateSection
NtUnmapViewOfSection
NtMapViewOfSection
NtQueryInformationProcess
NtAllocateVirtualMemory
NtFreeVirtualMemory
NtProtectVirtualMemory
NtWriteVirtualMemory
NtOpenFile
NtReadVirtualMemory
NtQueryVirtualMemory
NtOpenProcess

DInvoke

NtCreateThreadEx
NtCreateSection
NtUnmapViewOfSection
NtMapViewOfSection
NtQueryInformationProcess
NtOpenProcess
NtAllocateVirtualMemory
NtFreeVirtualMemory
NtQueryVirtualMemory
NtProtectVirtualMemory
NtWriteVirtualMemory
NtReadVirtualMemory
NtOpenFile

模板

Delegates.cs

动态生成

包含待生成的系统调用的委托。

PEB.cs

依赖 SharpASM

使用 ASM 获取 PEB 地址的辅助类。

SharpASM.cs

包含在 C# 中动态调用 ASM 的代码。 函数 public static IntPtr callASM(byte[] stub) 可用于通过传递字节数组来调用 shellcode。

SharpWhispers.cs

动态生成 - 脚本生成随机种子来对系统调用名称进行哈希处理

包含使用 ElephantSe4l 的技术检索系统调用编号的代码(代码移植自 SysWhispers2)。

Syscalls.cs

依赖 SharpASM

包含使用 ASM 动态执行系统调用的代码。

还包含系统调用的包装器(例如 Syscall.NtAllocateVirtualMemory)(动态生成)

DInvoke 数据类型

动态生成

SharpWhispers 的输出文件可以直接用于 C# 项目。所需的数据类型是 DInvoke 项目 中定义的数据类型的一个子集(部分数据类型实际上借自 Rastamouse 的精简项目),以减小检测面。这些数据类型定义在 SharpWhisper.Data 命名空间中,以避免与 DInvoke 的定义重叠。

注意: 仅在需要时(即某系统调用需要某个数据类型时)生成这些数据类型,以尽可能减小检测面。

以下模板用于生成所需的数据类型:

  • TypedefsNative.cs
  • TypedefsPE.cs
  • TypedefsWin32.cs
下载工具