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

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

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

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

工具目录

分类

查看所有分类
Loading categories
SessionGopher — SessionGopher 是一款 PowerShell 工具,利用 WMI 提取 WinSCP、PuTTY、SuperPuTTY、FileZilla 和 Microsoft 远程桌面等远程访问工具保存的会话信息。它既支持远程运行,也支持本地运行。 | Kitploit
工具/GitHubGitHub/arvanaghi/sessiongopher
侦察横向移动信息收集后渗透利用渗透测试红队
GitHubarvanaghi/sessiongopher

SessionGopher

SessionGopher 是一款 PowerShell 工具,利用 WMI 提取 WinSCP、PuTTY、SuperPuTTY、FileZilla 和 Microsoft 远程桌面等远程访问工具保存的会话信息。它既支持远程运行,也支持本地运行。

查看仓库
1.3k170147年前Kitploit 审核通过

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Copyright 2017 FireEye, 由 Brandon Arvanaghi (@arvanaghi) 创建

根据 Apache 许可证 2.0 版("许可证")授权; 除非遵守许可证,否则不得使用此文件。 您可以在以下网址获取许可证副本:

http://www.apache.org/licenses/LICENSE-2.0

除非适用法律要求或书面同意,否则根据许可证分发的软件按"原样"分发, 不附带任何明示或暗示的保证或条件。 有关许可证下的特定语言管理权限和限制,请参阅许可证。


SessionGopher

静默挖掘 PuTTY、WinSCP、FileZilla、SuperPuTTY 和 RDP 的已保存会话信息

SessionGopher 是一个 PowerShell 工具,用于查找并解密远程访问工具的已保存会话信息。它内置了 WMI 功能,因此可以远程运行。 其最佳使用场景是识别可能连接 Unix 系统、跳板机或销售点终端的系统。

SessionGopher 的工作原理是查询 HKEY_USERS 配置单元,获取所有曾登录过域内计算机的用户信息。它提取 PuTTY、WinSCP、SuperPuTTY、FileZilla 和 RDP 的已保存会话信息,并自动提取并解密 WinSCP、FileZilla 和 SuperPuTTY 的已保存密码。 在彻底模式下运行时,它还会搜索所有驱动器中 PuTTY 私钥文件(.ppk),并提取所有相关的私钥信息(包括密钥本身),以及远程桌面(.rdp)和 RSA(.sdtid)文件。

用法

-Thorough:搜索所有驱动器中的 PuTTY 私钥(.ppk)、远程桌面连接(.rdp)和 RSA(.sdtid)文件。

-o:将输出数据保存到包含 .csv 文件的文件夹中。

-iL:提供一个包含主机列表的文件(每行一个主机),用于运行 SessionGopher。在 -iL 后提供文件路径。

-AllDomain:SessionGopher 将查询 Active Directory 获取所有域内系统,并对所有系统运行。

-Target:指定要攻击的目标主机。在 -Target 后提供目标主机。

本地运行

. .\SessionGopher.ps1
Invoke-SessionGopher -Thorough

远程运行(-iL、-AllDomain、-Target)

要远程运行,您可以通过 -u 和 -p 标志为远程系统提供特权帐户的凭据。如果省略 -u 和 -p 标志,SessionGopher 将使用运行脚本的帐户的安全上下文(例如,如果您已作为 DA 帐户登录,或作为目标系统本地管理员帐户登录,或使用 runas 运行这两种情况之一,则无需提供凭据)。

Import-Module path\to\SessionGopher.ps1;
Invoke-SessionGopher -AllDomain -u domain.com\adm-arvanaghi -p s3cr3tP@ss

或

Import-Module path\to\SessionGopher.ps1;
Invoke-SessionGopher -iL computerlist.txt -u domain.com\adm-arvanaghi -p s3cr3tP@ss -o

或

Import-Module path\to\SessionGopher.ps1;
Invoke-SessionGopher -Target brandonArvanaghi_win7 -Thorough

这些命令中的任何一个都可以与 -Thorough 结合使用,但请注意,由于它会查询整个远程文件系统,因此会显著延长运行时间。不建议在查询超过少量系统时使用 -Thorough 模式。

通过添加 -o(输出到 CSV)远程运行效果很好,因为 SessionGopher 会累积所有找到的会话,并准确告知您找到该已保存会话的位置。

输出到 CSV(远程或本地)

要让 SessionGopher 创建一个文件夹,整齐地包含提取会话的 .csv 文件:

Import-Module path\to\SessionGopher.ps1;
Invoke-SessionGopher -AllDomain -o

... 就是这样。

访问 HKEY_USERS 中每个用户的已保存会话信息需要本地管理员权限。如果没有本地管理员权限,您仍将获得当前用户的已保存会话信息。

示例输出(-Thorough):

[+] 正在挖掘 Win7-Arvanaghi ...
WinSCP 会话

会话    : [email protected]
主机名  : 198.273.212.334
用户名  : admin-anthony
密码    : Super*p@ssw0rd

会话    : [email protected]
主机名  : 204.332.455.213
用户名  : Freddy
密码    : angelico1892

FileZilla 会话

名称     : BarrySite
密码     : imr34llytheFl@sh
主机     : 10.8.30.21
用户     : BarryAllen
协议     : 如果可用则使用基于 TLS 的 FTP
帐户     : BarryAllenAccount
端口     : 22

PuTTY 会话

会话    : PointOfSaleTerminal
主机名  : 10.8.0.10

PuTTY 私钥文件(.ppk)

路径                   : C:\Users\Brandon Arvanaghi\Documents\mykey.ppk
协议                   : ssh-rsa
注释                   : rsa-key-20170116
私钥加密               : 无
私钥                   : {AAABAEazxtDz6E9mDeONOmz07sG/n1eS1pjKI8fOCuuLnQC58LeCTlysOmZ1/iC4, g4HyRpmdKJGhIxj66/RQ135hVesyk02StleepK4+Tnvz3zmdr4Do5W99qKkrWI3D, T9GOxOIoR9Zc6j57D+fdesJq4ItEIxcQZlXC1F9KZcbXjSJ3iBmCsbG/aRJmMJNx, 
                         nCMaZkySr4R4Z/E+l1JOzXaHh5WQ2P0K4YM1/6XG6C4VzDjvXwcY67MYsobTeCR2...}
私钥 MAC               : b7e47819fee39a95eb374a97f939c3c868f880de


Microsoft 远程桌面(RDP)会话

主机名 : us.greatsite.com
用户名 : Domain\tester

Microsoft 远程桌面 .rdp 文件

路径                    : C:\Users\Brandon Arvanaghi\Desktop\config\PenTestLab-Win.RDP
主机名                  : dc01.corp.hackerplaypen.com
网关                    : rds01.corp.hackerplaypen.com
是否提示凭据            : 否
管理会话                : 不连接到远程主机上的管理会话


由 Brandon Arvanaghi(@arvanaghi)编写

此代码最初在 FireEye 开发。但后续任何更新均由作者在 FireEye 之外完成。

下载工具