Lab: 2FA broken logic:双重验证逻辑破坏靶场复盘

Posted Zeker62

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Lab: 2FA broken logic:双重验证逻辑破坏靶场复盘相关的知识,希望对你有一定的参考价值。

靶场内容:

This lab’s two-factor authentication is vulnerable due to its flawed logic. To solve the lab, access Carlos’s account page.

Your credentials: wiener:peter
Victim’s username: carlos

You also have access to the email server to receive your 2FA verification code.

漏洞分析:

  • 这里的双重验证漏洞是在于,发送电子邮件的时候可以爆破出验证码
  • 在登录我们自己的账号之后,会有一个提交验证码的过程,随便输入一个验证码,截获这个报文
  • 修改身份验证信息:将verify参数设置为carlos并向参数mfa-code设置payload
  • 使用python脚本写一个0000~9999的验证码字典进行爆破
  • 爆破之后用用浏览器打开对应的302URL即可通过靶场
  • 验证码是1997

脚本代码

def printnumber_for_2FA(path):  # 类似于0001这种验证码
    with open(path, 'w') as f:
        a = eval(input("输入起始数"))
        b = eval(input("输入最后一个数"))
        c = eval(input("输入验证码长度"))
        for i in range(a,b+1):
            if len(str(i))<c:
                s="0"*(c-len(str(i)))+str(i)
                f.write(s+"\\n")
            else:
                f.write(str(i)+"\\n")

关键截图:


以上是关于Lab: 2FA broken logic:双重验证逻辑破坏靶场复盘的主要内容,如果未能解决你的问题,请参考以下文章

Lab:Password reset broken logic 密码重置逻辑破坏漏洞靶场复盘

Lab: 2FA simple bypass:绕过两步验证靶场复盘

as.logical 双重强制的基本原理是啥?

配置Linux的SSH双重认证

Lab: Broken brute-force protection, IP block;缺陷暴力防御,IP锁靶场复盘

Lab: Broken brute-force protection, multiple credentials per request:以多个身份凭据破坏暴力保护靶场链接