{"data":" 成功 ","errorCode":0}
但是当我们输入对验证码,会被提示验证码错误,请重新获取。于是,思绪一转,可以在返回值,改成:
{"data":" 成功 ","errorCode":0}
{"data":" 成功 ","errorCode":0}
这样就大功告成了!
结束了回想一下,完全可以不用暴力啊。只要有手机号,有多少我就重置多少,改参数就可以啦!
不知道算不算两个漏洞,哈哈。 这可是关乎钱的网站啊。
我的点评
这个案例说明了该找回密码业务流程中,验证码这块可以爆破,甚至可以导致撞库的危害,修复建议是验证码尽量不要用 4 位,用数字 + 字母组合或者六位验证码。最好是设定了有效期限。
返回身份凭证信息
案例之二:天天网任意账号密码重置(非暴力温柔修改)
首先我们先来看一下找回密码的流程。
1. 填好邮箱和验证码 下一步
返回了邮箱。
2. 填写正确的验证码 抓包看一看
可以看到返回了一串加密字符串这个很重要,等会再说。经过测试证明 cookie 中的 值对找回密码没有影响。
3. 重置密码
可以看到 URL 中的 一串加密字符串正是 第二步中 返回的那串字符串。因为证明 cookie 中的 值对找回密码没有影响 所以只要拿到这个加密字符串就可以 任意重置密码。
那么怎么得到这个字符串呢?
这个是第二步中抓到的包 把 cookie 中的 LoginOrRegOftiantianUser 值 改成要重置的账号。这里我拿 service@tiantian.com 测试。
可以看到成功返回了加密字符串既然拿到了字符串,下一步就是重置密码了。首先输入邮箱和验证码,点击下一步,这一步是必须要做的,要不然不会成功。
然后直接用,拿到的字符串,访问重置密码的页面。假如,上一步没有做的话,到这一步会直接 302 跳转。
重置成功。
OK 密码被重置为 wooyun123
漏洞存在原因:页面返回了过多的信息,token 是可控的状态,导致拼接地址即可完成密码找回业务流程。
我的点评
该漏洞存在的原因是,返回了过多的信息,导致 token 可控完成修改密码的工作流程。针对此类安全漏洞修复建议是 token 使用随机生成,攻击者无法猜解。
邮箱弱 token 安全漏洞
案例之三:360 任意用户密码修改(危急 360 手机卫士、360 云盘、360 浏览器云同步,可泄露通讯录、短信、通话记录等)
本小学生记性不好,360 账号的密码很及时的忘记了。 于是有了如下情节。找回账号密码, 然后发了一篇邮件到我邮箱。
http://i.360.cn/findpwd/setpwdfromemail?vc=e%2FwljiqD9WGv%2FwDyS93BghveGh%2FDYG4oMjJwcxGlcnSDZP3qIW4deYwnCpkdbCSZ3ByODXHZYDCx32A46l%2FBXxk6qo5oABIr6ZrywAoPB8DZuX81j%2Bb%2F2w%3D%3D&qid=507290669
这是修改密码的连接地址 有没有发现亮点?qid=507290669 qid 如果被修改别人的是否会有用呢?然后修改为:
http://i.360.cn/findpwd/setpwdfromemail?vc=e%2FwljiqD9WGv%2FwDyS93BghveGh%2FDYG4oMjJwcxGlcnSDZP3qIW4deYwnCpkdbCSZ3ByODXHZYDCx32A46l%2FBXxk6qo5oABIr6ZrywAoPB8DZuX81j%2Bb%2F2w%3D%3D&qid=507290670
然后 360 网站提示可以修改,哦的天啊。那这样的话不是所有的账号都可以改了 为什么会鸡肋呢?问题是不知道别人的账号啊,进去个人中心也没有这个 id 提示。
别着急,我们继续挖,发现 360 旗下的一个网站:
http://www.woxihuan.com/
http://www.woxihuan.com/star/timeline?qid=268296138
是不是发现了什么 ? 没错 qid=268296138。这个 qid 我们找的是明星苗圃的。
然后构造如下链接:
http://i.360.cn/findpwd/setpwdfromemail?vc=e%2FwljiqD9WGv%2FwDyS93BghveGh%2FDYG4oMjJwcxGlcnSDZP3qIW4deYwnCpkdbCSZ3ByODXHZYDCx32A46l%2FBXxk6qo5oABIr6ZrywAoPB8DZuX81j%2Bb%2F2w%3D%3D&qid=268296138
我们祭出神器 Burpsuite。在利用找回密码链接修改密码时我们截取它 post 的包:
而且这里还发现,我们在知道邮箱,不知道 qid 的情况下,也可以修改密码:首先用自己的账号获取一个 360 找回密码的 URL,然后在修改密码时截包。
我们把这里的 uname 修改为要修改密码的目标的邮箱:
目标邮箱:410316816@qq.com
可以修改指定邮箱的密码,修改完成。
我的点评
-imtoken钱包官网" />作者简介:
肖志华,rNma0y,信安自学,白帽子。(在安全圈子里,一直以来有“黑帽”、“白帽”的说法。黑帽子是指那些造成破坏的黑客,而白帽子均已建设更安全的互联网为己任。)
漏洞盒子排名 TOP 前 100,撞过很多坑,跌撞复前行。研究方向 Web,反黑产。目前某不知名安全团队成员,专职攻防领域,涉及面较广,爱好一切新鲜事物。
作者简介:
肖志华,rNma0y,信安自学,白帽子。(在安全圈子里,一直以来有“黑帽”、“白帽”的说法。黑帽子是指那些造成破坏的黑客,而白帽子均已建设更安全的互联网为己任。)
漏洞盒子排名 TOP 前 100,撞过很多坑,跌撞复前行。研究方向 Web,反黑产。目前某不知名安全团队成员,专职攻防领域,涉及面较广,爱好一切新鲜事物。
Web 漏洞里有 SQL 注入、XSS 等漏洞,但是逻辑漏洞等问题也是一个大的关键点。
逻辑漏洞比传统安全漏洞更难发现,也可以理解为在相关的业务流程程序出了一个 BUG,当然开发者设计逻辑正常来走是没问题的,一旦用户不走寻常路,就导致了一些看似莫名其妙的漏洞存在。
俗话来讲就是,服务器大哥懵逼了,无法理解你的意思,按照开发者给他划定的业务流程来讲,你这个行为是错误了,引起了服务器大哥的暂时懵逼。
挖掘逻辑漏洞从来不走正常的业务流程,走正常业务流程发现不了什么安全漏洞,毕竟是按照指定的程序来走。要挖,就别走寻常路。
逻辑漏洞的阐述
逻辑漏洞呢,也分很多种。总的来说是产品业务上的设计缺陷,导致了某接口或者业务存在漏洞。从密码找回开始引入话题吧。
展开全文
密码找回漏洞
一般密码找回这种业务流程在设计的时候,粗讲有五步。
输入账号
验证你的身份
获取重置密码的途径(邮件、密保问题)
验证成功
重置密码完成
输入账号
验证你的身份
获取重置密码的途径(邮件、密保问题)
验证成功
重置密码完成
按照这五步来走的话,漏洞通常会在 2~3 步骤里,下面来看一下常见的几种密码找回漏洞。
密码找回漏洞测试流程
先尝试正确的密码找回流程,记录不同找回方式的所有数据包
分析数据包,找到有效数据部分
推测数据构造方法
构造数据包验证猜测
先尝试正确的密码找回流程,记录不同找回方式的所有数据包
分析数据包,找到有效数据部分
推测数据构造方法
构造数据包验证猜测
挖掘逻辑漏洞的需要渗透测试人员不断的去修改请求参数来尝试触发漏洞,这种行为业内称之为 “Fuzz test” 模糊测试,重放数次请求来观察服务器返回响应,从而发现漏洞所在。
我也拿乌云的案例来讲密码找回的逻辑漏洞例程。
身份验证码暴力破解
案例之一:搜狐某站任意用户帐号重置密码缺陷
如何绕过加密传输抓包不表……点击忘记密码,链接:
https://passport.souyidai.com/password/findpassword
然后输入我们测试用的手机号,用户名就是手机号,然后点申请密码找回。
点击获取,然后输入 1111, 抓包递归尝试 9999,线程开到 10,加足马力!一两分钟的事,没有限制。
这是失败返回如上图。
这是正确返回:
{"data":" 成功 ","errorCode":0}
{"data":" 成功 ","errorCode":0}
但是当我们输入对验证码,会被提示验证码错误,请重新获取。于是,思绪一转,可以在返回值,改成:
{"data":" 成功 ","errorCode":0}
{"data":" 成功 ","errorCode":0}
这样就大功告成了!
结束了回想一下,完全可以不用暴力啊。只要有手机号,有多少我就重置多少,改参数就可以啦!
不知道算不算两个漏洞,哈哈。 这可是关乎钱的网站啊。
我的点评
这个案例说明了该找回密码业务流程中,验证码这块可以爆破,甚至可以导致撞库的危害,修复建议是验证码尽量不要用 4 位,用数字 + 字母组合或者六位验证码。最好是设定了有效期限。
返回身份凭证信息
案例之二:天天网任意账号密码重置(非暴力温柔修改)
首先我们先来看一下找回密码的流程。
1. 填好邮箱和验证码 下一步
返回了邮箱。
2. 填写正确的验证码 抓包看一看
可以看到返回了一串加密字符串这个很重要,等会再说。经过测试证明 cookie 中的 值对找回密码没有影响。
3. 重置密码
可以看到 URL 中的 一串加密字符串正是 第二步中 返回的那串字符串。因为证明 cookie 中的 值对找回密码没有影响 所以只要拿到这个加密字符串就可以 任意重置密码。
那么怎么得到这个字符串呢?
这个是第二步中抓到的包 把 cookie 中的 LoginOrRegOftiantianUser 值 改成要重置的账号。这里我拿 service@tiantian.com 测试。
可以看到成功返回了加密字符串既然拿到了字符串,下一步就是重置密码了。首先输入邮箱和验证码,点击下一步,这一步是必须要做的,要不然不会成功。
然后直接用,拿到的字符串,访问重置密码的页面。假如,上一步没有做的话,到这一步会直接 302 跳转。
重置成功。
OK 密码被重置为 wooyun123
漏洞存在原因:页面返回了过多的信息,token 是可控的状态,导致拼接地址即可完成密码找回业务流程。
我的点评
该漏洞存在的原因是,返回了过多的信息,导致 token 可控完成修改密码的工作流程。针对此类安全漏洞修复建议是 token 使用随机生成,攻击者无法猜解。
邮箱弱 token 安全漏洞
案例之三:360 任意用户密码修改(危急 360 手机卫士、360 云盘、360 浏览器云同步,可泄露通讯录、短信、通话记录等)
本小学生记性不好,360 账号的密码很及时的忘记了。 于是有了如下情节。找回账号密码, 然后发了一篇邮件到我邮箱。
http://i.360.cn/findpwd/setpwdfromemail?vc=e%2FwljiqD9WGv%2FwDyS93BghveGh%2FDYG4oMjJwcxGlcnSDZP3qIW4deYwnCpkdbCSZ3ByODXHZYDCx32A46l%2FBXxk6qo5oABIr6ZrywAoPB8DZuX81j%2Bb%2F2w%3D%3D&qid=507290669
这是修改密码的连接地址 有没有发现亮点?qid=507290669 qid 如果被修改别人的是否会有用呢?然后修改为:
http://i.360.cn/findpwd/setpwdfromemail?vc=e%2FwljiqD9WGv%2FwDyS93BghveGh%2FDYG4oMjJwcxGlcnSDZP3qIW4deYwnCpkdbCSZ3ByODXHZYDCx32A46l%2FBXxk6qo5oABIr6ZrywAoPB8DZuX81j%2Bb%2F2w%3D%3D&qid=507290670
然后 360 网站提示可以修改,哦的天啊。那这样的话不是所有的账号都可以改了 为什么会鸡肋呢?问题是不知道别人的账号啊,进去个人中心也没有这个 id 提示。
别着急,我们继续挖,发现 360 旗下的一个网站:
http://www.woxihuan.com/
http://www.woxihuan.com/star/timeline?qid=268296138
是不是发现了什么 ? 没错 qid=268296138。这个 qid 我们找的是明星苗圃的。
然后构造如下链接:
http://i.360.cn/findpwd/setpwdfromemail?vc=e%2FwljiqD9WGv%2FwDyS93BghveGh%2FDYG4oMjJwcxGlcnSDZP3qIW4deYwnCpkdbCSZ3ByODXHZYDCx32A46l%2FBXxk6qo5oABIr6ZrywAoPB8DZuX81j%2Bb%2F2w%3D%3D&qid=268296138
我们祭出神器 Burpsuite。在利用找回密码链接修改密码时我们截取它 post 的包:
而且这里还发现,我们在知道邮箱,不知道 qid 的情况下,也可以修改密码:首先用自己的账号获取一个 360 找回密码的 URL,然后在修改密码时截包。
我们把这里的 uname 修改为要修改密码的目标的邮箱:
目标邮箱:410316816@qq.com
可以修改指定邮箱的密码,修改完成。
我的点评
展开更多菜单作者简介:
肖志华,rNma0y,信安自学,白帽子。(在安全圈子里,一直以来有“黑帽”、“白帽”的说法。黑帽子是指那些造成破坏的黑客,而白帽子均已建设更安全的互联网为己任。)
漏洞盒子排名 TOP 前 100,撞过很多坑,跌撞复前行。研究方向 Web,反黑产。目前某不知名安全团队成员,专职攻防领域,涉及面较广,爱好一切新鲜事物。
作者简介:
肖志华,rNma0y,信安自学,白帽子。(在安全圈子里,一直以来有“黑帽”、“白帽”的说法。黑帽子是指那些造成破坏的黑客,而白帽子均已建设更安全的互联网为己任。)
漏洞盒子排名 TOP 前 100,撞过很多坑,跌撞复前行。研究方向 Web,反黑产。目前某不知名安全团队成员,专职攻防领域,涉及面较广,爱好一切新鲜事物。
Web 漏洞里有 SQL 注入、XSS 等漏洞,但是逻辑漏洞等问题也是一个大的关键点。
逻辑漏洞比传统安全漏洞更难发现,也可以理解为在相关的业务流程程序出了一个 BUG,当然开发者设计逻辑正常来走是没问题的,一旦用户不走寻常路,就导致了一些看似莫名其妙的漏洞存在。
俗话来讲就是,服务器大哥懵逼了,无法理解你的意思,按照开发者给他划定的业务流程来讲,你这个行为是错误了,引起了服务器大哥的暂时懵逼。
挖掘逻辑漏洞从来不走正常的业务流程,走正常业务流程发现不了什么安全漏洞,毕竟是按照指定的程序来走。要挖,就别走寻常路。
逻辑漏洞的阐述
逻辑漏洞呢,也分很多种。总的来说是产品业务上的设计缺陷,导致了某接口或者业务存在漏洞。从密码找回开始引入话题吧。
展开全文
密码找回漏洞
一般密码找回这种业务流程在设计的时候,粗讲有五步。
输入账号
验证你的身份
获取重置密码的途径(邮件、密保问题)
验证成功
重置密码完成
输入账号
验证你的身份
获取重置密码的途径(邮件、密保问题)
验证成功
重置密码完成
按照这五步来走的话,漏洞通常会在 2~3 步骤里,下面来看一下常见的几种密码找回漏洞。
密码找回漏洞测试流程
先尝试正确的密码找回流程,记录不同找回方式的所有数据包
分析数据包,找到有效数据部分
推测数据构造方法
构造数据包验证猜测
先尝试正确的密码找回流程,记录不同找回方式的所有数据包
分析数据包,找到有效数据部分
推测数据构造方法
构造数据包验证猜测
挖掘逻辑漏洞的需要渗透测试人员不断的去修改请求参数来尝试触发漏洞,这种行为业内称之为 “Fuzz test” 模糊测试,重放数次请求来观察服务器返回响应,从而发现漏洞所在。
我也拿乌云的案例来讲密码找回的逻辑漏洞例程。
身份验证码暴力破解
案例之一:搜狐某站任意用户帐号重置密码缺陷
如何绕过加密传输抓包不表……点击忘记密码,链接:
https://passport.souyidai.com/password/findpassword
然后输入我们测试用的手机号,用户名就是手机号,然后点申请密码找回。
点击获取,然后输入 1111, 抓包递归尝试 9999,线程开到 10,加足马力!一两分钟的事,没有限制。
这是失败返回如上图。
这是正确返回:
{"data":" 成功 ","errorCode":0}
{"data":" 成功 ","errorCode":0}
但是当我们输入对验证码,会被提示验证码错误,请重新获取。于是,思绪一转,可以在返回值,改成:
{"data":" 成功 ","errorCode":0}
{"data":" 成功 ","errorCode":0}
这样就大功告成了!
结束了回想一下,完全可以不用暴力啊。只要有手机号,有多少我就重置多少,改参数就可以啦!
不知道算不算两个漏洞,哈哈。 这可是关乎钱的网站啊。
我的点评
这个案例说明了该找回密码业务流程中,验证码这块可以爆破,甚至可以导致撞库的危害,修复建议是验证码尽量不要用 4 位,用数字 + 字母组合或者六位验证码。最好是设定了有效期限。
返回身份凭证信息
案例之二:天天网任意账号密码重置(非暴力温柔修改)
首先我们先来看一下找回密码的流程。
1. 填好邮箱和验证码 下一步
返回了邮箱。
2. 填写正确的验证码 抓包看一看
可以看到返回了一串加密字符串这个很重要,等会再说。经过测试证明 cookie 中的 值对找回密码没有影响。
3. 重置密码
可以看到 URL 中的 一串加密字符串正是 第二步中 返回的那串字符串。因为证明 cookie 中的 值对找回密码没有影响 所以只要拿到这个加密字符串就可以 任意重置密码。
那么怎么得到这个字符串呢?
这个是第二步中抓到的包 把 cookie 中的 LoginOrRegOftiantianUser 值 改成要重置的账号。这里我拿 service@tiantian.com 测试。
可以看到成功返回了加密字符串既然拿到了字符串,下一步就是重置密码了。首先输入邮箱和验证码,点击下一步,这一步是必须要做的,要不然不会成功。
然后直接用,拿到的字符串,访问重置密码的页面。假如,上一步没有做的话,到这一步会直接 302 跳转。
重置成功。
OK 密码被重置为 wooyun123
漏洞存在原因:页面返回了过多的信息,token 是可控的状态,导致拼接地址即可完成密码找回业务流程。
我的点评
该漏洞存在的原因是,返回了过多的信息,导致 token 可控完成修改密码的工作流程。针对此类安全漏洞修复建议是 token 使用随机生成,攻击者无法猜解。
邮箱弱 token 安全漏洞
案例之三:360 任意用户密码修改(危急 360 手机卫士、360 云盘、360 浏览器云同步,可泄露通讯录、短信、通话记录等)
本小学生记性不好,360 账号的密码很及时的忘记了。 于是有了如下情节。找回账号密码, 然后发了一篇邮件到我邮箱。
http://i.360.cn/findpwd/setpwdfromemail?vc=e%2FwljiqD9WGv%2FwDyS93BghveGh%2FDYG4oMjJwcxGlcnSDZP3qIW4deYwnCpkdbCSZ3ByODXHZYDCx32A46l%2FBXxk6qo5oABIr6ZrywAoPB8DZuX81j%2Bb%2F2w%3D%3D&qid=507290669
这是修改密码的连接地址 有没有发现亮点?qid=507290669 qid 如果被修改别人的是否会有用呢?然后修改为:
http://i.360.cn/findpwd/setpwdfromemail?vc=e%2FwljiqD9WGv%2FwDyS93BghveGh%2FDYG4oMjJwcxGlcnSDZP3qIW4deYwnCpkdbCSZ3ByODXHZYDCx32A46l%2FBXxk6qo5oABIr6ZrywAoPB8DZuX81j%2Bb%2F2w%3D%3D&qid=507290670
然后 360 网站提示可以修改,哦的天啊。那这样的话不是所有的账号都可以改了 为什么会鸡肋呢?问题是不知道别人的账号啊,进去个人中心也没有这个 id 提示。
别着急,我们继续挖,发现 360 旗下的一个网站:
http://www.woxihuan.com/
http://www.woxihuan.com/star/timeline?qid=268296138
是不是发现了什么 ? 没错 qid=268296138。这个 qid 我们找的是明星苗圃的。
然后构造如下链接:
http://i.360.cn/findpwd/setpwdfromemail?vc=e%2FwljiqD9WGv%2FwDyS93BghveGh%2FDYG4oMjJwcxGlcnSDZP3qIW4deYwnCpkdbCSZ3ByODXHZYDCx32A46l%2FBXxk6qo5oABIr6ZrywAoPB8DZuX81j%2Bb%2F2w%3D%3D&qid=268296138
我们祭出神器 Burpsuite。在利用找回密码链接修改密码时我们截取它 post 的包:
而且这里还发现,我们在知道邮箱,不知道 qid 的情况下,也可以修改密码:首先用自己的账号获取一个 360 找回密码的 URL,然后在修改密码时截包。
我们把这里的 uname 修改为要修改密码的目标的邮箱:
目标邮箱:410316816@qq.com
可以修改指定邮箱的密码,修改完成。
我的点评
(作者:imtoken安卓版2.70下载)