黑客网站渗透入侵破解拿权限
11.3K subscribers
2.4K photos
109 links
Download Telegram
Kerberoasting 是指攻击窃取服务帐户的密码哈希并离线破解此哈希以显示明文密码。

这是一种非常危险的攻击,因为任何经过身份验证的用户都可以执行 Kerberoasting,如果服务帐户使用弱密码,攻击很可能会成功。

Kerberoasting 攻击遵循以下步骤:

冒充合法的 Active Directory 用户,并在 Active Directory 环境中向 KDC 进行身份验证。向 KDC 请求 TGT以访问网络资源。KDC遵从,因为冒充的是合法用户。
识别 Active Directory 环境中的活动服务帐户并收集其关联的 SPN 列表。这是通过内部网络侦察完成的。
向KDC请求与服务帐户关联的特定 SPN 的服务票证 (TGS) 。KDC将使用包含服务帐户密码(用于解密票证)的加密 TGS 进行响应。
获取此票证并使用密码破解工具离线破解它(在本地机器上)。
一旦攻击破解了密码,就可以使用它来模仿服务帐户并访问其有权访问的任何网络资源。
使用 BloodHound 发现服务账户
另一个可以用来发现服务帐户的工具是BloodHound。此工具使用图论来揭示攻击者可以利用的 Active Directory 环境中的错误配置。

要使用 BloodHound 发现服务帐户,需要执行以下步骤:

使用SharpHound数据收集器收集您正在攻击的 Windows Active Directory 环境的数据集。

使用命令SharpHound.exe -c DcOnly将域数据保存在.zip文件中。
下载并将数据导入 Bloodhound

将你收集到的数据集导入Bloodhound。首先,使用Meterpreter命令下载数据文件download <filename>.zip。

然后在本地机器上的 Bloodhound GUI 中,单击菜单中的上传数据按钮并选择您的 ZIP 文件。

搜索服务帐户

对数据集执行数据分析,寻找服务账户。这可以通过MATCH (u:User {hasspn:true}) RETURN u在“原始查询”部分执行搜索查询来完成。
使用 GetUserSPNs.py 执行 Kerberoasting
GetUserSPN.py Python脚本是Impacket框架的一部分,可用于查找与服务账户相关的SPN,以及为这些账户请求服务票证(TGS)并提取密码哈希。

要使用 GetUserSPN.py 执行 Kerberoasting,您需要以下内容:

请求 TGS 的域控制器位于同一网络上。如果不在同一网络上,可以使用之前在受感染的 Windows 计算机上创建的 Meterpreter 会话作为枢轴点。
正在攻击的 Active Directory 域的名称以及您想要验证的用户名。
要验证的用户的纯文本密码或 NTLM 密码哈希。
一旦满足这些要求,就可以在 Kali Linux 中运行以下命令来发现可遭受 Kerberoast 攻击的服务帐户并检索这些帐户的可破解 TGS 哈希:
impacket-GetUserSPNs '<domain>/<username>:<password>' -dc-ip <ip-of-domain-controller> -request

在这里可以看到可进行 Kerberoast 攻击的mssql_svc帐户已返回,同时还返回了密码哈希,可供破解
使用 Rubeus 进行 Kerberoasting
Rebeus是一款用 C# 编写的工具,可以直接与原始 Kerberos 协议交互。
要使用 Rebeus 执行 Kerberoasting,需要满足以下条件:
对正在攻击的 Active Directory 域进行经过身份验证的访问。
想要攻击的服务帐户的名称。

要使用 Rubeus,必须先将其从 Kali Linux 计算机上传到要攻击的受感染 Windows 计算机。可以通过下载Rebeus 的预编译版本并在 Meterpreter 会话中运行命令来执行此操作upload。然后运行命令shell以进入 Windows 命令 shell。
1
暴力破解网站登录
登录一个网站服务器,但需要知道用户名、密码或两者。你可以使用 Hydra 闯入 POST 表单,在 HTTP 源中找到用户名和密码字段及其 id/name 属性。

命令语法为(假设用户名和密码字段的 id/name 属性分别为 userField 和 passwordField

请注意末尾的附加字符串参数,指定地址栏中紧跟服务器主机名或 IP 地址的部分。有关创建该字符串的更多信息,请使用以下命令
hydra http-post-form -U

使用DVWA,开发人员控制台,其易受攻击的登录用户名和密码字段分别具有用户名和密码作为其名称属性
虚假通知栏
虚假通知栏命令是 BeEF 中专为社会工程攻击而设计的另一个模块。

当该模块在被挂钩的浏览器上执行时,它会在目标浏览器窗口顶部显示一个虚假的通知栏。该通知栏的内容可以自定义和设计,以诱骗用户点击链接或下载文件。

使用反向 shell 有效负载。如果用户被诱骗下载并运行文件,它将打开我们机器的反向 shell。反向 shell 允许我们在受害者的系统上远程执行命令,从而让我们完全控制它。

浏览器是 Firefox,我们将使用“假通知栏(Firefox)”模块,但您可以选择适合您情况的模块。

一旦用户尝试安装更新,将获得一个反向的 Meterpreter shell,从而让我们完全控制用户的系统。
会话 Cookie
会话 Cookie 又称为临时 Cookie,用于存储用户在单个浏览会话中的活动信息。可帮助网站记住用户的操作,登录信息或添加到购物车中的商品,并在浏览器关闭时被删除。

使用 BeEF 中的“获取 Cookie”模块从用户的浏览器中窃取会话 cookie。选择“获取 Cookie”,然后按“执行”按钮。会话 cookie 将显示在“命令结果”窗口中。

这些 cookie 很有价值,可以利用它们通过接管会话来冒充网站(例如电子商务网站或论坛的会员部分)上的用户。
使用 XSS 进行攻击
另一种挂钩浏览器的方法是通过XSS(跨站点脚本)。跨站点脚本是一种漏洞,通过用户输入将 JavaScript 加载到 Web 应用程序中。这种攻击可能导致敏感信息的泄露。

此过程的第一步是找到易受跨站点脚本攻击的网站。这将使我们能够将恶意 JavaScript 注入到该网站。

使用存储型 XSS 和 BeEF 来钩住浏览器。这种方法非常有效,因为它可以感染许多用户。

一旦找到存在漏洞的站点,请将“hook.js”JavaScript 文件注入到下面的输入字段中。
利用 BeEF 来利用浏览器会话
BeEF 预装了三百多个模块,您可以根据所连接的浏览器运行这些模块。这些模块分为十二个类别,包括:“漏洞、网络和社会工程”。
所有命令模块都包含一个交通灯图标,以显示这些命令模块是否不可见以及它们是否可以在目标浏览器中工作。
网络钓鱼,Google Phishing 命令是 BeEF 中的一个模块,旨在诱骗挂钩浏览器的用户透露他们的 Google 凭证,让我们执行命令,在受害者的浏览器上,他们应该看到虚假的登录页面,用户尝试登录,我们会在“Google 网络钓鱼”模块的命令结果选项卡中获得他们的凭据。
使用渗透工具 BeEF 连接 Web 浏览器
浏览器漏洞利用是指利用网络浏览器中的安全漏洞执行未经授权的操作。这可能涉及各种技术,通常是为了控制浏览器或运行浏览器的系统,或窃取敏感信息。

浏览器漏洞利用的基本概念是,网络浏览器与任何软件一样,其代码中可能存在缺陷或漏洞。这些漏洞可能会导致浏览器以非预期的方式运行。

利用 BeEF,可以利用 JavaScript 的广泛使用来“挂钩”浏览器,从而利用潜在漏洞、执行命令并可能获得未经授权的访问或提取敏感信息

可以通过创建一个网站,将钩子脚本添加到页面标题,然后让目标通过网络钓鱼攻击访问该网站来实现此目的。这可以通过电子邮件、社交媒体或其他方式 发送链接,可以使用 URL 缩短器来伪装原始 URL。
可以在这里发挥创造力,创建一个看起来合法的竞赛表格,使我们能够挂接用户的浏览器并同时通过表格收集一些信息,一旦用户的浏览器被挂接,浏览器就会出现在BeEF控制台中。
BeEF 为我们提供了大量信息。有价值的见解包括正在使用的浏览器、其版本、运行的操作系统、其架构、平台信息、语言详细信息、已安装的插件等等
BeEF黑客渗透扫描软件安装 BeEF
BeEF 目前尚未安装在 Kali 上。请确保在安装之前使用以下命令运行更新:
sudo apt update
可以使用以下命令安装 BeEF:
sudo apt install beef-xss
启动 BeEF
安装 BeEF 后,您可以使用以下命令运行它:
sudo beef-xss
第一次运行该程序时,系统会提示您更改“beef”用户的默认密码。 一旦更改密码,BeEF 将开始加载,并且您将看到 WebUI 地址和“hook.js”的钩子脚本。
BeEF 应该会为您打开浏览器,您需要使用在进入程序之前设置的新密码以用户“beef”身份登录。
BeEF 的界面
一旦成功登录,将看到初始 BeEF 界面。
已连接浏览器:您将在此处看到当前已连接的所有浏览器的列表。每个浏览器都列出了详细信息,例如 IP 地址、浏览器名称和操作系统。由于最初没有连接任何浏览器,因此此部分为空。

入门:如何使用 BeEF 框架的指导。它包括有关如何挂接浏览器和使用命令模块的信息。

日志:此部分显示 BeEF 活动的日志。其中包括与目标浏览器的交互、发送的命令、收到的响应以及任何错误或重要的系统消息。

僵尸:在 BeEF 术语中,“僵尸”是指 BeEF 服务器控制的已挂接浏览器。“僵尸”部分列出了这些浏览器并允许您与它们交互。由于尚未挂接任何浏览器,因此此部分也将为空。

基本:此视图提供有关已挂钩浏览器的基本信息,例如 IP 地址、浏览器类型和操作系统。在此视图中,您还可以使用可用的命令模块与已挂钩浏览器进行交互。

请求者: “请求者”视图可让您从挂钩浏览器手动制作和发送 HTTP 请求。这对于从挂钩浏览器的角度探索网站或 Web 应用程序、测试访问控制或执行其他手动测试任务非常有用。