Mimikatz 是一种开源黑客工具,可以从受感染的机器中提取凭证信息。
它是由 Benjamin Delpy 创建的,作为概念证明,旨在强调 Microsoft 身份验证协议(如 Windows 新技术 LAN 管理器 (NTLM))如何容易受到攻击。
从那时起,它就成为了渗透测试和红队领域事实上的后开发工具,许多认证都要求您知道如何使用它。
会在攻击的后利用阶段使用 Mimikatz 。此阶段始于成功入侵计算机并获得未经授权的访问权限之后。
在此阶段,您将执行各种后利用活动,例如收集有关系统和内部网络的信息、提升您的权限以及创建持久性机制。这就是 Mimikatz 的作用所在。
Mimikatz 可以从内存或磁盘密码存储中提取凭证数据,包括纯文本密码、密码、Kerberos 票证和 NTLM 密码哈希。
它是由 Benjamin Delpy 创建的,作为概念证明,旨在强调 Microsoft 身份验证协议(如 Windows 新技术 LAN 管理器 (NTLM))如何容易受到攻击。
从那时起,它就成为了渗透测试和红队领域事实上的后开发工具,许多认证都要求您知道如何使用它。
会在攻击的后利用阶段使用 Mimikatz 。此阶段始于成功入侵计算机并获得未经授权的访问权限之后。
在此阶段,您将执行各种后利用活动,例如收集有关系统和内部网络的信息、提升您的权限以及创建持久性机制。这就是 Mimikatz 的作用所在。
Mimikatz 可以从内存或磁盘密码存储中提取凭证数据,包括纯文本密码、密码、Kerberos 票证和 NTLM 密码哈希。
提取明文密码
要执行的首批后利用活动之一是搜索您刚刚入侵的系统上的信息。这可能是配置文件、敏感文档或用户的纯文本密码。
Mimikatz 可以使用其模块帮助您做到这一点sekurlsa,该模块可以从 LSASS 的内存中提取密码、私钥、PIN 码和票据。
要使用该模块提取明文密码sekurlsa,可以使用该logonpasswords命令。此命令列出所有可用的提供商凭据,包括最近登录的用户帐户和计算机凭据。
首先,必须关闭所有 Windows 安全设置,下载 Mimikatz,然后通过右键单击该应用程序以管理员身份运行它。
要执行的首批后利用活动之一是搜索您刚刚入侵的系统上的信息。这可能是配置文件、敏感文档或用户的纯文本密码。
Mimikatz 可以使用其模块帮助您做到这一点sekurlsa,该模块可以从 LSASS 的内存中提取密码、私钥、PIN 码和票据。
要使用该模块提取明文密码sekurlsa,可以使用该logonpasswords命令。此命令列出所有可用的提供商凭据,包括最近登录的用户帐户和计算机凭据。
首先,必须关闭所有 Windows 安全设置,下载 Mimikatz,然后通过右键单击该应用程序以管理员身份运行它。
从 LSA 和 SAM 转储凭证
可以从中转储凭据的另一个数据存储是 LSA 和 SAM 数据库。每次启动 Windows 计算机时都会加载这些数据库,如果您具有调试权限,则可以使用 Mimkatzlsadump模块从中转储凭据。
该lsadump模块有一个用于转储 LSA 数据的命令和一个用于转储 SAM 数据库内容的命令。
与之前一样,必须以管理员或系统用户身份运行 Mimikatz,并使用命令获取调试权限privilege::debug。完成此操作后,你可以通过执行转储 LSA 数据lsadump::lsa /inject。
向下滚动输出,可以看到该命令会转储最近登录的用户(如StationX-user)和未将其登录凭据存储在 LSASS 内存中的用户(如)的 NTLM 哈希StationX-admin。
可以从中转储凭据的另一个数据存储是 LSA 和 SAM 数据库。每次启动 Windows 计算机时都会加载这些数据库,如果您具有调试权限,则可以使用 Mimkatzlsadump模块从中转储凭据。
该lsadump模块有一个用于转储 LSA 数据的命令和一个用于转储 SAM 数据库内容的命令。
与之前一样,必须以管理员或系统用户身份运行 Mimikatz,并使用命令获取调试权限privilege::debug。完成此操作后,你可以通过执行转储 LSA 数据lsadump::lsa /inject。
向下滚动输出,可以看到该命令会转储最近登录的用户(如StationX-user)和未将其登录凭据存储在 LSASS 内存中的用户(如)的 NTLM 哈希StationX-admin。
过度传递哈希(传递密钥)攻击
过度传递哈希攻击涉及提取目标用户的 Kerberos 身份验证票证并将其注入到您的会话中。这允许您冒充目标用户并访问他们有权访问的资源。
执行过度传递哈希攻击很简单。
使用命令提取受感染机器上的 Kerberos 票证sekurlsa::tickets /export,如前所述。然后使用命令,kerberos::ptt后跟要模拟的用户票证的名称。
这会将 Kerberos 票证注入(或传递)到当前的会话中。现在,可以使用命令misc::cmd(1) 从此 Mimikatz 进程生成一个终端,并通过运行 (2) 确认您已准备好使用 Kerberos 令牌klist。
过度传递哈希攻击涉及提取目标用户的 Kerberos 身份验证票证并将其注入到您的会话中。这允许您冒充目标用户并访问他们有权访问的资源。
执行过度传递哈希攻击很简单。
使用命令提取受感染机器上的 Kerberos 票证sekurlsa::tickets /export,如前所述。然后使用命令,kerberos::ptt后跟要模拟的用户票证的名称。
这会将 Kerberos 票证注入(或传递)到当前的会话中。现在,可以使用命令misc::cmd(1) 从此 Mimikatz 进程生成一个终端,并通过运行 (2) 确认您已准备好使用 Kerberos 令牌klist。
被动 DNS
目标:收集与 E-Corp 相关的历史 DNS 数据,跟踪域名变化,并找到进一步进行漏洞评估的潜在兴趣领域。
使用的工具:
DNS Dumpster:一种域名研究工具,可以发现与域相关的主机,提供 DNS 侦察和情报收集。
DNS 历史记录:提供历史 DNS 数据,显示域的 DNS 设置
助记符:提供 PassiveDNS 数据的安全服务提供商。
有了潜在子域和资源的列表,我们的下一步可能是验证它们的活动状态并进行扫描和枚举以识别潜在的漏洞。
同时,我们将继续寻找与 E-Corp 相关的有效电子邮件地址。如果我们遇到任何登录门户、电子邮件服务器、VPN 等,这些电子邮件地址可能至关重要,因为它们可能为我们提供切入点或评估 E-Corp 安全态势的进一步途径。
目标:收集与 E-Corp 相关的历史 DNS 数据,跟踪域名变化,并找到进一步进行漏洞评估的潜在兴趣领域。
使用的工具:
DNS Dumpster:一种域名研究工具,可以发现与域相关的主机,提供 DNS 侦察和情报收集。
DNS 历史记录:提供历史 DNS 数据,显示域的 DNS 设置
助记符:提供 PassiveDNS 数据的安全服务提供商。
有了潜在子域和资源的列表,我们的下一步可能是验证它们的活动状态并进行扫描和枚举以识别潜在的漏洞。
同时,我们将继续寻找与 E-Corp 相关的有效电子邮件地址。如果我们遇到任何登录门户、电子邮件服务器、VPN 等,这些电子邮件地址可能至关重要,因为它们可能为我们提供切入点或评估 E-Corp 安全态势的进一步途径。
网络钓鱼:发送电子邮件、留言或打电话给受害者,发出可信的请求,诱骗他们透露敏感信息或执行某项操作。
借口:在要求受害者采取行动之前编造一个故事(借口)来赢得受害者的信任。例如,假扮成值得信赖的权威人士,让受害者同情你的处境,或利用时事事件。
诱饵:向受害者提供诱使他们执行您希望他们执行的操作的优惠。例如,向他们提供免费软件,其中包含您希望他们在不知情的情况下运行的恶意软件。
引出:无需直接询问即可从目标获取信息。
尾随:跟随授权员工进入限制区域或冒充合法员工,未经授权进入限制区域。
翻找垃圾箱:仔细翻找个人或组织的垃圾,以查找可用于攻击的揭露或敏感数据。
媒体投放:在目标组织周围散布包含恶意软件的 CD-ROM、USB 驱动器或其他形式的数字媒体,希望员工将此媒体插入公司系统并在不知情的情况下触发恶意软件。
借口:在要求受害者采取行动之前编造一个故事(借口)来赢得受害者的信任。例如,假扮成值得信赖的权威人士,让受害者同情你的处境,或利用时事事件。
诱饵:向受害者提供诱使他们执行您希望他们执行的操作的优惠。例如,向他们提供免费软件,其中包含您希望他们在不知情的情况下运行的恶意软件。
引出:无需直接询问即可从目标获取信息。
尾随:跟随授权员工进入限制区域或冒充合法员工,未经授权进入限制区域。
翻找垃圾箱:仔细翻找个人或组织的垃圾,以查找可用于攻击的揭露或敏感数据。
媒体投放:在目标组织周围散布包含恶意软件的 CD-ROM、USB 驱动器或其他形式的数字媒体,希望员工将此媒体插入公司系统并在不知情的情况下触发恶意软件。
规划与侦察
社会工程渗透测试的第一阶段是规划和侦察。在此阶段,您需要与客户合作,明确定义测试的目标和范围。您需要了解客户想要测试组织的哪些区域或部门、可以使用的可接受的社会工程策略,并获得客户的书面同意才能执行任何测试。
在此阶段,您还需要为测试做好准备。 其中包括:
资源收集:获取和设置执行社会工程测试所需的所有必要资源(例如,网络钓鱼模拟框架、云基础设施等)。
信息收集:收集有关目标组织、其员工、基础设施和安全政策的信息。这些背景信息对于建立您想要针对的个人的档案和创建可信的借口非常有用。您可以使用开源情报 (OSINT)来收集这些信息,也可以去翻找垃圾。
社会工程渗透测试的第一阶段是规划和侦察。在此阶段,您需要与客户合作,明确定义测试的目标和范围。您需要了解客户想要测试组织的哪些区域或部门、可以使用的可接受的社会工程策略,并获得客户的书面同意才能执行任何测试。
在此阶段,您还需要为测试做好准备。 其中包括:
资源收集:获取和设置执行社会工程测试所需的所有必要资源(例如,网络钓鱼模拟框架、云基础设施等)。
信息收集:收集有关目标组织、其员工、基础设施和安全政策的信息。这些背景信息对于建立您想要针对的个人的档案和创建可信的借口非常有用。您可以使用开源情报 (OSINT)来收集这些信息,也可以去翻找垃圾。
使用包管理器安装 Nmap
要想快速有效地在 Ubuntu 系统上启动并运行 Nmap,apt 包管理器。
打开终端
首先,打开终端。一个简单的方法是按下Ctrl+Alt+T 键盘上的 。此组合键是启动 Ubuntu 终端的快捷方式。
更新包管理器
打开终端后,是时候更新你的软件包列表了。在终端中,输入以下命令并按 Enter:sudo apt update。将需要提供的密码。
安装Nmap
更新完成后,就可以安装 Nmap 包了。在终端中,输入sudo apt install nmap,然后按 Enter。Ubuntu 可能会再次要求输入密码。输入密码,然后按 Enter。
终端将显示安装进度,安装完成后,Nmap 将安装在您的 Ubuntu 系统上。要验证安装,可以nmap -v 在终端中输入并查看已安装的 Nmap 版本。
要想快速有效地在 Ubuntu 系统上启动并运行 Nmap,apt 包管理器。
打开终端
首先,打开终端。一个简单的方法是按下Ctrl+Alt+T 键盘上的 。此组合键是启动 Ubuntu 终端的快捷方式。
更新包管理器
打开终端后,是时候更新你的软件包列表了。在终端中,输入以下命令并按 Enter:sudo apt update。将需要提供的密码。
安装Nmap
更新完成后,就可以安装 Nmap 包了。在终端中,输入sudo apt install nmap,然后按 Enter。Ubuntu 可能会再次要求输入密码。输入密码,然后按 Enter。
终端将显示安装进度,安装完成后,Nmap 将安装在您的 Ubuntu 系统上。要验证安装,可以nmap -v 在终端中输入并查看已安装的 Nmap 版本。
从源代码编译 Nmap
步骤 1:打开终端
和之前一样,让我们打开终端。可以通过按下Ctrl+Alt+T 键盘快速完成此操作。终端将弹出,准备好输入的命令。
第 2 步:安装所需的软件包
要从源代码编译 Nmap, Ubuntu 系统上需要有一些必需的软件包。在终端中输入以下命令:sudo apt install build-essential libssl-dev
提取源代码
下载完成后,您需要使用以下命令提取 tarball(一种压缩文件):tar jxvf nmap-<version>.tar.bz2
导航到Nmap目录
现在,导航到解压 tarball 时创建的目录:cd nmap-<version>
编译并安装 Nmap
最后,是时候编译和安装 Nmap 了。使用以下命令完成:./configure && make && sudo make install
步骤 1:打开终端
和之前一样,让我们打开终端。可以通过按下Ctrl+Alt+T 键盘快速完成此操作。终端将弹出,准备好输入的命令。
第 2 步:安装所需的软件包
要从源代码编译 Nmap, Ubuntu 系统上需要有一些必需的软件包。在终端中输入以下命令:sudo apt install build-essential libssl-dev
提取源代码
下载完成后,您需要使用以下命令提取 tarball(一种压缩文件):tar jxvf nmap-<version>.tar.bz2
导航到Nmap目录
现在,导航到解压 tarball 时创建的目录:cd nmap-<version>
编译并安装 Nmap
最后,是时候编译和安装 Nmap 了。使用以下命令完成:./configure && make && sudo make install
在 Docker 中安装 Nmap
步骤 1:打开终端
与往常一样,以 启动该过程Ctrl+Alt+T。
第 2 步:拉取 Nmap Docker 镜像
在终端处于活动状态时,输入docker pull instrumentisto/nmap 并按 Enter 键以获取 Nmap Docker 映像。
步骤3:在Docker中运行Nmap
获取镜像后,执行docker run -it --rm instrumentisto/nmap -v 并按 Enter 键在 Docker 中运行 Nmap,显示 Nmap 安装版本。
Sudo 卸载 Nmap
尽管 Nmap 是许多道德黑客和渗透测试工具包中的主要工具,但有时可能需要从 Ubuntu 系统中卸载它。
步骤 1:打开终端
与往常一样,以 启动该过程Ctrl+Alt+T。
第 2 步:拉取 Nmap Docker 镜像
在终端处于活动状态时,输入docker pull instrumentisto/nmap 并按 Enter 键以获取 Nmap Docker 映像。
步骤3:在Docker中运行Nmap
获取镜像后,执行docker run -it --rm instrumentisto/nmap -v 并按 Enter 键在 Docker 中运行 Nmap,显示 Nmap 安装版本。
Sudo 卸载 Nmap
尽管 Nmap 是许多道德黑客和渗透测试工具包中的主要工具,但有时可能需要从 Ubuntu 系统中卸载它。