首页 运维 安全 简单暴力枚举法绕过目标系统2FA验证机制的实验

简单暴力枚举法绕过目标系统2FA验证机制的实验

Dec 18, 2019 am 11:58 AM
2FA 实验 暴力 枚举 验证机制

简单暴力枚举法绕过目标系统2FA验证机制的实验

今天分享的这篇Writeup是作者在参与漏洞众测中,针对目标系统的动态口令OTP (One Time Password),通过利用简单的暴力枚举方法,实现了对目标系统双因素验证机制2FA (Two-Factor Authentication)的绕过或破解。目标系统是印度最大的旅行服务公司网站,其采用了动态口令OTP作为双因素验证2FA的实现手段。

通常来说,OTP是从0000到9999的4位数组合,假如OTP有一万种可能性的组合,在如今强大的计算机时代,处理10000种组合也只需几分钟的时间。所以,如果OTP的验证机制不当,任何人都可以通过简单的暴力枚举来绕过它。

为什么我可以绕过2FA?

目标系统对不成功的请求尝试不作速率限制。

目标系统对不成功的请求尝试没有新的动态口令措施。

前提准备:

Web浏览器、BurpSuite。

绕过2FA的复现过程

绕过2FA的复现过程

1、开启BurpSuite,使用手机号码登录目标系统网站,这里,故意输错系统发送到你手机中的动态OTP(这里我们随便输入1234),然后用BurpSuite捕获流量;

426b94b985bf70f9f701f14b43e18f8.png

从BurpSuite中我们可以看到OTP API的相关信息 – verifyOTP?otp=:

3.png

2、把这次OTP的发送过程右键 Send to intruder:

4.png

3、选择otp=1234占位符,并把它设置为简单暴力枚举变量方式:

7d3c92ae607de054239c23c564da768.png

4、选择Payload标签项,把其修改为任意形式的组合,然后点击attack:

10c73be1402983b992a6e8973c5e249.png

5、攻击开始。从枚举响应结果中,我们可以看到一个长度为2250的异常响应,不出意外,就是它了:

85af317d83f37e7bd228a0fc0a0b5aa.png

6、 用该OTP配合登录,可以成功有效!

2bb380ec7bf49e877c1aed24324b66f.png

相关教程推荐:web服务器安全

以上是简单暴力枚举法绕过目标系统2FA验证机制的实验的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
威尔R.E.P.O.有交叉游戏吗?
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

人体试验要泡汤?马斯克Neuralink面临联邦调查,实验动物死亡频发 人体试验要泡汤?马斯克Neuralink面临联邦调查,实验动物死亡频发 Apr 12, 2023 pm 05:37 PM

上周,马斯克举办了 Neuralink 的​​ Show & Tell ​​​演示活动,向世人展示了脑机接口的最新进展。会上,马斯克表示,从原型到生产非常困难,面临诸多挑战。Neuralink 一直在努力启动人体试验,并且已向 FDA 提交了开始人体试验所需的所有文件。马斯克估计,第一个 Neuralink 设备可能会在 5-6 个月内进入人脑。会上马斯克强调, Neuralink 尊重动物受试者,并且脑机接口设备植入动物体内之前已经进行了广泛的基准测试。两只猴子 Pager 和

不可修补的 Yubico 二因素身份验证密钥漏洞破坏了大多数 Yubikey 5、安全密钥和 YubiHSM 2FA 设备的安全性 不可修补的 Yubico 二因素身份验证密钥漏洞破坏了大多数 Yubikey 5、安全密钥和 YubiHSM 2FA 设备的安全性 Sep 04, 2024 pm 06:32 PM

无法修补的 Yubico 二因素身份验证密钥漏洞已经破坏了大多数 Yubikey 5、安全密钥和 YubiHSM 2FA 设备的安全性。 Feitian A22 JavaCard和其他使用Infineon SLB96xx系列TPM的设备也容易受到攻击。

PHP 8.1中的枚举(枚举)是什么? PHP 8.1中的枚举(枚举)是什么? Apr 03, 2025 am 12:05 AM

PHP8.1中的枚举功能通过定义命名常量增强了代码的清晰度和类型安全性。1)枚举可以是整数、字符串或对象,提高了代码可读性和类型安全性。2)枚举基于类,支持面向对象特性,如遍历和反射。3)枚举可用于比较和赋值,确保类型安全。4)枚举支持添加方法,实现复杂逻辑。5)严格类型检查和错误处理可避免常见错误。6)枚举减少魔法值,提升可维护性,但需注意性能优化。

Python程序通过字符串值查找枚举 Python程序通过字符串值查找枚举 Sep 21, 2023 pm 09:25 PM

Python中的枚举是一种用户定义的数据类型,由一组命名值组成。的有限集合值是使用枚举定义的,并且可以在Python中使用它们的名称而不是整数值来访问这些值。枚举使代码更具可读性和可维护性,并且还增强了类型安全性。在本文中,我们将了解如何在Python中通过字符串值查找枚举。要通过字符串值查找枚举,我们需要按照以下步骤进行:在代码中导入枚举模块定义具有所需值集的枚举创建一个函数,将枚举字符串作为输入并返回相应的枚举值。语法fromenumimportEnumclassClassName(Enum

C++ 函数返回枚举类型时有什么好处? C++ 函数返回枚举类型时有什么好处? Apr 20, 2024 pm 12:33 PM

使用枚举类型作为函数返回值的好处:提高可读性:使用有意义的名称常量,增强代码理解。类型安全性:确保返回值符合预期范围,避免意外行为。节省内存:枚举类型通常占用较少存储空间。易于扩展:可以轻松添加新值到枚举中。

如何在C/C++中使用枚举? 如何在C/C++中使用枚举? Aug 28, 2023 pm 05:09 PM

枚举是C语言中的用户定义数据类型。它用于给整数常量赋予名称,使程序易于阅读和维护。关键字“enum”用于声明一个枚举。以下是C语言中枚举的语法:enumenum_name{const1,const2,.......};Theenumkeywordisalsousedtodefinethevariablesofenumtype.Therearetwowaystodefinethevariablesofenumtypeasfollows.enumweek{sunday,monday,tuesday,

C++语法错误:枚举成员需要在括号内被初始化,应该怎么处理? C++语法错误:枚举成员需要在括号内被初始化,应该怎么处理? Aug 22, 2023 pm 03:41 PM

C++是一种常见的编程语言,其语法相对严谨且易于学习和应用。但在具体编程时,难免会遇到各种错误,其中一个常见的错误是“枚举成员需要在括号内被初始化”。在C++中,枚举类型是一种很方便的数据类型,它可以定义一组具有离散值的常量集合,如:enumColor{RED,YELLOW,GREEN};在这个示例中,我们定义了一个枚举类型Color,它包含三个枚举

Java程序访问枚举中定义的所有常量 Java程序访问枚举中定义的所有常量 Aug 19, 2023 pm 04:29 PM

在JDK版本5之后,Java引入了枚举。它是使用关键字'enum'定义的一组常量。在Java中,final变量与枚举有些相似。在本文中,我们将创建一个Java程序,在其中定义一个枚举类,并尝试使用valueOf()和values()方法访问枚举中定义的所有常量。Enum的中文翻译为:枚举当我们需要定义一组固定的常量时,我们使用枚举类。例如,如果我们想使用一周的天数、行星的名称、五个元音字母的名称等。请注意,所有常量的名称都以大写字母声明。尽管在Java中,枚举是一种类类型,但我们不能实例化它。在

See all articles