小迪安全课程笔记-2024-二十七-
小迪安全课程笔记 2024(二十七)
P71:第72天:业务逻辑篇&水平越权&垂直越权&未授权访问&检测插件&SRC项目 - 逆风微笑的代码狗 - BV1Mx4y1q7Ny
我们今天上一下这个万物工坊的业务逻辑篇,说实话,这也不归类到我们工坊这个web应用上面的,比较多而已,正规真的像什么小程序啊,这个app里面的也可以测,他也属于这个通用的,而且我曾经说过啊。
这个章节的知识点呢,它是不限制于你是哪种应用,就说你是这个网站也好,是app也好,是这个小程序也好,这个不限制,同时呢他也不限制这个应用的这个加勾,也不会说限制你是什么pp的呀,java的呀。
Python的呀,这些东西都不会限制,因为这一块的漏洞呢,主要就是没就是这个开发者或是管理者。
他对于某些地方啊,他没有是吧,考虑到打个很简单的例子啊,就既然我们今天商的这个越权方面的,这是业务逻辑里面一个最常见的一个方面啊,其实商这个业务逻辑呢,有的地方呢是这样去理解它的。
就是根据这个应用的功能来去区分啥功能呢,比如说像登录框找回密码的,还有像这个呃支付购买,就是根据这个环节啊,就是根据业务功能的环节在购买商品啊,支付付款呀,然后呢像这个找回密码呀,密码验证啊。
登录地方啊等等一些地方呢去这样去区分他,去讲解啊,我们呢也可以这样去啊,然后这个月船呢呃,大家都知道这个权权限就是权限的意思啊,那么我和权限挂钩的话,那肯定就是有一个什么拥护。
所以说如果说这个网站有这么个有用户的一个,差异性的话,那这个地方呢就是可以测越权的啊,至于怎么测,怎么把这个这个漏洞呢去归类这个呢,就是我们今天要学学的啊,好那这里呢一般这个月全方面的支点呢。
它主要是分三个点,一个点呢称之为叫水平约传,还有一个呢就是垂直约传,还有一个呢就是我们说的微授权访问三个啊,就是关于这个权限方面的这个支点,但是业务逻辑权限方面的,首先我们来看一下啊。
什么叫这个水平越传,叫同级别的用户之间的权限跨越,垂直越权的叫低权限到高权限的跨越,或者说高权限到低权限,那这里呢其实随机变相,那就是两个不相等级的用户呢权限的跨越,那高权限到低权限到简单是吧。
低权限到高权限,那这个才是水月强的东西啊,你不要说高权限到低调限,那不叫随意越强啊,也叫只是说那我们挖的肯定就是低到高啊,你不可能挖个高到低啊,那么这里呢就是我们说的这个垂直和水平。
那这里有张图是非常好理解的,你看啊垂直圆形呢就是往商水平的,就是网王子弹,就是水平的啊,就同一个起跑线额就很简单啊,用户A额,用户B用户C用户一用户own3,这三个用户呢他是属于这个同级别的。
那这种权限的一个跨越之后呢,这种漏洞呢就称之为叫水平越权,如果是相商的普通用户到普通管理员,或者说到超管,不管说是哪一个啊,是普通到普管还是普管到超管,只要是有权权利啊,就是我们这个级别的跨越的话。
那都称之为垂直有效,所以这个水平越传和垂直越传的就好理解了啊,我们这里那就不说这个概念,还有一个呢就是我们说的微授权访问,那什么叫微授权访问呢,V社要访问呢也非常简单啊。
通过低级别或者说无级别用户能够访问到,要验证的应用就很清楚,举个举个烂例子啊,你普通用户呢,你访问到了后台的管理界面的一些功能,那这个呢也称之为垂直约权,也可以称之为未授权访问。
但是未授权访问一般指的是你没有授权,但是你可以进取,所以他和这个垂直圆条呢有一些相同之处,就比如说啊你是个佣,你是个普通用户,你这里呢访问了这个艾德米的用户,按正常来讲的话,这种呢我们称之为垂直源传。
但这里面也叫微授权方法,也可以称之为微授权方法,专业的讲叫垂直传,但是呢你可以称之为卫生员访问,为什么呢,就是因为这个管你接源呢,他正常来讲的话,他是不让你这个当前权限的能够跨越到的,已经跨级。
所以一般未授权访问呢,是在这个水平越权和垂直优权两者之间,那啊你都可以这样教,然后呢,你如果说你不好去区别它是垂直还是水平,那这里呢就把它称之为归属权,简单来说这里面把这个去掉会更加的直观一些。
微酸访问一般指的就是当前用户没有,就是他不是用户,就你也没有登录,用户啥都没有干,诶是吧,一发问进去了,那这种呢我们就把它归类到未知源访问,一般有用户的话,我们还是把它归类到上面两个啊。
好这个呢就是我们说的今天要讲的三个这个字,333个点啊,把讲红加好之后呢,还有一个就是我说的这个检测项目和这个插件,说实话啊,如果在真实情况下面的话,除了批量的去测的话,可能用到这个插件和项目。
一般点对点的去测一个就是一对一的,比如说你的目标都很少,量很少,一般这个插件和这个项目的用的也比较少,因为插件也要配置,项目呢,还要安装,有这个安装和配置的时间呢,说实话啊你都测完了。
所以一般这种场景和项目呢,都是针对这种比较繁琐,或者说量比较大的一个测试目标还会用到,正常来讲的话,点对点的目标小的话,一般都手工测了,因为他测起来也并不麻烦,基本上就是观察数据包,然后呢修改数据包。
就这两步没有其他情况了,好,那这里呢我们先用一个本地demo呀,给大家看一下啊,这个讲解下这个水平,乐团和其月传的一些简单的吃法,这个本尼德玛呢哎就是一个cm s也比较简单,好理解啊。
他说实话也上不了台面,但是它能帮助我们呢了解这几块漏洞,然后呢把这个搞完之后呢,我们再搞得这个茶几和项目里面呢,去把它投一投啊,搞完之后啊,最后呢我们再来看一下,这个比较真实与填写于我们实际的一些。
那个划确案例啊,就是那个SRC上面关于这款漏洞玩具的,一些包裹给他整出来了,然后呢再给大家说一下啊,这个月传这块的一些东西呢,一般都是测出来的啊,好我们来给大家看一下啊,他也不分什么黑和白合啊。
反正就是那样车,因为白盒呢你也没办法去找什么漏洞啊,呃黑河的车和白河车呢都差不多,他测的不是代码方面的问题啊,而是你这些验证逻辑的问题,好现在我们先把这个网站给他开一下啊,这个本地DOM。
这是我们打野本地的一个网站啊,那这里有个会员中心要测这个月船的话啊,一般都会和用户相关啊,所以说这个用户呢是必须要有的,就说你要测一个目标的话啊,这个目标连这个拥护这个地方都没有。
那就不用测什么水平垂直了,那直接测未授权的,因为没有用户的话,就不会有这个东西,就不会有这个权限的级别划分咳,那么现在看一下我们注册这几个账号密码啊,我这里呢注册这个,小001啊。
啊账号密码的都搞一样啊,这里那就邮箱呢也搞了个小型页啊,QQM注册啊,好操作成功,那这个注册了再注册一个啊,小零额,对不对,好注册完之后呢,我们给大家看一下啊,我们呢会从原理方面。
先从操作方面再来讲原理方面啊,来看一下,打开数据库啊,这个呢是这个网站的数据库,嗯然后呢这是他那个表啊,表里面呢看到刚才创建两个了,小于等于一小于零二,这个是按密码妙之光呢,这个是它邮箱是吧。
这是他的信息啊,好那现在呢我们这里那就,这里呢我们现在就看一下啊,那比如说我现在先登录小于零一哈,登录好之后啊,这个是小点零一登录进去啊,这里呢可以修改密码是吧,对修改密码。
然后呢还可以修改自己的信息啊,大家看一下啊,呃我们现在思考一个问题啊,这个水平编传水月传,小001和小002是属于同级别的用户,都属于会员简单会员没有其他的,那么现在我看一下啊,我修改密码啊。
我用这个数据包呢给他抓一下,基本上啊所有的这个针对这个比较全的呢,都会用到这个什么抓包,然后呢可以去改包,这个是弯股,不会编的,就是如果手工测的话,好这个呢我们直接这里呢开个东西。
前两天还有人给了个茶件,我是吧,这个代理查询对,反正贴上去呢脸都能搞了,有查检单也放到自然保料,自己要要搞啊,网上一大堆这种查寝,那一开是吧,佩萨巴普是巴黎马利,这里呢把忽略本地主机把它去掉啊。
本地主机也抓好了,现在呢我们抓个包哎,好比如说我这里要把它改成123456是吧,123456呃,这个改完之后啊,我们来看一下啊,呃先看看这个数据包,看这里啊,这是他这个密码是吧。
但是现在这个小零一密码是这样的啊,好那现在呢我们把这个并提交啊,点击提交好,提交超成功,我们刷新一下啊,这面这里呢输入这个密码,这个已经被改掉了是吧,来已经变成这个密文了。
那就是123456的密文嘛是吧,改了说明成功了啊,已经改了,那现在呢我再登录就要重新登录了是吧,好那现在啊我们继续来看一下那个水包了啊,好重新再再来啊,重新再改1234567,1234567,好。
我们再点提交啊,把这个数据包给抓到,或者说直接从这个历史包里面啊,看我们先重新抓一个啊,提交好好看一下哪一个是他那个数据包啊,可以看这个域名地址啊,这个是本整那个啊,就是那个修改数据包,这个数据包好。
属于保证年代的观察下,这个叫user id等于小精灵呃,pass1等于1234567,pass2等于1234567,就是说第一次输入和第二次输入,后面的就是相关信息,比如说这个什么邮箱啊。
这个什么鬼公司名呀是吧,这种对应的值就是我们在哪里看到的好,那么现在看一下啊,如果现在呢我发了个把这里的小在user id,对应的是小李零一,我们要知道啊,每个这个参数对应的是什么意义。
你比如说来这个MAO手机号码,email是邮箱,这个pass1是提示密码输入,第二次密码输入是吧,这个uzi id是对象,修改谁的,假如我再把这个小零一的改成小002,对不对,那灰不灰呢。
就尝试修改了小零零啊,把它改成1234567呢,对不对,然后邮箱呢也把它进行修改呢,他以前邮箱是小001点啊,小002点是吧,我把改成什么,如果改成个叉叉,叉叉改成了叉叉的邮箱是吧。
公司名字也改成这个东西,然后呢我把它改成小002密码,让我改成12345678好,我直接看123567吧,好我们先来看一下啊,那这数据库的是小002,小零二,现在是没有任何改动的啊。
你看啊现在是这个new开头的,然后呢邮箱呢是小于零啊,对不对,我把数据包呢给他放出去测一下啊,发发完之后呢,刷一下这个数据库,这边看到没,该中了吧,那这就是水平越权,这就是典型最简单的水平越权。
就是用这个小001的操作数据包呢,去测试小002的,因为他们是同级别的,那这里呢就是呢数据包就改了是吧,然后呢你可以看一下,现在我重新登录小0。02,对不对,然后呢我按照这个密码去登录,他登录不上。
为什么又被改了,密码是123567的,你看现在就正常了,而且信息你看一秒公司名称全部被修改了,刚才注册的时候是小002art嘛,对不对,这个就叫水平的传简单吧,其实你再一看啊。
如果说在实战中怎么去测试这个点呢,也非常简单,就是你在实战中呢,就是要找到这个什么更改对象,就说你自己呢对啊,有个用户是吧,你改了之后呢,你提交你看哪个参数值啊,就是这个参数名对应的是你的对象。
那么你就把这个对象呢改成你要操作的对象,如果能够成功,那这就是越强,同级别的就是水平跨越的就是垂直,就这么简单的事情啊,把它归类好好,那么现在呢我们再来看一下这个,这个什么这个叫来啊,嗯嗯垂直的啊。
那我看你们这些人呢就喜欢问是吧,加米啊,有烟证码的什么鬼,哎呀,那是另外的话,你先把这个最基本的搞完了再说这些事情啊,好我们再看啊,比如说在这里呢它有个艾米是吧,有个艾米呢,这是艾米管理界面是吧。
艾米呢就是我们说的这个管理用户不一样,对不对,这是管理用户,然后这个关联用户这里呢,你看他的主管理用户密码是这个是吧,直接给看到没好,那么现在看一下啊,我把这个地方小于零啊,我直接把它换成什么艾特米。
我尝试去夸艾德米,2米是他管理员吗,把艾德米换,把它改成123567,那行不行呢,我把它改是吧,我这样去发这个数据包,对不对,改成2D米啊,对阿特米进行操作,那如果说能成功就改成1234567了吧。
是不是我们直接看这个当前啊,没有提交之前,这是他的MD5值,拿一点刷新,哎看到没,艾特米变成F,那邮箱也变了是吧,然后我登录刚才那个账号密码是吧,1234567登录哎,进去了,那么针对这一个用户修改了。
我们就称之为叫垂直越权,我们就称之为叫垂直圆圈,能理解吧,这个就称之为叫垂直运转啊,刚才那个是同级别用户修改小002,现在是针对艾德里,但这是跨级别用户,这是管理员垂直越权好。
那还有个未授权范围又是什么情况呢,好我们继续来啊,好看一下啊,哎我们来先做个实验,先来了解一下这个身份验证相关的,把鼠标全部删掉,我们这里呢先推出来啊,哎这个推数字退出啊,退出好啊。
现在让我们来到这边啊,哎这是那个会员中心是吧,我们先登录一下啊,就说我们现在呢可以看一下这个数据包啊,我们可以刷新一下,给大家看一下好了,比如说像现在啊,我们在你那去访问这个修改基本信息,我点一下来。
我没有登录的时候,没有登录的时候啊,这边大家可以看到啊,我点没有登录的时候,我点这个修改信息它是看不到的,然后这个数据包里面,那你也可以看一下啊,哎就是那个没有登录的啊,就是需要你登录是吧。
界面那就是在干嘛,需要你登录他才能看这个地方,好就是这个情况是吧,大家看到了啊好那么现在看一下啊,这是那个数据包,对不对,然后这里有个叫cookie,cookie等于PPC型等于一个值啊。
把它给看一下好,那么现在我们再来看一下啊,我重新把这个,哎等一下啊,重新打开浏览器啊,好重新在这里呢,在管理中心这里啊,重新登录啊,好登录了,我们再看看数据包啊,再看数据包,再点这个地方好,你看啊。
现在这个PBC形态变成了这个是改动了呀,那其实他这里如何判定,你是成功还是没有成功呢,其实就是根据这个cookie,这里面大家都知道啊,这个身份验传呢,这个是cookie验证啊,有的是C型啊。
有的是这个我们说的GDP,那有各种各种类型啊,简单来说呢基本都是在这个数据包里面的,去代入了你这个身份好,那么现在我们看一下啊,这是这个cooking的啊,cookie的没问题啊。
好那么你现在啊你比如说这里呢,这是你的这个个人身份信息,就是这个身份呢啊,你就能是吧,你就能这个操作这个地方啊,你就能看到这个什么,看那个界面啊,那么现在啊我们把那个提交数据包,再来修改一下。
重新再改改,改成123456好吧,改完之后啊,进行提交好,这里提交成功了,我们来把那个数据包呢给他找到,就这个嘛啊,刚才改的那个134565的那个密码,数据包好,我们把它发到这边来啊。
就是用有用户和没用户的测法,啥意思呢,这个是你当前登录过的规划是吧,我们这里呢可以看一下啊,我把它进行一个推出推出了啊,现在是这个绘画已经失效了,就说这是你当前那个绘画已经失效了啊,我再一次的把它删掉。
直接删掉,我也不把它删除,删除了,你可能说这个是不知道啊,我把这个更换了,你不你说可能是那个啊,我直接删掉,就是把这个用户的身份的判断的,这个cookie能把删掉,重新呢是吧,进行操作。
比如说我对艾特米用户进行操作,改了123456,这边呢看一下它的默认,这是它的值是吧,这是现在这个值,把数据包重新提交,再来刷新这里,哎发现这里更改了,那这个就称之为叫未授权访问,为什么。
因为你是没有用户去触发这个数据包,也就是说你不需要登录,直接触发这个数据包,就能够发发生这个修改事件,他和你登不登录没有关系,就先说你没有登录用户,你只要输发这个数据包休息,按照正常来讲。
这个操作是属于登录之后才能看到的,因为那你界面你打开这个修改基本信息,这里他是必须要登录的,但现在就是我假设我没有登录,我没有任何用户身份,我把cookie都删了,我触发这个数据包,它依旧可行。
就说明这里就是唯一授权访问了这三个归类,就是通过这个案例呢去给他讲明白了以后呢,你碰到这种信息,你就知道怎么去归类这个漏洞的交法,有用户的就把它归类到水平和垂直,没用户的就归类到未授权,当然了。
这个威少船呢也和这个锤子啊,水平呢也可以通用,也可以同样叫没什么问题,好啦,这个是这三个概念的演示啊,那么现在呢我们就说这个是我们手工方面的,去剪是吧,有没有这个插件呢是吧。
茶碱呢网上其实在他这个检测项目里面啊,这个应用市场里面,那它有你像这个什么AU啊Z啊,AUZ这都是以前以前的啊,那个官方的,那我们国内呢又根据自己的需要呢又写了几个。
比如说这个叫侠约对这个名字呢也是牛逼啊,就叫侠曰,这关门搞越权的,对不对呃,你看他是个怎么个测法,它的测法呢其实也非常简单,它和我们判断数据包成功与否,那是一样的道理,他这里有三个地方。
一个叫原始数据包,一个叫低权限数据包,还有个叫微数据,原始数据包,啥意思呢啊,他就是对比这三个数据包的返回长度,来确定有没有越全方面的漏洞,然后在这里呢有个叫提交这个信息的。
就是你把用户的这个登录的信息,把它写在就是你登录之后的这个cookie的话写在哪,或者说登录之后的这个这种验证的,把它写了下来,写了这之后呢啊,然后未授权呢会自动把这东西呢,D下次发包的时候。
他就会发三个包,一个是带这个身份的包,一个呢是这个原始数据包,还有个呢就是带身份的包,还有一个呢就是把这个删掉的包,就是说没有身份了,把三个包进行一个长度对比,最终呢给到你有没有这个未授权访问和权限。
跨越的漏洞,这就是这个工具原理,其实很多这种查解或说项目都是这么个原理啊,就是说做三个发包,就是我们说的啊一个用户的数据包,还有一个呢就是没有用户的数据包,然后呢观察他们的这个返回长度。
去请求同一个功能和低点,从一个数据包同时发送,就是一个有用户访问,一个是没有用户访问来确定啊,然后如果说是测这个什么水平,越传垂直越传,那就是用不同用户的这个数据包的去触发,好理解吧。
能不能理解这东西好理解应该不难吧,说白了啊,就是把我们的人工呢把他急死啊,就把这把我们的人工啊把它整理到工具下面去,它帮你自动去剪了,就不是说啊这个东西,所以说我说为什么说大部分的都会手工测,就玩呢。
啊这个茶件呢就是完全是批量的嘶嘶,好演示一下是吧,演示演示呗,那你看一下啊,那我们就测一下啊,你比如说像这里啊,那我们先登录用户啊,好在登录用户啊,我把这个信息这个用户的身份呢给他拿出来啊。
这个是他用户的一个身份是吧,就是这个cookie的这个值啊,我把它放到这来啊,由于他用的是这个验证,所以我们呢这个下面这个呢,就写不写都无所谓啊,当然你把它写上去了也还没关系,反正他也没有是吧。
U的话你就必须写进去了啊,啊这个是他这个身份,对不对,然后这里呢啊这里有个叫加加加白名单,白名单啥意思呢,就是他会有抓包吗,你要在里面把白名单写进去啊,哎就说你针对哪个域名检测。
就说比如我那个网络域名是吧,1。4,他启动完云南,那这里呢就是说只检测这个域名的啊,别避免这个数据包呢,有一些其他的数据包呢写出来了,这里呢再检测的啊,如果多个域名,那你就用逗号隔开,这没什么说的。
上面有提示好,那这里呢就直接点启动插件就可以了,然后注意一下启动插件的同时呢,要把这个代理呢把它要监控到这个Buff上面去啊,那启动插件,然后呢代理呢是这里开着了啊,那是开的,所以说有这个数据包的啊。
然后呢你只要触发一些请求,你比如这里面去触发呢,你看我们点这个地方,然后呢我尝试去访问来这里是吧,放这些地址,然后呢去看一下是吧,他能不能去触发到这个地方,然后你看啊这个数据包的就全部出来了。
注意呢就是观察这里啊,这个低产线位于长征这个长度啊,一般的就是看这两个对勾,有对勾的地方就可以,然后这是什么概念啊,比如说呢啊访问第一个数据包的时候,长度是5328,第二个数据包的时候也是5328。
为什么还是零呢,变成了五,变成了不等于这个无上了吧,那啥意思啊,我们看一下啊,原始数据包这里可以看到结果,结果呢,你看就是我们那个景区那个修改那个页面对吧,低弹性的数据包,你看他在库里面啊。
你看带有它好滴,传也是预报是吧,也是带有界面呢也有是吧,然后你看威慑权威是什么呢,界面呢没有了,看不到界面了,变成个3022的一个调整,然后你看数据包里面,就自动把那个什么cookie给他删掉了。
是不是,其实他就是把你这个用户的,相对来说没有登录的状态去尝试了,就是这里嘛就是你把它配置好之后呢,啊,你把用户信息写进去,再把你等下删除的这个信息,也把这个标识写进去。
那等下他就直接把那个东西把它删掉,就是说你现在是没有用户登录,去请求这个数据包,对不对,你看那这种的话就属于正常的,没有安全问题的,为什么这样说呢,很简单嘛,原始数据包里面正常有用户访问。
就是这么个返回是吧,然后呢未授权的时候是吧,没有这个用户了诶,结果呢就不能看了,那就是正常逻辑呀是吧,你没有登录,我就不让开了,是不是,然后呢你再看这个啊,这两个这三个都是一样的,这几个都是一样。
对不对,这几个都是一样,然后呢你再看这个地方哎,这个地方怎么相等呢,为什么相等呢,它相等都是返回404,那这是个另外情况,其实都错误了,你这个低权限本身也是这个错误,跟微传也是错误,那这种的就不酸了。
这是正常的啊,也是正常的,那你看这个地方那也是正常的是吧,都是访问这个login呢,都是返回这个页面,为什么,反正也是这个页面,所以说这样车呢他就没有问题是吧,那你可能说我明明刚才测这个靶场。
他有这个月全漏洞啊,但怎么回事啊,这个车子好像都没问题啊是吧,都访问都是能正常的这么个逻辑啊,这个车是吧,都正常,这两个对勾对上的,就是主要看这两个对勾对上的啊,对上就是存在。
但是这里呢我说了它是正常的,为什么是正常的,因为你这个页面本身就是返回这个一一模一样,都是返回这个东西,那那没什么区别嘛是吧,要看就是看书单页面返回正常长度的一致,但是啊包或者是有数据的。
而这几个呢都是本身就是有错误,妈的这个404都是四灵石,那咋个咋个有什么区别呢是吧好,那你可能说刚才这个靶场,不是有这个虐泉龙毒吗,因为我那个标签漏洞是属于什么,属于提交修改,但我现在是只是访问地址。
访问地址它是有权限验证的,它是安全的,他只是去触发某些功能的时候造成的传,所以说你要在这个地方哈,重新来这个地方啊,你比如说像现在我去修改一个密码,我重新登录一下啊,我先把这个里面都清空,好我登录进去。
然后呢,你看啊,我在这里啊,我去修改密码,像12345678对吧,我去修改这个密码,然后把人的数据包给他抓起来提交好,我们来观察这里啊,你看这里啊,这个是那个post请求,就是那个修改数据包的那个操作。
你看这里全部相等了,你看啊,现在就对应上了,你看带有用户的判定的时候,是吧,他的返回值呢,是这个东西未授权的时候没有带呃,配这个位数权怎么也呆了呀,妈的真是奇怪,他没有删掉哦。
应该是这个数据包的C型的发生更改啊,删了一个部分,那这里呢他也是正常的,那是吧也是正常的,那说明这里那就存在这个月传嘛,好不好理解,其实这个查询呢就是这么个逻辑啊,就是说对比这个低权限用户包。
原始数据包和这个v search的长度,如果微缩的长度呢和前面两个呢相等的话,那就有可能存在这个漏洞,为什么这样讲,就是因为他们返回结果一样,工具呢是把他的用户身份把他抛离了,抛离之后呢。
他还能结果一样,那就说明有嘛,就像是没有登录状况下去触发这个数据包,说实话啊,把这个插件一用呢,你会发现啊,好像和我们手工自己吃呢,还难理解一些,还男女结线,你说这个茶钱要还是不要呢,是不是。
这个就是这个插件啊,没有可靠的啊,在网上去测这种嗯未授权的啊,这种越全方面的这种插件工具也好啊,都是半斤八两,没什么特好的,以前呢这个中通呢有个那个开源项目,用的最多的就是我这里说的啊。
但是搭建起来bug特别多,我好不容易把答应下来了,又是哪的问题啊,这的问题应该是烦的要死,这个呢好死,但是bug特别多啊,安装呢是怎么个安装啊,大家要下去呢,把那个东西修改一下啊。
好我们现在呢给大家看一下这个地方啊,还有人问第一权限是什么,权限这块你说是什么权限呢,这个看怎么界定呀,你和哪个对比,就是D向键的,一般说D盘键就是普通用户嘛,就是说你能正常看到的这个地方啊,好。
这是之前那个前几天用的比较多的,一个月传测试项目,好,我给大家看一下啊,这个大家搭建的话有问题啊,这个问题呢在这里解决,然后呢我也给大家做了个直接解决的方案,就是我在那个网盘里面呢。
重新把这个修改好的啊,他还修改这个dr。的里面是四个文件,这四个文件我全部把它修改了啊,起了三次行呢,这四个文件我都帮他修改了,所以大家直接用我这个给他提供的包啊。
啊直接docker的安装好DOCUT之后呢,直接那个啊,也是根据这个上面的这个报错的解决方案呢,啊这样去操作的啊,而且他说实话解决完之后呢,还会有一些小问题,烦死了啊,简直是把打进来了,大家呢反正是坑。
我跟他踩了啊,你要参考的就是参参考,这里边说那个采根进度,他要让你修改什么地方,你就修改,你不想踩坑的话,你就用我的,直接用我这个啦把解压啊,然后呢怎么用它呢是吧,CD来到那个地方,然后来到这个地方了。
再来到这个目录,这个AUTH目录,然后在这个下面呢有这个几个文件啊,直接在这里安装好DOTT环境之后呢,直接dot postal,然后up啊,杠B是吧,直接把起就完了好,他就启动了,启动好之后呢。
端口默认是四个八,我就直接访问啊,在他项目里面有索命啊,有所谓四个八二,后面加logo啊,然后账密码呢是这个艾德里密码是阿里比二三,在项目里面有说明啊,你不要说这个不知道在这个上面写写U了,好真的进去。
那这是个检测项目啊,进去啊,这是什么东西的,好我们看一下啊,他只是怎么个测法,怎么玩啊,我给大家演示一下啊,比如说这里有账号是吧,账号我填填个账号小D01,密码呢123456,点击确定。
再添加个用户小于零额,密码是123456,确定好,都把他自己那个写进去了,这个叫流量啊,这里随便创建空间,名字随便取,根据自己需要,我们就测试这个什么没没to,或者说我们这个今天讲的啊课程啊。
小于test test test test72次嗯,随便取个名字好,就是这个名字嘛啊好这里呢点这个编辑干嘛呢,你看啊SSO验证和手工录入这啥意思啊,啊你这里呢可以勾选的这两个号,刚才你添加这两个号。
把网址写进去诶,他就帮你自动去跑这个网站,用这个两号的帮你去跑,但这个呢是要建立对方是SSO验证,啥意思啊,SOS验证啥意思啊,就是那个用户呢是用灯框登录的,我们那个是不是啊,不是的。
不论是表单这个soc验证的,就类似于windows那种验证一样,就是打开网站呢,它什么跳出那个弹窗,让你登录账号密码是吧,就可以用这个默认呢,它就会自动帮你提交这两账号密码登录进去测,但这个它不是。
所以我们要用这个手工录入,怎么录啊,添加个名字啊,随便取就叫用户诶,好这里呢就写上我们那个用户的身份啊,用户的这个用户的身份啊,下用户身份,比如说我们这边要给找个网站给他看一下啊,找我下里巴。
他不能测这个127点,不能测那个1112016,8。1。14的那个网站啊,不能测这个网站,不能说我们本地打理网站,为什么不能测这个网站啊,为什么不能测这个网站,大家知不知道啊,诶怎么变成这个了。
为什么不能设个192。16,8。1。14那个网站,因为我这个搭建是在服务器里面,你这里写1921624,他会找服务器1920S,而不是你本机的,所以说你这个环境装到你本地了,你写一点JS他知道能理解吧。
不要搞错了啊,你这个血上去就是报错了啊,因为服务器呢搭建在这个网站,这个服务上面去的啊,一些艺人士的他去接一人,是在他的这个环境里面去找那个意淫的事,不是在你电脑的啊,不要搞错了啊。
所以我这就只能测我这个外网的一个地址,让他能访问到的,啊这边我就拆下,比如说小地方点com答案,这些用户诶好,那网站呢根据自己需要啊,正则表达式后面信号的代表数位,所以写在那边写八点看嘛,对不对。
然后这里再写上你这个用户的凭据啊,由于我这里呢我先看一下啊,我先访问下这个网站F12是吧,刷一下这个网站,看我现在用户的频率,由于我这里是没有用户用户,所以我这就测两个用户。
一个呢就是我们没有用户的情况,还有就是有用户的情况,反正是没有用户的cookie,把它复制开好,我们来做个记录啊,避免的有的人就说哎呀我听不懂听不懂啊,那这个用户是没有登录情况下。
就是我没有做任何登录啊,没有用户,或者说你找个这个普通用户也行啊,或者普通用户,对不对,那你可能会说了啊,实战中那普通护甲如我没有呢,那怎么办呢,没有就租车呀,你说租车也注册不了啊,那租车都租车不了。
你拆个毛啊,车用户都没有,你还凑热想干嘛呢,有些人他就喜欢这样问,我真的是服了,那你只能测未授权了,就测他一些这个需要登录的地方,那这个水平越权垂直越权就不用测了啊,这个就是这个数据包是吧。
然后呢我们再找找个不同用户的啊,由于我这个网站呢它没有这个普通用户,他就是一个没有用户和管理员,所以我只能用管蓝给来演示,你可能又会问了,实战中我知道管你玩的这个cookie呢,我知道我不会登录进去吗。
我还测个毛啊,啊话是这样,没错啊,但是我这里的时间环境没办法啊,他只有这个管理员和普通用户啊,没有用户,这个两个级别没有什么普通用户和管理员,只有没有用户和管员,所以我只能在这给你演示啊。
就是找两个不同级别的用户来测,实战中的话,那肯定不是测这个管理员了,因为你有这个管理员的话,哪会这样测呢,你如果说要测的话,你就直接测什么呢,哎什么情况,这不是已经登录了吗,哦这个是没有登录的啊。
这个网站是没有登录的,看这个网站的那个地址啊,这个是没有登录的,这个没登录啊,我们直接观察cookie就知道找,随便打开一个地址来看下cookie,这是我那个空影子吧。
好我这里那是我那个管员coking啊,那我们就不看了啊,避免有把截图干净柔弱了啊,来差异有差异啊,我就不看了,刚一截图是吧,赶紧你妹的看到我小八去了啊,我还是比较怕的啊,好那这里呢就是用户V的啊。
那先进去了cookie啊,呃一个是这个的啊,对不对,点进去啊,再加一个嗯,然后这个是用户,就是就叫小迪吧啊小迪用户D吧,好然后这就是shy点com cookie啊,写进去。
然后这个那就是我们这个这个的是吧,然后呢这是这个地方,看好点击这个保存,保存好了,来看一下这里啊,就是呢,他等下他就会用这个用户A和用户B两个cookie,去对这个网站去访问,妈的差点搞错了。
差点翻车了啊,再小点半点com那个键盘里面的老给我自动输入,妈的,键盘垃圾啊,然后给我多搞一个键盘,现在有点混乱了,有时候多敲一个哎,要换键盘了啊,好那这里呢直接点这个开始对吧,点开始之前还不行的。
还要干个什么事情呀,还要做的事情,安装个插件海涵,这个查询一定要按顺序啊,这个查询呢支持两个,一个是八宝插件,一个呢是这个浏览器插件对额,但是写的还有交的啊,有教的,大家自自己写的啊,但他有教的哈。
你看这样啊,这个有两个插件,一个插件就是巴普查询一个那个啊,这个插件在哪里呢,在这个项目这个目录啊,这个是Buff插件,然后呢这个是那个浏览器的那个什么插件,他就是浏览器拓展,这个是8P插件啊。
你这里呢记一下啊,那这个是8P插件啊,8P插件它没有编译的啊,需要你自己把它编译出来,我们这边就不编辑了,直接用这个浏览器,起码是谷歌浏览器的啊,找这里,拓展这里啊管理拓展,然后呢是吧。
解压到那个那个目录,就这个查询这里面啊,这里就是让查询二老八开启这关闭,这里写了服务器地址,就是你这个地址啊,就你搭建那个网站地址,就这个,啊配置好,那做了这个事情之后啊,接下来这个插件一开。
那么也就是说他会针对你这个插件上面访问的,那个目标规则的,就会请求到了这个项目了,然后他去观察它的流量,通过对比两个用户的数据包,来去检测这个月全方面的漏洞啊,是老吧,这不是有两个用户吗。
永辉这永辉也cookie,这是用户B的cookie啊,写上去就是把生成的这个平局吧带上去啊,有些的可能不是cookie,是其他的是吧,那你有其他的,你就把全部写上去啊,好保存好之后呢,接下来就点击开始。
点完开始之后啊,这那你就可以尝试性的去访问网站了啊,啊你比如说啦我这里拉起来,我去访问一个页面是吧,访问这个一个页面,然后呢再去访问一些这种正常页面,发完之后呢,就看这个这边有个流量啊,这里有个呢。
最后面这个这个地方一点流量明细刷新,反正bug特别多啊,bug那真是你妹的烦的反思,你看他就会有这个数据包,产生这个数据包呢叫什么鬼呢,他就会对比两个用户去访问的一个结果,啊就会对比两个访问帮的结果。
哎所以说这东西呢看上去的那个啊,这个是以前他没有更新了啊,这是以前的中通项目,还有一个呢是这个项目啊,这个操作的大概是那个流程,就是对比两个流量的结果,然后通过来差异性对比说,说白了啊。
你和那个巴布树上面看一样的,你也不好说这个东西好还是不好,哎简单来说呀,我懒得说啊,网就这么多,还有个呢就是这个插件,这个是新出来的一个这个工具啊,说的也是牛逼的要死,但实战中呢说实话我测了一下。
我到现在都没有把它搞出来,这空气怎么用,我的测了一下啊,灯光明没用成功唉,你可以下去看一下啊,这个新的没用成功啊,你知道啥情况,写上去还是比较好的啊,要是准备两个账号,然后来进行进行相关对比。
说白了也是手工一样车,就说这个项目这个工具呢,批量车还可以用一下啊,如果手工车,那就没必要了,只带个项目的啊,比较麻烦啊,太麻烦了,这个东西,好这就是他说的的工具项目啊,哎呀我不是说想讲的东西啊。
有些人呢你说了,他就肯定说有没有什么检测工具啊,那些东西其实有些漏洞呢,用工具解的好,但有些呢没必要啊,没必要去捡你,因为你自己那就就本身,手工就能捡的一些事情啊,对吧好,那么现在呢。
我们就把这个SRC的那个三个案例给大家分析,然后呢我就给大家看一下啊,啊我晚上我的网上那水平给大家看一下,就是点一下啊,我们也不做实战分析,先把案例分析完啊,分享完给他一讲,讲了之后呢。
我们追求个实际性的一个操作,因为我们这里用的这个本地这个靶场嘛,肯定就是吧,不是我们这个面对的啊,因为在实战中的话,刚才大家也说了一大堆的疑问,什么带托克呀,什么加米奶呀,对不对。
我当然知道虾米你能不能把它还原它呢,对不对,你能还原不解也能解吗,你可能说那怎么还原呢,那前期那说算法去逆向啊,那不都不是这种课程,那你有那个技术里边还不就行了吗,你没那个技术吗,你说这些问题干嘛呢。
那就不是这方面漏洞问题,那就是那个能不能把那个算法理想出来的问题,而不是这个漏洞你不了解啊,而是你不懂那个算法,好那这里呢我们就看一下三个案例啊,这三个案例全部是真实的啊,呃哪里看的呢,有些人点这里啊。
点这里看啊,点开打开链接哦,就这里啊,我都给他规定好了三个漏洞的玩具案例,然后这里面我只配了图片,没有配索米,说明那是我讲出来的,大家看理不理解啊,好这里呢我来讲一下啊,这个案例呢是一个垂直热传的案例。
是一个高效的一个小程序,上面的我刚才说了这种漏洞,他是不在乎你是网站还是小程序,也不在乎你是app,也不在乎你是java还是pp,都不在乎他,在乎的就是你符合他的逻辑就可以撤。
所以一般这种SRC呢喜欢玩这种漏洞的,原因就在于此,就是因为他不需要说你早日扫描什么,也没有诸多漏洞来扫描这些东西,就是说在漏洞你找不到的情况下面,可以从这个业务器方面的去挖,就这个意思啊。
因为其他的那种漏洞呢是属于代码层面的,它是可以修复的,但这种呢就完全就是靠这个开发者的细心,和逻辑上面的一些处理了,好这里呢我们就废话不多说了啊,直接看,这是第一个啊,垂直越强,这个那是要高效的小程序。
然后呢打开之后啊,扫描扫一扫,找到小程序,这里呢有一个叫登录之后呢,打开之后呢就这么个界面啊,校友登录啊,和访客登录,那我这里那肯定是自己,那也没有这个账号啊,那肯定选择访客登陆是吧。
他肯定选择访客登录,因为这个小友登录里面账号啊,登录之后呢,他是说要审核是吧,啊这里有个叫暂以游客身份进入,那我就肯定是以占游客身份进入嘛,真之后呢啊把网址呢拿出来之后访问呢,他可以电脑登登录。
所以呢我就拿到电脑啊,因为上面这个操作截图呢都手机上面的,反正电脑去看那个网站界面那样,大概就这么个界面,好到这个界面这里的时候啊,就开始了这个正规的测法了,因为前面几步呢全部都是先进入到应用里面去。
现在已经进入了,进去之后呢,在这里有个就组织管理抓了一下数据包,数据包,这里呢我们发现你看他的数据包这个请求,这里啊,这个码都没打好,这上面上面硬唉,尴尬死了,尴尬了啊,那这里呢就是那个呃截图。
然后这里面有个叫你看他的这个数据包,和我们刚才讲的就不同了,你看它cookie那里有个什么叫这个字,然后这里还有个什么C型id和什么product ke,大家要关注到啊,你的英文学的好。
很多东西呢也好理解安全学的好也好,理解和用户身份相关的cookie,还有什么C型这种关键词,还有什么叫什么普罗扎的K,你都说这有什么意义啊,你要明白啊,嘶我们都知道你打开小程序,或者你打开一个app。
他怎么知道你是模拟器打开还是真机打开,或者说他甚至知道你是苹果大苹果,苹果手机打开的还是安卓手机打开的,或者说更深层次的,他甚至还能知道你是哪个型号,哪个品牌,他都知道,为什么呀。
因为大部分的这种app或小程序呢,它都有一个权限,就是你在使用的时候,它都会有一个授权,授权之后呢,他就获取了你的设备信息,那设备信息可能就带有这个数据包里面去了,所以其中可能还有你身份信息。
所以为什么说什么普查的,K也属于一种身份验证呢,因为这是你的用户产品,如果说你把这一栏是删掉的话,那可能他就会认同你是其他产品,比如说蓝波炸的K,或者说这里要写这个什么个APPK。
或者说a p p p id API id就是我们的这个什么,可能是手机设备的这个id编号,如果你把它删掉,你再去访问,可能他就会认为你是其他设备,那么界面可能就不太一样,我们都说过啊。
数据包的任何一个东西它都有意义的,以前那是网站的电脑上的网站,那可能通过UV头来来判定,你是什么操作系统是吧,是电脑端还是手机端,通过UA能判断,那么如果说是这个手机方面呢。
可能就会有各种各样的一些判断,所以你可以看到啊,这里有C型id和这个东西啊,这两个呢就是相当于说是你这个设备的编号啊,或者说产品编号,然后呢和你这个身份的这个id值,就是和你身份相关的,你一定要记住。
就是说挖这个月传漏洞,最重要的就是看他是什么,找到哪个和你身份相关的东西,因为你等一下要去尝试他有没有标签漏洞,就是修改这个地方,就去过这个地方好,我讲到这里的时候,我先给大家说一下这个意思啊。
大家看一下啊,就拿我这个本地的给大家说一下,你看啊,它为什么会存在这样的问题呢,你看啊,那表里面有个东西,有个这样的东西,有个什么东西啊,那这里叫ADD me,OK这个表它等于,然后等一的是二零用户。
下面其他用户呢全部变成什么零,这里我们是不是可以这样去理解他呢,就说这里如果这个用户的变成了乙,那这里他就是管员了,能不能这样去理他呢,其实在网站的开发应用中呢,就是这么个判定方式。
就是你用户的一个标识符,比如说你的id编号,你的类型编号类型一呀可能是关联,all呢是这个是吧,或者是这个超级会员啊,223的普通会员四呢,游客他可能是通过这个标识符呢,来确定这个用户啊。
你这里那就伪车一下吗,你别说大,假如说啊这个特色零一是吧,这里我把它改成一,这边我改成一啊,那么现在你看一下啊,我们再去登录一下我那个网站,他以前肯定是普通用户嘛啊我登录了,他是201用户。
123456登录,我这里没打对勾啊,不好意思,没对勾啊,没声小啊,不好意思,插件里面的翻车了啊,哎什么情况,不是test01吗,是不是三成零啊,啊这还不行啊,那可能还有其他验证啊,还有其他验证。
我意思就是说这个意思啊,不要见怪啊,不要大惊小怪啊,哦这里还有个哎,这里还有个啊,这里还有个,这里还有个那还有个叫user top用户类型,那这个为三,这个为一,可能这里还要修改一下,我看是不是啊。
我只是猜测,因为我没有实际,我想给他讲清楚而已,你这翻不翻车很正常啊,不要大惊小怪,哎你看是不是就行了,对不对,你看他就成了这个什么管理员了,那么大家试想一下,如果这个数据包里面。
他把这个东西给它进行了全参,假设说啊这个数据包里面有这个东西的传参,你把它改成这个三,它数据库发生修改,那你的用户不就是跨越了吗,所以说其实这种漏洞的车法呢,就是抓数据包的那个地方,抓什么地方。
就是抓和你用户身份相关的地方,你进行修改,然后呢去测就是这么个逻辑啊,那么难点就是难在于怎么去判定哪是哪哪是哪,就是修改哪个地方,这个地方为什么不修改,那个地方要修改,这个就是经验了。
就是你对整个这个这个类型的判断,因为就像刚才一样的是吧,我为什么不修改这个地方,只修改这个地方,我怎么要修改成user ta法,因为你判断你这个名词上面都告诉你use tub,use类型。
这个是三这个一,那你说这个三合一代表什么意思呢,你猜一下呀,对不对,你这个在恒河中测试挖这个漏洞,都是靠拆拆车拆车,然后一直找娃的漏洞,所以你再看这个地方啊,你看他要怎么测呢,他找到这里是吧。
他会认定为这个cookie和这个C型id,这里呢是吧,可能是当前用户的一个身份,然后我们记住一下,我当前用户呢是用这个游客登录的,那可能这就是这个游客的一个身份,对不对,然后的身份id好。
接下来他通过这个JS的一个源代码中,找到了一个接口,接口呢是一个WEBSGO的一个match,就是找到这个JS里面找到一些这个URL地址,然后呢去访问这个URL地址,然后呢就用我们这个游客的这个什么。
那你看数据包里面的这个地方呢,就让我们数据包的这个以同样的这个什么,刚才的那个什么游客那个身份的凭据,去尝试去请求刚才这个泄露的UR地址,一旦访问之后,发现数据包里面存在了什么这个敏感信息。
这个敏感信息正常来讲是不让游客看到的,但这里呢通过游客的身份看到的,你告诉我这个漏洞是吧,哎这个漏洞很难吗,不难,这其实就是是多搞了几步,哎就挖到了这个地方,其实呢就是他找了个游客登录进去了,然后呢。
找那个找那个什么管理员才能触发的,这个滤网地址,因为他这个正常来讲,这样他的这个组织管里面啊,这些东西全部为空,就是游客里面那是没有这个功能的,没有这个功能给你看到的,其实就是说这个这个网站的开发者呢。
他只做了一个显示和不现实的一个差异,但是并没有对这个用户权限进行差异,就说查看这个这个信息的时候,就查看这个学校类型啊,这个学生的信息的时候呢,这个页面呢他只是没有显示到游客,登录到那个界面那里。
但是实际上在这个功能点上面,他是没有做限制的,所以呢他就用这个游客的身份呢,去访问这个什么,这个正常来讲是管理员才能看到这个界面,一访问呢发现了这个信息,这就是典型的一个垂直标签。
就是从这个低权限的访问,到了高权限才能看到的数据,这就是这个案例啊,你说这个案例里面有涉及到什么加密吗,没有啊,他涉及到的是什么,就是做了个什么事情呀,游客登录进去之后发,我那个管理员看到眼里。
就这个点没有做任何事情,他没有什么修改这个什么鬼用户id啊,这些东西没有修改,如果说他修改的话是吧,他搞不清楚这个加密那个情况,或者说这个编号那也没意义啊,你看他这个C型id和这个这个K。
这你能知道它什么意义吗,嗯你这个id你可能是一好,那下一个你猜猜你下一个人就是二,你这好猜嘛,那啥这个呢有没有规律给你,三没有规律给三,你哪知道你上一个或者说你下一个你要测的,他这个id是多少呢。
你车你猜不到啊,对不对,你猜猜不到啊,或者说这个K是吧,这个K呢他是一个加密的,你不知道算法,你哪知道这里是什么东西呢,都不知道啊,所以说如果说你要测这两个地方的话,就是要测这两个地方修改它来去测。
访问这个地址的话,对不对,那你就需要弄清楚这个算法和这个的由来才行,所以这个呢就是属于另外一个支点了啊,啊这是这个垂直越权好,我们再看这个水平要强啊,这个水平那看一下啊,也是一个大学的。
这个就是192C的这个报告啊,来大学的那个呃心理健康的那个地方啊,一打开呢这个登录系统是吧啊,就是随便找了个测试账号,你跟他说哎你怎么知道有个测试账号啊,我告诉你啊,我前期讲信息收集的时候说过是吧。
一个是弱口令,还有一个那就是你自己在一些泄露平台上面,那是吧,有些那种身份,但我不知道他还记不记得啊,来看一下啊,那什么GHUB,有时候把一些源码呢给他放到上面去了,然后呢里面附带了一些数据。
我不知道还有没有印象啊,一搜啊搜到了一些这种信息是吧,所以说你不要问说哎,你怎么知道他有个账号密码呀,记得有点深是吧,你可以搜一下来,我就拿这个关键字搜这前期都讲过的是吧,有些人那老子从来磕也不听。
就喜欢问,哎呀这这搜也搜的,麻烦死了,搜到关键字啊,那这里有些关键字啊,这是这种没,关键字呢妈的那天我做演示,我说关键字都忘记了,什么data呀,那些关键字,然后呢加这个参数的去搜哈。
去搜一下那种有人那就是一些开发者,但他不喜欢,经常上传些源码到这个这个上面去嘛,然后呢,因为源码里面就附带一些那种测试数据啊,买东西,然后呢就泄露了啊,你自己看那个当天科吧,我就懒得去给他看了啊。
就翻这种关,有些这种码平台啊,就是前期21天讲过的,然后在这里呢就找这个账号随便登录进去啊,登录进去之后呢啊有些他可能入口令也能登记,登机之后呢,他查看这个个人的一些操作的时候,找了个数据包。
书包这里有个叫来请求接口呢,number o4344995709是吧,这个id这个这个这个数据包,然后呢就发到那个encode模样,对这个来进行编辑,来对这个进行编辑。
然后去请求这个get API mao,这个呢可能就是你个人信息的身份是吧,个人信息的身份,这个id就是一个用户的一个标识,就等同于我们在这里的一个标识是吧,比如说你这里是id1,那我id等于一。
就是查看你这个用户的身份啊,i id啊,就是这个身份是吧,然后呢他就以此呢用爆破对更改后面的那个值,然后他去请求,结果呢看到了哈,这个人的叫欧阳,欧阳可的是吧,这是密码,这是他电话号码。
那请这个发现的这个叫耶耶耶,什么这个乱码了啊,这乱码了,这不是说不显示啊,是乱码了,密码和电号码对不对,看看走好新啊,这是他的密码,这是他电话号码,这个就非常简单了。
就是说找到那个查看用户信息的一个接口,然后这个接口里面带有我们的用户的评,这个id值,通过对这个id值来进行编辑传播,发包便利,然后呢去不断性请求这个接口诶,把一些其他人的身份的。
接口的信息都给他拿到了,这就是水平越传的,因为你这个id对应的都是普通用户啊,他不是干员啊,所以那就查看了其他普通用户的权限啊,都是同级别的水平,源传水平要向造成的信息泄漏,那漏洞标题就这样写对吧。
水平要向造成的信息泄露,好这个就是我们说的水平强啊,那你看这个微受权呢,哪个微受强大更好理解啊,呃登录进去之后呢呢,这个普通用这是个测试用户啊,就是网上找的一个那个demo站点,就比如说那个测试。
就相当于说,我们经常不是有一些那种延迟网站吗,啊给个测试账号啊,一登进去测试账号呢,肯定就不会开放很多功能功能,大家都是为空的,看都看不到,结果呢在JS包里面呢,又找到了这个什么一些特定地址。
然后呢直接访问这个车,你地址诶功能出来了,其实他和那个第一个那个安妮的差不多,然后这里的案例里面呢啊,访问到这个呢后台的一些这个配置,配置里面的有这个什么二本的一些K啊东西,然后呢是吧啊就进行匀渗透了。
哎这个就不是我们说的嘶,简单来说呢就是啊没有点车的时候呢,翻JS文件,把JS文件它能够找到一些愿望呢,全部去访问一遍,去测一遍是吧,然后呢去对数据包里面带有身份的地方呢,去批量去跑啊。
把平台地方呢进行修改了,能尝试对哪个用户呢是否生效,来去测试标权浓度,这是这个案例的给到我们的提示提示里面呢,也涉及到什么JS文件的翻译啊,这也是为什么这一期呢我们去讲JS的原因。
上期都没有没有怎么讲啊,这期呢为什么讲JS呢,大家都感兴趣,其实大家都应该意识到了,就是很多情况下面,有些JS都会暴露出更多的欲要地址,能够帮助我们呢有更多的测试机会啊,就这么简单。
然后那个加解密为什么U大家也比较感兴趣呢,也非常简单,这个案例里面第一个案例就有明显的加密,只是我们他没有用这个,因为他测的简单,不需要那个加密,但是实战中是很多的啊,实战中是很多的加解密的来。
那现在呢我们就实际是吧,打开了几个网站来说一下啊,我们这里车啊,就不是说这个真的车啊,也就是说哎哪里到哪里了,对不对,大家就是吧知道接下来该怎么做啊,测不测出来,那是另外一回事。
我们随便找一下这个接口的啊,其实这里面找这个妈的,找那个找那个小程序会很更好吃一些啊,你可以看到这个玩的时候呢,除了那些老的握柄用的好玩的,大部分现在好多转到那个什么小程序上面去了。
因为小程序上面的安全到现在还没有太普及,很多人呢去开发小程序的自之中把功能写出来,还没有做安全方面的审核,这也是今后的一个趋势啊,就像我们说的一个新技术出来的时候呢,先是普及,后面的再次考虑安全。
这个挖纹呢出来太多了,所以WII1些应用呢都很成熟了哈,安全点的就比较少了,所以很多在挖SRC的时候呢,都转到什么小程序app上面去了,小程序上面那个看的更直观一些,但没办法啊,这个小程序文看不了啊。
我举这个例子啊,哎这里也不好找,哎,我随便找啊,我也没有做任何演示,我搜一下那些啧,这搜一搜他妈的说的什么鬼毛病呢,还不如百度搜了啊,这都是一些登录点啊,你看他这里都有登录是吧啊。
我们不是说啊这里有针短信登录啊,找网登录啊,这地方是吧,这也太那个了,换一个换一个,他妈的怎么都是些这种,搞个垃圾学校行不行,他妈的都搞的985211,这谁顶得住啊,这我不是说这个98521没有漏洞啊。
是太敏感了,照后面几个哈,我们就说他是一个什么逻辑,就是大家要明白,啧这个小程序app还是好多了,这你妈的这鬼掉毛掉毛,事情上面太麻烦了,好搞个这个哎,他这里还可以登录啊,哎这这个车不行啊,这个车不行。
这个为什么是这个还是个PHP呢,这是个批一批的,这这妈的这车还没车,都出了一个什么鬼啊,这什么啊,怎么不讲那个ping谱的嘛呢,我还以为是P1P的频谱写的,我刚刚以为是sink pp啊。
好像是是10pp啊,这个框架应该是ping不大,这个boss页面太那个了啊,哎呀这怎么好呢,还是用那个,微微信小程序测的好一点啊,还是用微信小程序测的好一点,这上面那些东西太那个了啊,我抓个包吧。
现在直接抓个包,微信小程序好好操作一些,它上面都有直接那个啊,因为一般像这种web端,有的话基本上在在很多很多这个,很多什么很多小程序上面或者说app都有,大家应大家在学校应该知道啊。
大部分都有通用的产品,这是一体的,我把这个带你开一下啊,嗯那个看一下啊,我们就说一下呢,你看他这个包里面啊,这是没有登录的时候,这是他cookie,那其实这个没什么太大说法,我们主要找有租车的。
这妈的没没账号密码,这车也不好车呀,这你妈的要找个那个账号游客呀,或者那种地方吃好吃一点,账号密码真的没有,人妈的访客地址还要在JS里去翻,来先翻几个吧,我看这个啊,我找了个有那个的来。
我们从这里看一下啊,这是那个刚才那个JS,这个也不一样了,我来直接从这个JS你去翻一下,好这是那个数据包前期的信息收集呢,这不用说了啊,应该是个work park的,那果然是VUE1的框架。
what park park也没什么太大问题,就是那个JS啊啊然后呢,你在这里呢说白了还是要对这个,还是要对这个JS呢进行逆向啊对吧,来我们把它进行一个简单的分析体系下,里面的URL地址,嗯红军们。
哎跑哪去了,还有那个工具名字叫什么呀,他park不是叫这个名字吗,前进也是啊,对对对,就这个park p AC d e r哦,ER我写了1T去了,妈的你看啊,你们有些人呐就喜欢温。
你看你这一我我这搞实战手机,有些人就我知道就没学好,那有人回答js finder还回答什么,翻三倍形为三分形,我还好想一点回答这个帕克非ZZ的就好了,为什么说这个js finder不行呢。
啧因为这是打包了啊,这个park f c是专门针对这个打包器的,你用那个FU什么是个js finder搞不出来的啊,咳马上就要提取这JS文件呢,把涉及到所有JS文件给他提出来。
然后从里面提一些有加之类什么渔网啊那些,当然了,你也是可以在这个上面去找的啊,但上面找的手工找太麻烦,先有个大概对它进行个了解,看一下它上面那些信息,然后呢我们再着重区分,嗯你接过来我这里说星耀啊。
星耀呢,因为这个地址里面,他从从地址里面提到这个API地址啊,这地址,但是这里呢他说有这个地址,结果呢有点不太准确,那可能是什么情况呢,就是我输的地址,那是这个这个地方嘛,所以我就写个当前目录。
他可能是在这罗根后面在提,啊报了一些错误无关紧要啊,因为你只要想找出漏洞,那不太现实,主要就是看你那些诱饵地址呢,这是他提到的一些结果了,他提到的一些结果,他说V是要访问,但这里呢都是大部分的误包。
就是你请求这个地址呢要不要权限,这个未上权都说没有权限去请求,那这里怎么测它呢,大家觉得怎么测它呢,又要地址都帮你找出来了,这里那还有的,这是一个叫什么,非要s upload,你说这里是干嘛的呀。
这可能就是上传相关的呀,那既然是商权相关的,把这个关键字给大家录一下,是吧,好搂一下,然后这个文件在哪里,他说是在在在这个文件里面去,那就直接访问这个文件吧,看看这个代码怎么写的,然后呢。
这里怎么用它那个F10是吧,让那么一加载,加载好之后呢,找这个这里是吧,那这里呢你看他在这里显示这样子,你点这个地方的数据出来了,对不对,正确安全显示了显示了美观,找到这个地方呢,这个要要路径。
这里把这个关键字一搜是吧,upload这名字叫什么,这,搜索关键词是吧,找个比较关键的地方,不要设置upload啊,overload可能里面太多了,要找到这里了,再造路径吗,你看下面呢就是读懂代码了。
就是看这里是吧,举这个例子发的是什么数据,他说来XT应该是指向路由T里面的upload u r,请求这个service这个路由地址,然后呢,那如果成功,这是大小,这应该是错误,那请求这个data数据。
那这就是一个文件上传嘛,啊后面那就是追踪代码,所以说你就可以尝试着去请求这个地址,去拆个文件上传,啊这还有上传附件,这些信息都找到了是吧,那这里还有PNG呢,看类型呢,就是这几个类型判断看能不能走是吧。
这是看代码了嘛,简单来说就是从代码里面分析了,继续来我们下面我看下面看啊,然后呢这种呢就是说功能点,那么还有一点就比如说是查看他的什么鬼啊,星系的,那比如说像这个呢那么个冰的code,还有往下面看。
还有这个什么鬼,其他的呢比如说呢这个叫A阿里pay,就可能支付的pg,这可能是一些页面相关的,你就可以直接怎么样呢去请求这个什么哎,这是跑哪里去了,这,哦放到下面去了哈,未授权,这个是API清单。
所有的API的地址,这个是相关的啊,这里就是一些信息啊,四里面为什么这里呢就有很多这个地方,那你怎么后面再怎么测呢,哎也不用怎么测了啊,你找的这些地方啊,有的地方是这个啊,就拿这个吧,再来看一下。
再说一个,刚才那个是车上传点,他需要改码动,那么有一些可能就是什么,就是单纯的直接访问的,看到没这里,那就直接呢请求这个地址,请求地址,你直接就说你去请求这个地址,那你可以说这么请求啊。
对对这路由地址吗,他请求,这什么东西啊,但是要返回结果啊啊这个是我那个茶几啊,我把我吓一大跳,我以为真是未授权的,那我要查检查检自动解出来了,那这里变成个什么这个提示信息啊,简单来说啊。
接下来你要做的事情呢就是找个号,找个号进去,找好,进去呢针对这个上面的所有接口呢去访问,有些接口是post的,就post去提交测试,get就直接访问,就这样测,没有其他的了哈,那或者你登录进去之后呢。
会发现更多的地址啊,如果说你现在是游客,你能在游客里面去访问这些地址,直接访问到的话,那恭喜你,直接又挖到了,访问不到,那就是另外的一句话,对不对,除了这个之外,这是我想讲的一个知识点之外。
我们再给大家说一下啊,还有其他的,还有什么其他的呢,就是我们说的加紧密的事情,这个呢在小程序比较多,这个上面没有,唉这很尴尬啊,我看一下这里是不是加紧密了啊,随便登一下,其实就是说你在用户这个啊。
很遗憾,这不是加减密的呃,其实就是说你在用户登录和发包的时候,他那个数据包里面的身份他有加密,我看一下啊,我app上面应该有这种类似的产品,我在app上面给给他找一下,大家看个例子哈,GWP的啊。
包括一些都有啊,app都能找好,1。4。88啊,抓上来,嗯这连个安利都不好找呢,哎哎府里气候吧,老演员,老演员,观察一下啊,呃首先这里呢是我们正常数据包啊,我这里没有登录的啊。
是他正常数据包没登录一下数据包啊,好我们现在呢把小的先删掉啊,我们登录一下,啊登录了啊,现在看啊,是登录了小CD登录了哎,登录的时机到这里啊,我看一下啊,现在是登录状态,登录状态啊。
额我们来看一下登录状态啊,比如说我们现在来看用户的操作,这个人信息点一下好,这是他个人信息的地方好,这是那个麻的,这个数据包里面啥都没有哈,数据包里面这是啥data,成功了,这个里面的drivers。
然后这里有我信息看到没了,这是我那个星系是吧,那这是我的信息,看到没好,那现在呢你看啊,我如果测他怎么测啊,啊这个也说实话也没什么太大意义啊,你看他他这里呢就是没有加密,但是他有token,你看看是吧。
你就可以怎么样测了,你捡到测的话,你现在要不要发包,那你这里放现在呢就是原目录啊,他能看到这个用户的信息,然后你看这里有个id number是吧,对不对,大概是那个身份证是吧。
身份证在这里有这个什么卡号,什么鬼,然后你看啊,这个呢是那个token,然后这里有个C型是吧,那你看我把那个去掉拆一下啊,注意下,你看他还是有token的,我再把它去掉,哎这里就报错了。
所以这个呢就是个简单的车,他这有没有未授权的对吧,未授权的就是用户登录和没有登录,能不能请求到,那肯定一般都是有他那个验证呢,和其他逻辑不太一样,有的时候那他就请求这个信息,然后这里有编号。
但是你会发现在这个数据包里面,他是通过这个身份去再去调用这个信息出来,他并不是通过id编号,他这里没有编号啊,这里有个疑,这个drive已你知道是什么东西啊,我写个啊,他报错了是吧,咦他也报错了。
那就说明这个呢可能不是用户的编号,那么基本上啊这个验证就比较正常,就是安全的啊,这个呢就是比较安全的,就是因为在他数据包里面没有体现出来,哎这个用户可以修改的地方。
因为你能修改的就是这个cookie和这个token的,其他的都正常的,其他都是一些正常水泡,然后他这个身份里面呢没有,比如说大家如果说在这里啊,在这个下面写了个什么鬼,这东西呢比如说写这个东西是吧。
对不对,写这东西,然后呢你把这个地方id编号一改是吧,这这还有这种叫名字的是吧,比如说这个USERUM这个net name,他写这个东西的NENAME等于这个小蛇离,你们说这个身份证号吧。
这不是我身份证号啊,他妈的,这是我身份号玩的,这个呢小森林对不对,你把这改,比如说我改个阿米,对不对,那会不会去检查enemy行星呢,是不是,那很明显他没有,那说明这里改了没用啊,就说没有。
你可以把它加上去,车有的话就直接修改它,车法呢是这么个车法啊,我再看一下其他细报告有没有,呃这个里面不好吃啊,这个里面信息太少了,这啥都没有,那那用户生存信息都没有,这,这不好吃啊,这这这这没什么车的。
因为他没有写一些用户的一些id到里面去,啥都没有,这个测不了,你要测的话,无非就是测其他地方了,测他的那个什么鬼,前端验证,后端验证码就不是在这里修改删除值了啊,嗯我看一下啊,这里搜一下,那个私藏的哪。
把大脸关一下,先,你们说小这个什么鬼,测试小公主,小公主都疯了,怎么测呀,小公主疯了,走不了啦,啊他这个里面搜是搜不到啥东西的啊,基本都是与游戏相关的,我还是想找一下那个东西。
你要测那个还是要在其他接口上面搜,哎往下了,非要往下看有没有,这都是些打打你那些玩笑,需要私自下包裹啊,找个小一点的,来我们注册个,先把这个全部细胞删掉,重新开个代理,1。4是吧,然后这个是四八。
3y6,妈的什么鬼玩意啊,我关一下,我看看是不是这个问题,好发了,收不收得到啊,我看一下我手机啊,这收割了这平台都半次平台都没了,唉收到收到,好那现在呢我们把那个包装一下,太有用户了啊。
注册那个其实当时都要要抓,但是他抓了之后,他发不出去了,可能是有什么检测,来看到没数据包都抓不到,抓不到啊,看到没数据包抓不到啊,这个数据包抓不到,唉这也就上到我们题外花去了,这什么情况。
这应该是有检测啊,这要上到app的课程里面才行啊,这个水包都抓不到,在车都不能不能撤了,水王烧不到啊,你说这尴不尴尬,哎有了有了怎么回事啊,这他妈的什么鬼啊,这意思有意思没有啊,我还以为抓不到嘞。
你又没有啦,他可能是其他了哈,找不到找不到啊,没有又没有了,到时候把app那个抓包的一些什么绕过,讲完之后再看吧,这都是些乱七八糟的啊,这不是那个v app的数据包,找不到啊,他这里找不到。
他这里有检测啊,可能需要绕过一下,没有任何东西,这里,好这也可能是虚拟机问题啊,也可能是上面帧数检测或其他的找不到,啧好,那其实这里呢我们可以通过这个数据包啊,去看一下啊,那其实在很多情况下面呢。
很多小程序啊,或者网上可能会这种数据,你看啊,数据包里面呢就会有一些像什么的,这种id编号的那种加密值,然后呢再就是我们看到的这种类似的东西,你要解密这个数据,有的呢这整个数据都是加密的。
有的那就是针对这个某个这个地方的直径加密,那么你如果要测未授权的话啊,测这种水平有权的话,就需要对这个铭文呢八进行解密,那至于怎么解谜,就是要翻他JS文件,找他的算法,常见的如果你能实力衰。
比如说这里你可以认定它是M65,他如果不是M65,那就不行,如果是M65,那就可以,就是说这里他可能其实他的真容词啊,可能假如说这个案例,假如是123456的话,对吧,加速这里加密是M65。
它的值是1234123,对不对,你把它测出来了,是M65,你改成1234转和12312124,让我们去把加密加密好之后呢,再去发出去,请求根据你修改的地方,所以你刚才你们说的什么加密啊。
那个东西呢说白了啊,还是要在JS里面去找一个算法,把它理想出来,和那个登陆爆破一样的意思,因为其实就是说法送的这个值呢被加密了,发送这个值被加密了,所以你要把算法理想出来,看这个值里面写的究竟是啥。
比如说是用户的id值或者是用户的身份,用户的这个用户名写到里面,那么你就相应的把里面的值改完之后,再重加密再发送,再去测,加密呢就多了一步,就要需要解密,解密之后呢修改再加密再发送。
还有一种就是大家说的还有什么token啊,我告诉你啊,如果有toy的话,那基本就是几种测法,一种就是把TOK删掉,还有个就是把token呢,不管他这两个就是测他脱壳验证是不是安全的。
如果他的token验证是安全的,那你就不用测了,测不了了,因为他数据包就是唯一型了,你把它删掉和不管他,就是确定这个token验证就是能够服用,或者说能够把它去掉的意思。
因为他是一种就像是他token呢,就是一个逻辑上面验证的错误,你那还能测,如果他没有人逻辑上面的错误的话,那么你是做不了这个事情的,没办法的,因为搭了个脱体基础,本身就是房子这样子的测试。
所以你刚才有人问说脱鞋怎么办,就是把它删掉,或者说压根就不管它,就是正常吃了就正常吃,然后有算法的就这个意思啊,所以呢我就把写一下啊,简单基本上在实战中那个车法的话啊,这一组下几类,当然刚才提到的是吧。
一个是这个数据的,不是这个请求的,这个上数据加密,还个呢就是这个请求帮我改了这个脱皮,那托尼就是带这种身份验证的这种信息哈,啊其实就是主要是两个啊,这个呢就是我们说的啊,这个找一下,删号,然后呢。
其实最初啊关键的话关键就是我们说的啊,这是第一步要说的,找到当前和用户相关的这个参数,这是最根本的啊,关键地方,你要找到这个用户相关的参数名,后面的就是参数值,然后参数值里面呢这个X20请求数据加密。
超定向双反呢把原来的算法,然后呢再重新修改,好好保存,这个呢就是我们说的啊,就红点直接服用,不用就是不管他啊,用以前的那个东西,那在测,大概就这么个情况啊,测的话,然后这是那个车是那个未收呃。
这个策约权的啊,测未授权的,说白了啊就是尽可能的找各种各样的地址JS,你去翻那个项目里面说了,搞歌单要低时的去翻,这没什么太大问题,所以就是我们要修改参数的时候,那要这个地方找一个地方的去储蓄发包啊。
交换参数,还有一种呢就是我们说的啊,还可以自行添加,就是可以通过这个添加这个什么返回包里面的,这叫什么参数,去提交,这也是一种没办法的时候,就像我刚才说那个app一样啊,你给自己拉贴上去去发。
看看有没有生效,好这就是我们今天这个内容啊,那下节课呢我们,就说一下这个,下一课呢我们就说下其他的了啊,还有像我们说的这个什么数据并罚呀,支付前100就给我买充值的呀,还有前端验证的一些安全性,对不对。
下节课呢就在讲这些后面知识点啊,这业务逻辑的这个支点呢大概是吧,讲个,按这个情况来说的话,应该是要讲个七八次吧,七八次啊,像什么验证码识别,说是白了啊,这个东西在SRC里面没什么鸟用,也不会收这样的东。
除非是那种啊用户的验证啊,有些就是验证码识别,就是我们那个注册的时候啊,我说在发验证码的时候,那个验证码不是说的,我说的那个验证码的,不是说啊,你去登录的时候绕过那个验证码的验证啊,不是那个意思。
不是绕过验证啊,是验证码的什么识别还是什么滑块的,还有人呢老问这样问题,但这个SC不收这样漏洞,我们还讲一下啊,那几个插件在一些爆破上面和体校上面,批量测试什么有用。
这一期的业务逻辑漏洞呢比上期要多一些啊,多到哪里呢,就是我下去呢,我参考了一下隔壁的那个SRC的培训课程,它里面有呢,我把它加在里面去,也等同于呢是吧,你报了我的培训,想通了这隔壁几千块钱的这个技术。
而且是不是还可以学其他的,有些人不懂呢,他就一直认为是吧,隔壁的想隔壁挖漏洞,就像都是那个那个东西,只是有人把它分享出来而已,好今天就说这么多了啊,大家有问题就问一下啊,没问题,我们就瞎了啊。
像这个继续上业务逻辑的啊,这业务逻辑不好伤,他支点太分散了啊,不好归类,你像今天我们上个月船,你说它是产生在哪个地方的呢,啊用户界面功能的吗,是登录的吗,也是属于登录的啊。
也是属于用户界面登也用户管理界面的是吧,把后面什么购买的那又分类到哪里去呢,不好说,所以还是看代理节自己呢做好笔记。
P72:第73天:支付逻辑篇&篡改属性值&并发签约&越权盗用&算法溢出&替换对冲 - 逆风微笑的代码狗 - BV1Mx4y1q7Ny
我们看下今天的内容啊。
今天呢讲一下这个其三天的,关于这个支付逻辑的业务问题啊,这可能说实话一次直播那是讲不完的,有些直播呢,有些课内容呢也没有办法用案例去演示,能讲多少是多少啊,那字典还比较多,这个呢是漏洞呢。
主要是产生在这个商品购买,支付逻辑上面的一些东西,就比如说你什么开开会员呢,或者会员升级呀,购买商品呢,就凡是涉及到这种啊支付类的,那么一般呢都是通用的,这个支付逻辑呢简单来说呢你要了解的话。
首先呢我们从几个方面去了解它,就是你要把字典呢比较总结的比较好的话,那么你要对每个环节能产生哪些利用的思路,把它写清楚,除此之外呢,你还要针对不同的这个对象,和他不同的这个功能呢。
还要总结出一套自己的流程,简单来说就是说有一些通用的呢都能做,还有一些呢就是另类的,我们来先看一下啊,这里有四个方面,就是说关于这个字符逻辑常见测试啊,首先呢我们想象一下啊。
这个字符逻辑呢拿这个商品购买来去讲的话,你选择好商品之后呢,他也会让你去选择这个商品的数量,甚至有些呢还有什么这个套餐是吧,还有各种各样的套餐,然后你选择完之后呢,就会选择这个支付方式及配送方式啊。
就会生成一个订单的编号啊,通过对订单进行支付之后呢,就完成支付,最终呢就一个整套的一个商品购买支付流程,那就走完了是吧,在这个过程中的话里面有很多东西,就比如说商品里面的话,它会有一些商品的数据。
比如说商品的编号,商品的价格,商品的数量包括在订单产生的时候呢,优惠订单的属性,订单的属性是什么属性呢,就是订单不是也编号吗,他会有对不对,然后呢还有有时候呢你在支付的时候呢,还有什么优惠券呐。
积分呐是吧,有这种东西又会有折扣属性,那支付方式呢又有什么这个第三方支付,或者是余额支付,就是你本身账户的余额支付第三方支付,或者说呢还有这种啊呆呆字符是吧,就可以让别人帮你支付等等啊。
支付完之后呢还会支付状态,那其实就是说在每一个环节里面,都要考虑到这个安全性,比如说这个价格能不能篡改这个数量,能不能穿改订单在产生的时候,那这个订单能不能篡改,包括这个积分和什么优惠券。
这些东西能不能重复使用,能不能这个是吧,自己呢未收全都拿到别人的呃,这个制作方式也一样是吧,比如说他以前那是调用的哪个接口,而你这个时候呢把数据包替换之后呢,他这个结合呢换成其他的去了。
那自由状态的也可以改,但今天的我们不说字幕状态,因为这个字幕状态呢是属于修改,这个成功和失败,只这个呢是属于前端验证的一些安全问题,这个呢是下列课上的,是专门上这课的啊,因为这个支付状态还有什么密码呢。
找回状态,验证状态是唯一码事情,其实都是我们说的这个验证状态,就比如说你找回密码的时候,这个验证码是否输入正确啊,你的密码是否输入正确,把验证码是否发送成功啊,像这种逻辑呢。
它都是由这个状态值返回呢来去确定的啊,包括这个柱状态也是这么个情况,所以哪一个东西呢,我们把它称之为叫验证的一个逻辑啊,验证逻辑就比如说像你输入验证码是否正确,支付是否已成功啊。
你这个修改密码的逻辑步骤是否顺序完成,是否正确等等啊,这个呢是另外一个点,还有一个那就是我们说的这个修改方式,修改方式有很多种啊,这个替换字符这个指的是啥意思,就很简单啊,比如说你购买一个A产品。
它的价格是50块钱,购买B产品呢,它的价格是100块钱,你尝试用A产品的价格呢去触发B产品的订单,也就说你想用50块钱呢买到100块钱的东西,这个叫替换字符,因为你想想想啊,他是判断这个支付有没有成功。
但是他不知道你这个支付是对应哪个商品,它可能在这个逻辑上面呢有安全问题,所以造成这个替换支付呢,形成了一个低价买入高商品的一个情况,这个能理解吧,就说你付款成功之后呢,他只会检测你付没付。
而不会检测你这个付款是买的是哪个商品,就说我们用A产品的一个价格呢,去购买B产品的订单,还要重复支付啊,这也属于支付上面的逻辑安全问题,就是你购买成功之后呢,把这数据包再发一次,会不会又重新购买呢。
所以小额支付啥意思呢,还有什么复数字符,这都是属于算法上面的问题,就我们很清楚啊,这个什么叫算法呢,就比如说你这个账户里面是吧,有100块钱啊,你购买那个50块钱,他就会减去这个50嘛,是吧是吧。
是这个意思吧,然后你数据库里面呢就减去50,你这个个人账户上面编程,最后呢还要50块钱,这个时候呢他如果在这个算法上面是吧,把那个50改成个负以前,那就是100-50是吧,50是你的值,是你商品值。
100呢是你原有数据库的值,就是等于50,然后你再把商品价格或者是这个支付价格,改成-50,那么100--50就变成了100+50,变成150,自动的多了50块,对吧很多啊,还有一个就是说移除字符。
这又是啥意思呢,就在我们说的这个代码里面呢。
我们代码里面不是经常做这种数据运算吗,就是很简单的道理啊,就是我们代码里面如果说要进行这个数据换算。
就是这个价格和你本身这个金额的一个换算,我们都知道啊,假如我在代码中里面也声明了一个int类型,int类型的它有个最高峰值,对吧,有个峰值,还有个这个值,就说你实这个变量,这个变量有多少V是吧。
他是个数值类型。
它有多少V是一个封,就不可能超过这个值了,就是我们那个程序里面代码里面的规定的,你超过这个值,它会是一个什么逻辑呢。
你超过一,那么就变成了一,就很简单,比如说它的峰值是R7888字这么多,对不对,然后呢你改个R7,279哎,他结果了就变成一,就是重新再来过,等一吧就下次减去,它就变成了一,那就重新来过,他会有这种啊。
就是不同的这个这个代码中的话,每一个语言里面它都会有一个峰值,一旦超过这个峰值,它就会重新开始。
就是我们经常说的,你在学开发的时候,应该知道有些变量,比如说你是int类型,它就固定那个长度,那么固定长度就是说那个值呢不可能超过,那长度,超过了就像是要重新再运算了,还有一些另类的方法。
这个另类方法呢也是在隔壁是吧,搞SRC这个喜欢教的一些方法,也是他们称之为高端方法是吧,这就是什么鬼,无限试用啊,什么源泉支付啊,并发约欢呐,四舍五入半价购啊,循环利用优惠券呐,支付签约漏洞啊。
就这些鬼东西,那么呢我们呢都把网上找一些相关的案例,到时候给他看一下啊,其实都简单,说白了这个字幕逻辑那是最简单的,就说他们呢不会涉及到一些代码层面的漏洞,虽然说它产生的也是对方开发者。
那这个考虑不到位,也是属于这个代码没有验证,但是他这个东西呢和我们实际的这个人的,这种逻辑思维呢很相关,就是你不需要有额外的基数啊,你只需要有一个是吧,思路上逻辑上面的这个认知啊,这个漏洞那就能明白。
好那么现在呢我们就来看一下啊,啊后面呢还写了啊,关于他的修复和这个挖掘方案,那这个挖掘方案呢可以提一下啊,其实呢说白了就是针对各种数据包里面的,各种参数来进行分析对应和修改。
然后呢也是可通过在PC端测试,VPC端测试小程序上面测试,就是说这个支付的流程是吧,电脑上面的web看了,然后呢app里面有没有继续开小程序,看为什么这样说呢,因为我们知道啊,有些这个应用呢。
它可能就是说啊web那是一套程序,app的,又是一套程序,小程序,又是一套程序,然后你自己呢也要多想一下啊,你如果按你正常你自己的这个设计逻辑,你会怎么设计这个支付流程,那么你在这个过程中。
你觉得哪里会出现问题,那么你就在哪里去测试它的安全性,我们也是要根据这个实际对象来去测的啊,好那么现在呢我们先通过几个本地的小demo呀,本地的小案例呢,给大家看一下这个具体的流程啊。
把这个流程看清楚呢,简单学习一下简单的一些常见方法,修改完了之后呢,我们再来看一下这个经典的案例,这个呢是我们的一个小案例啊。
这里有个商品购买,我们在这里呢啊数据包抓一下啊。
两个啊,一个是针对常规购买的,还有一个呢是针对这个优惠券的啊,还有个真的优惠券,拿这个积分制的。
虽然是老演员,但是知识点呢有些小微的更改啊,这是老演员是吧,知识点呢我们还是正兴的这个删除增加的,好这个代理呢把他一开一开啊,你比如说像现在啊,这个是他的先注册个账号啊,这个注册账号我就不说了啊。
这都会注册了6000块钱是吧,那我也去购买它,那我点个正常购买呢产品这个6000对吧,然后选择自己的这个支付方式,好比如说这里一选择的话,把自己第一次写进去啊,好好的点提交订单。
这就是6000块钱嘛是吧,那这里也写上去了啊,他就会这个请求这个地方去支付,由于我这个接口没有配啊,所以那个界面就弹不出来,但这个不要紧啊,咱就进入了这个界面,那么现在我们看一下啊。
来比如说我们在刚才这个地方啊,我们在这个商品购买这里啊,我们先重新看啊,把这个数据包的给抓到,那点击这个购买的时候啊,购买的时候你看这数据包啊,这个数据包里面的,你看一下啊,来这个A代表叫什么。
go by就是购买是吧,什么ID的要起内蒙等于这个值,然后什么QTY等于一,PRIC等于6000g tap等于这个东西,PIC等于这个东西好我们大家思考一下啊,嘶首先我们罚的这里是加个是6000。
然后数量是一,这里呢有个叫PRICE等于6000,就说在他的数据包里面呢,这里已经写了,加个对不对,然后一数量一,那前面拿了个值等于一啊,就是这个叫Q6I等于一。
那这里我们可以把它理解为这里可能是数量啊,这个地方是这个什么这个这个什么啊,刘谦的这个价格呃,比如说我对数量进行修改是吧,好我们先这里呢把数量修改成二,是不是就变成R呢,然后放出去,那你看数量就变成二。
对不对,好,那这是个正常的,就变成1万2了嘛,好那现在呢我们重新来过一下,那我这里呢是这个乙对吧,那么大家想一想啊,这个产品只有一间两间,不可能说搞个零点几间是吧,但是我可以怎么样,那我就搞个零点是吧。
搞这么多年就搞这么一间,发过去,价格呢就变成六分钱数量,认为0。07,他告诉你啊,你这样买了之后,对方是罚也罚的还是不罚的,所以他只有零和一啊,你这个也是个0。0几,你说对方是罚还是不罚,是这个意思吧。
那对对数量的进行修改,因为数量的换算方式,那就是乘加个,还有呢就是对价格进行修改,对不对,那比如说我这加个6000是吧,我这边改成一一块钱放出去,那这里就变成一块钱了,单价一,那购买的时候。
那就是合计支付一块钱,对不,像,这个就是最简单的一个数量和价格的修改,的一个形式,就说在这个购买商品的时候呢,啊,这个这个数据包里面呢,有有什么又显示这个啊,价格和数量的修改的地方,你尝试性修改之后呢。
他的追踪金额由你这个数据包的那为准,那这个就是很安全的,就说它本身固定6000是吧,你把它改成六块钱,改成一块钱数量进行修改,那最终的这个付款金额就发生更改,但是这个订单呢时长就能产生对方审核。
或者说对方发货,他会实施这个逻辑呢,那是他们的事情,但是至少这个订单呢被成功了,正常来讲是6000一个啊,你花了六块钱或者花了一块钱,甚至花没花钱是吧,你购买了订单,而且成功了,对方是罚还是不罚呢。
那就看他自己怎么选择了不对,那是后面他自己对这个订单的验证逻辑了,那就不是我们参考的事情,但至少现在金额呢你是成功付款,因为正常来讲他只只接收6000的整数的金额,那其他的就是假的,是这个意思吧。
那还有一种就是我们说的这个叫订单的,这个什么对冲的方式,就说假说这个价格和商品呢,我们不修改它,这里另外一个手机也叫是5400,就说我准备两个事情啊,我就说先把这个订单给他产生起来,产生起来之后呢。
我不付款,最后我还不进入付款,我先把订单呢把它搞搞好,然后我再怎么样呢,再开另外的5000的订单,我让这个5400呢去付款是吧。
去充那个6000的这种,我们叫之为也叫替换支付啊,修改数量是吧,篡改加格,还有这个什么替换字符,就是以这个A产品加个订单,去购买那个什么B产品的这个订单价格,因为很简单的道理,对方呢是检测这个。
购买的这个什么付款成功的这个状态,如果没有考虑到,这个对应的叮当和产品的话,那这里呢就会有这样的安全问题,就是说他只检测这个付款的状态,就是你有没有付钱,但是他没有考虑到这个付钱的。
这个对应的是拿个订单的或拿个商品的,他没有这个东西,就只看了这个状态是吧,你会付钱而已,就是接受那个付款那个回调的那个值,这个时候呢我们就先自己呢生成一个A的订单,尝试性的在购买B的订单。
就在B订单那里面把它改掉。
这个啥啥情况呢,我们来演示一下啊,比如现在5400的啊,我们可抓个包,好这个包抓到了。
这个是5400的那个订单号,订单的那个东西啊,5400的名字叫做8米手机cs。
9S对吧,这5400的啊数据包在这里,就是这个上面这个整个这个参数啊,因为其他的他们都无所谓,其他的都不用改好啦,这里呢他在这里呢是来到了这个5400。
这里是吧,5400的啊,你看啊好就是这个显示的啊,正常的好,那么现在呢我们再来看这个啊,这个是6000的大米。
测试啥6000的六星价格的。
这是大产品,然后现在呢我们再进行一个抓包,好这个是那个流星产品的,把这个拿出来好。
大家看一下啊,这个数据包里面呢,你看到啊,这个这里有个6000是吧,然后这里是5400,这里是一啊,这个数量嘛,这个是6000,其他的基本上没有什么改动,但是你看一下啊。
我现在在购买这个6000产品的时候,我把替换成了替换成这个5400的,然后我只替换这个这个地方,就只替换这个数量和价格,这里其他我不改动它,其他我不改动,你可能说为什么不改其他的。
因为其他的是5400的商品的,对应的id和他的名字和他的这个图片,我不用改,我只改它的价格东西就是相当于说啊,我用这个5400的这个订单东西呢。
来冲这个6000的好,只改这个地方来,就这两个值啊,一个数量和一个价格还改,改完之后呢,把这个包放出去再观察一次,大家看到没,价格变成5400,产品变成大米才是产品。
啥意思呢,这不是6000吗,是不是变成5400了,其实说白了啊,还是刚才的去修改这个这个价格是吧,还是修改这个价格,只是说这个呢是偏向于这个数据包的,这个天下数据包这个什么,他的这个信息。
其实就是说它星系里面的其他参数呢,是代表的是这个商品,代表的是个商品啊,代表是这个商品,然后呢你对商品的其他值不要更改,对不对,你去冲这个其他商品或者很简单的道理,我不抓这个6000的是吧。
我把刘谦的这个东西呢给他放上去,那我用这个5400的让我购买这个5400的,我把这里也修改,改成放到个流放这个地方去啊。
你比如说像现在啊,那我现在购买这个手机3MS,这是5400嘛,对不对,我去购买它啊,看一下。
我购买这个5400的啊,这明明是购买的大米手机cs啊。
看一下,那现在呢我把它换成这个了,就是我把这个数据包呢给他替换成这个6000的,这个产品的数据包是吧,然后呢我这里呢就只改中哪几个地方呢。
就这里啊,除了这个这个这个地方不改啊,就是这个我们前面都换掉了,好我先把它放出去,观察下下页面啊。
变成大米测试产品5400,明明刚才购买的是大米手机,现在变成大米产品,同样是5400的价格,就是我没有改它的价格和数量,我改的是这个上面的什么产品信息,也其实这个呢就属于什么叫做什么产品充对付。
就说我是以一个价格方面的,这个是吧,比如说你这个我这个5400购买,我不甘,我不更爱你的数量,也不更爱你的价格,但是呢我让你这个指向的产品信息呢啊,给他换成其他产品,就是换成一个高价产品。
换成个大米的产品,因为我们捕获到啊,这个大米产品和你这个这个产品呢,区别就在于上面字行的id值啊。
这些字有点不同,所以他就是这个对应材,其实就是说刚才是更改数量。
更改价格,那现在这个呢就是属于叫叫什么产品,对冲更改产品是吧,对冲产品还有一种就是说我们替换支付。
这个替换支付是啥意思呢,那举个很简单的例子啊。
替换支付呢要来到这个订单这里好,我们重新来一下好。
我们先来购买,点击这个提交订单的时候,我们来看一下它的订单产生,这是那触发这个订单是吧,然后这是触发那个订单的一个情况,然后这里有一些这个相关的值和价格,好放出去,它就会产生一个这个啊。
这这这个呢就是那个订单的那个值呢,请求是阿里云配,就是我们这个支付宝,对不对,而你就可以把这个数据呢给他。
怎么样保存下来,那么这里呢可以简单写一下,这个是这个5400,8米手机cs的这个付款订单,结果是发过的地方,就是付款的那个那个东西。
就是一旦啊你这个包放出去,它就会弹出那个付款的界面出来,你看现在都还在等待我一放出去是吧,一放出去诶,他就来到了支付宝,由于这个接口我没有正确配置啊,所以这里面看不到,那就说这个呢就是刚才那个包。
对不对,然后现在呢我就再换一个产品是吧,换这个6000的产品,我来点购买,然后这个时候再抓个包好,这个就是这个就是那个另外一个产品是吧。
这是另外一个产品。
也就是说我可以怎么办呢,我5400那里我先不付款。
我先不付款,然后呢我再抓一个6000的包,然后我把5400那个购买那里呢,给他替换成-6000的,能理解吗,这是属于我们叫替换支付,就是一样的一码事情,无非就是说那个产生的点不一样。
就这里呢是五千六千块钱是吧,我购买的时候呢,它就产生这个订单的这个地方是吧,你等下那你就再开一个是吧,就购买这个5400的,然后这个时候呢就要5400的,这个付款值内是吧,那个真的指向那个6000的。
那么你付5400,那会不会就把6000那个订单给他付了呢,就是这个意思啊。
这个接口没有配置啊,也不知道有没有这样的安全问题。
是吧,这都是属于他逻辑上面的一些安全问题啊,这个都好理解啊,就说这个cm s呢给我们讲了四个点啊,哎四个点就是这四个点啊,就是我们说的这个一个叫订单对冲啊,这个叫订单对冲吧。
因为他们都属于这个替换对冲的意思啊,啊就是这个呢就是相当于说的这个,同样的这个什么好吧,这个低价,对应比如说是A是吧,5000是对应AA产品,然后呢这个6000呢对应B产品,这个时候呢。
他就针对什么购买A产品的这个请求名啊,修改这个产品属性,只将这个遗产,那么结果就是5400呢购买到了B产品,有这个概念关系,这是产品对冲,订单对冲呢就是很简单的道理,就是下两个单是吧。
下两个单单呢是5400和维三啊,这个东西下两个单,然后这个时候呢付款5400的,这个时候啊对吧,替换这个,数据包哎不是啊啊,这复古环境的替换数据包啊,讲那个B场景这个礼包。
然后那就是相当于那追踪那个5400呢,那打比他这个意思,啊对就是订单护甲啊,实际上是直接修改价格吧,怎么可能呢,这和加个没关系啊,我需要加个,我还修个毛,他本身五千四六千,我本没有中加个啊。
不要搞错了啊,这个能理解吧,其实都是一种替换方式啊,就是低价买高价,高价买低价的意思,这两个呢就属于叫并发替换方面的一,些安全问题啊,这两个呢就是很简单的道理。
他就是检测状态,那这个呢我就说到这里啊,接下来呢我们再看这个另外一个啊,另外一个呢我们数量上面那就不讲了啊,这个数量和什么价格上面的更改。
那就不说了,我们主要是说一下这个优惠券和积分制,给大家看一下一些新的玩法,优惠者和积分子啊。
首先呢我们在后台里面先给他看一下,第一年怎么说做假这个事情,那在后台一个针对一下啊,那这是他的后台,我们先登录进去,哎,密码不对了,哦对了,这里有个营销信息,营销这边有优惠券,还有什么满减送,积分管理。
限制人口啊,这种东西好,我们先看右后项啊,右向这里,那我们可以看一下好了,这是我们那个优惠项添加的啊,一边高为100啊,发放数量为1万份,每人最大领取一份对应商品呢,我们就是自己这里呢创建的商品是吧。
啊这个创建商品呢你安装之后呢,我自己创建的啊,代表的是我们那个培训价格是吧,安全服务这个商品对不对,然后在这里营销啊,营销这里呢我们就搞了个优惠券,加了个优惠券优惠权,这里那就是每人呢只能限制你一分啊。
大家看到了啊,是只能领一份啊,然后一份是100块钱,少100块钱,这个产品呢参加了这个,参加了这个优惠活动是吧,啊这这个情况那个设置啊,给大家介绍完毕了,那么现在呢,我们就来到这个网站的这个首页过来。
那么现在呢我们来看一下啊,这是我们的商品,对这个是吧,这是我们这个商品,然后呢你看一下这里有个叫店铺优惠券,100的一个优惠券是吧,我点击领取,他说你的领取呢已达到上限了,去看看其他邮箱好啊。
这里呢为了这个真实有效啊,我就先给大家这样子啊,退出一下这个用户,我重新注册个用户好吧,重新注册个用户,那我们就取个名字是吧,注册个好,那么现在呢就注册个用户重新来到这里哈。
购买,当然我先去购买它,这是我们的购买啊,写个地址。
随便写个地址吧,好这是我们第一子啊,你看啊,他现在呢没有使用,我加的是2800是吧,3800,对不对好,那现在呢你看啊,我这里领取物价能够领取到好,领之后,我们再购买,这里呢有个东西了。
使用优惠券是可以使用120,100就变成2000几,对不对好,我们再来点提交好的,2000起意是吧,好,我们随便使用这个字符好好,那这里呢就购买了哈啊购买了我们不管它了,啊啊刷,我们重新再来下单。
好现在呢我们再领取,你看他就说提示已经已经上线了,就是刚才的我不是领取了一次吗,领取应用了是吧,现在你看啊,我在这里他就没有这个优惠价了,是看不到这个右下的,没有了,你本身的这个加个里面,你才下了。
这里有个优惠券呢,他没了,那你暂时没有右下,刚才那右下已经拥了,他已经拥了啊,在订单里面呢,这个呢那他已经拥了,这订单详情里面可以看到啊,他已经用了这个优惠券,所以那个订订单优惠券已经没了是吧。
好那么现在呢我们就来看一下啊,这个优惠券是很清楚的,我们都知道啊,就和你使用红包一样,你点外卖的时候,他经常使用红包,他这个优惠券和红包概念是一样的,都是这种折扣营销类的一些手段,当我们知道啊。
这个优惠源呢会存在几方面的问题,一个呢是我们说的盗用问题,还有个呢是这个叫服用问题,就重复使用,还有个人是我们盗用盗用,这是可以说是自己掌握这个规则,知道那个优惠券的编号或者说兑换码,这种人属于盗用。
那我们先看一下啊,这个首先看第一个,这里呢我是领不到了是吧,好我们重新呢注册个账号出来啊,观察一下这两个数据包,好在这里呢我们先不用优惠券购买一次,抓个数据包,好把它放出去放出去放出去放出去啊。
好这个呢首先写个例子。
好这个呢是没有使用优惠券的时候啊,我们来产生这个订单bug的数据包,这是那个数据包啊,好我们来记录一下,这个是没有使用优惠券的一个数据包。
好那现在呢我们来看一下下面这个啊,使用优惠券呢观察一下两者的一个不同。
重新来到这边,同样来到这里,先领穿LINA购买,选择优惠券好,这里把书包抓到,这是使用优惠券的数据包。
同样一个商品看一下啊,两者的一个区别,我们可以把这里呢前面揪的一只把它去掉,好这个是使用数据包,使用右键和不使用右键的一个这个数据包,我们完成一下啊,哪里有不同了,大家看一下来。
就这个叫user cp得个等,你这个是个失啊,对不对,那四法呢其他的相同吧,和其他的对应的,就唯独这里那一个是零,一个是四,那我猜测一下五行不行,U行不行,七行不行,四重复利用U行不行。
现在说啊,那么现在呢我们再来测一下我这个商户。
看他还能不能这个使用一下的啊是吧,我就完成付款好。
那现在呢就是说我产生两个订单,一个是用了优惠券的2800,一个是没有运动效应的,那么现在我看我的右下是没有的,是没有啊,我们在打到这里,再群里他说隐匿已上线了,因为在后台里面设置过一个账号,只能领一次。
所以就没有用,对了没有用啊,我再进行改包看下啊,我把数据包在这里先抓,然后呢把这个购买的这个数据包的这个值啊,把它改成刚才的四,改掉就是替换成刚才使用这个优惠券的数据包,把它换掉对吧,我改完之后。
我们先放看价格变成2700,加个变成2700,对不对,那就说这个优惠权重复利用了,订单里面你也看到的信息呢,这边是2700,价格里面你看啊是吧,这个使用优惠下单。
这个好,刚才有人说换个其他值,那你看一下啊。
再来一下,再拧它肯定不行了是吧,再继续购买,按道理再抓个包,好这里是吧,刚才说改成其他值,改什么六啊,七是吧,都可以改套进去,那也是2700,其实啊我跟大家说啊,他这个优惠券就是一到1万。
他这个网站有这么个生存逻辑,那其实就也告诉我们。
在实战中呢,右拳他有两个问题,就是说盗用和服用,复用呢就是说要重复使用的问题,还有个叫盗用就啥意思呢,就是啊栓出这个幽鬼圈的这个什么鬼女,就比如说他发放给你的时候,他的id编号,比如说右下那个编号。
它等于一一拆出来,就是R嘛,下个就三呐,这四啊往这拆啊,那是最简单的,如果说是这种实是那种随机命名呢,你要观察的规律,或者说这右上有算法是吧,算法你相它一相它能不能换算出是吧,可行的,这个接好能理解吗。
盗用的话就是要根据这个优惠率人啊,优惠券的规律就是这个值啊规律啊,可刚才这个年代他是什么职业,是什么师,那应该就是说他是第四个进去的,给他一个编号为四,那五呢牛呢七呢八呢一直有没有用呢。
你把它替换这个值能理解吧,就使用这个用户先啊,因为我们都知道他只能一个人嘛,一个人只能领一次,那么你每一次购买少100,那不就是好养猫吗,是不是,这里呢就是针对这个优惠券的这个规律的来猜。
还有没有其他优惠券的编号,就是猜它的编号,简单来说好重复使用,就是说重复啊,重新的再把这个邮箱的再发包再用一次,看他还行不行,如果他在代码和逻辑中没有验证,这个右上已经使用过的话,那么重复使用是可行的。
对不对好,这是这个优惠券的啊。
还有个叫几分子的,还有个叫几分子的好,我们看一下啊。
好我们先来到后台,先把这个几分子来给开起来,开出来啊,都是这种营销活动的啊,就是会员送积分啊,这种情况啊,那这个集中管理警用管理呢,比如说一积分呢等于一块钱,这里我把它默认是禁用的啊,我把开了。
那启用就是一积分呢等于一块钱,然后积分是什么呢,会员租车呢就送一一百积分,就送100块钱的意思啊,然后签到送信积分呐,分享索性积分呐,什么点赞数性积分啊,评论送新积分啊,这些都无所谓啊。
就是我们呢把这个积分都给他激活了,大家看到了啊,一块钱就是这个100积分,然后我们刚才不是注册个账号吗,好我们注册个账号啊,刚才那个账号要登录进去好,重新注册好吧,用重新来的,重新再搞个账号。
重新搞个账号啊,我重新注册了,那么也就是说这个账号应该是有一一百个积分,他松的啊,就我们那个设置里面的那个积分啊,果然我这个租车呢他输了100积分是吧,赠送一积分,然后这里有个约还余额。
比如说我点一是吧,我约还一,他也会约还金额,然后我看我余额里面啊,账户余额目前是零块钱,然后我呢点这个积分,我约还一下啊,比如说我约还这个十好吧,约要十就十块钱,点击约换约还之后又要成功。
积分呢变成了90积分啊,啊月换来了这个十个是吧,然后这里他账户余额变成了十块钱,就是90积分加十块钱嘛,因为这个十块钱,那就相当于十几分月要还的嘛是吧,然后你购买的时候。
那他就可以用这个几分呢进行相应的这个兑换,比如说100块钱是吧,你用十几分,那么就少十块钱,就这种意思,大家都购买过商品的,都知道,不用多说好,那么大家看一下啊,像这种积分上面它有没有什么安全问题呢。
这个兑换流程就会有一些安全问题,它有个换算什么意思啊,我们可以看一下啊,在这个数据库的设置里面啊,从原理上面开始解释啊,你在隔壁去听这种SRC课的话,他只会教你怎么用,他不会告诉你原理呀,对不对。
高速的原理呢就是从数据库里面要看一下,看那个代码逻辑哈,我们看一下啊,这个数据库里面啊,我们看一下应该会在哪里,那个积分应该是在灰原里面,是在这里哦,应该在这里就是对应十。
那应该是这个这个对应的原理为八,那是不是对应的就是那个用户为八的啊,果然用户为八的,你UID等于八啊,这个数据库里面就是呢UID等于八的,它里面这个代表这个point就是代表的是什么积分。
然后这个是你余额十块钱,因为这里一旦更改就会更改,你不信的话,我给撕一下啊,比如我这里的改成填好吧,把它进行修改复制,然后刷新一下我的这个界面,他妈的什么鬼啊,这改了跟没改一样,这应该是这里啊。
这里这里还有个100的啊,这里还有一个白的,什么叫啪啪打脸了,我叫爸爸打脸啊,他可能还有其他的验证逻辑,不仅仅是有这个数据库制,我就说讲这个意思啊,在这里看一下好,我们就这里啊,先把它这里操作好。
大家看到了啊,这个是便于我们对这个知识点的理解啊,其实就是说呀很简单的道理啊,我们现在算一下这里啊,我约换几,除了我再月花十块钱,那我对应这里那就变成了余额变成R8啊,余额额这个积分变成了80。
然后余额呢就变成20,你看这里刷新一下,那这里就变成了80,就变成20,是这个意思吧,啊这个数据库能和它对应上了啊,好我们大家想一想哈,嗯我们想想啊,我约换的时候,我约换一次,他就会相减。
能不能理解我减,我约花一块钱,它就变成了79,那么就加一块钱,就这个意思啊,约换成功是吧,那我变成79积分了,这边就可以找21块钱了是吧,好大家想象下啊,这会有什么安全问题呢,这会有什么安全问题呢。
我们想想代码里面是怎么去运算这个值的,你先想一下这个值情况,这就是它的原理啊,隔壁呢是不会讲这些东西的,他只会教你怎么修改它,但原理呢你自己呢其实很好理解它的啊。
看着啊,我们怎么操作它啊,来,我写个什么一,他说积分必须为整数,那这个只是前端的验证,我可以这样子嘛,我抓抓猫对吧,额那哪个是这个参数值呢,这里有个乙,这里有个疑哪个啊,那看这个应该是判断类型的。
那这个呢是什么鬼,等个位移是吧,我把它改成了个一,改成一,那变成什么79积分啊,我一改方标换成功,再看积分变成80几分,啥情况啊,这啥情况,算一下呀。
你要学会算,那啥意思啊,那刚才原始是100积分是吧,你在那里,那你月换十,你说约换积分,它就变成99,对不对,那其实就是100-1=99,那个数据库里面呢就会这样去栓它,然后给它写到这里面啊。
然后这个时候呢你变成个什么呢,100搞了个减减一,那不就是100+1变成101了吗,加几分解二呀,就说他那个逻辑设计呀,他是这么个设计的,是不是,这其实就是说呀这么个设计,对不对。
那其实这种呢还有一种方式去玩它,还有一种方式是怎么玩它呢,那我举个例子啊,额他这里呢其实他还有一个换算,比如说像金额那里他去换算是吧,金额那里去换算对,比如说这个一是吧,你可以把这个补改复制。
你可以怎么样,后面继续加呀,你加个十,他这个结果不就还是什么鬼啦,109了呀,啊是这个意思啊,你还可以在后面写上你那个算法呀,或者你还搞个惩罚呀,因为他代码中呢他是有这个节收这个值换算。
然后形成这个追踪的结果,在数据库中去显示,你这你那你自己呢就是要根据,你觉得对方是怎么一个算法,对不对,你这个写个仪式吧,装个包一换是吧,我就你妹的是吧,直接给你十,对不对,一放出去哎。
这个马的积分就变成90分了,所以说你再换就看他支不支持这个算法了啊,就是看他支不支持了,你这里的再重新抓包再修改是吧,你这里的修改这里是乙嘛是吧,你这里呢就搞个这个一让他加。
再搞个加号XX不过他这里加的话就等死一,对不对,加的话就加答案为11,但是很简单的问题,假如在他换算的时候。
他这样换算的,比如说一积分对应一积分,它可能是100是吧,减一,然后后面有个括号是吧,就是你的积分加上你这个这个积分再这样去写,因为我们积分是一对一,导数可以乘一,所以它等于九九是吧,你想想啊。
你现在怎么算它呀,你是不是就这样子啊,来你这里是你自己控制的值是吧,你就搞个什么,你也搞个B括号,或者你也搞个对吧,搞个加号嘞,搞个减号,那一减嗯是吧,然后再搞个这个括号,前面呢这里加个括号。
这怎么算呢,是不是就是啦,100乘以它这个呢四-4×1等于多少,四四呢,这里是负负四-4+1个负就加四,那就变成110了,你自己呢要学会啊,就是说他不能改复制的时候,你自己呢再去想。
不就是他假设这里不能改复制,那你就搞这种情况啊是吧,自己呢去研想一下是吧,怎么让它成为一个家的一个情况,他前面是必定是减嘛,因为他是要换算减吧,哎你就搞个什么搞个这种东西进去,那你写进去的时候。
那就写这个值传进去。
那写这个字呢,就这是你写的,在这里面就写这么细是吧。
就说这是我的猜测,对不对,看看是不是这个情况诶,它传入进去了,本身呢它是这样去写的是吧,本身是这样写的,是它原本的值,你这里面有计划存这个东西了诶。
他就进行换算,就按这种逻辑去算了,这个具体要怎么写呢,你要去猜测去分析的啊,就这只是我个逻辑上面一个推推测,就如果说不能写复制的话啊,我这样去写,或者说我搞个除法都是可以的,甚至说我搞个这个追打值。
就是我搞些乱七八糟的,那比如我写个什么音,写这个东西过去,那他会是什么情况,那我也不知道,所以放不出去,他是约换成功的,变成了零,没有约化哈,写了个乱七八糟的,变成了个没有约换的情况。
那这里呢具体你还是要看待嘛,啊看呆嘛,那个逻辑是怎么三这个几分之怎么去减啊,怎么加的啊,这个就不是我们说的事情了,简单来说呢,从这个案例上面呢,大家看到的啊。
就是针对这种,有些呢是算法上面的一些差异性啊对吧,你自己呢要学会思考的啊。
这个好好理解这个积分对冲的这种思路,应该不难理解吧,这没有什么,待会咱们成的漏洞是吧,主要就是和我们那个数学逻辑一样的啊,怎么让这个递减的东西再变成递增,看看余额变动情况,余额变动情况说白了啊。
我们的不想说的,你要看这个,你看啊余额变动情况是对应的,他这里呢有个类型,这个类型还可以做文章,啥意思呢,你看啊,就是我们这个换算呐啊换算对我换算,我换算他啊。
那他这个叫s u p plus tape1,这这里是啥意思啊,哎这还有个叫sure id,你这其实都对应一个意思,啥意思呢,举个例子啊,有可能这个一对应的就是积分到余额,或者说这个是super id的。
它对应的是积分到余额,啥意思啊,这个数据包其实就是说你要玩LOL的时候呢。
你要关注到每一个参数的一个对应的一一,那比如说这个值啊,这个我们看出来了,他是这个更换的是吧,积分数就是兑换的这个积分书,啊就是你换多少,对不对,好拿这个看到那这里呢,像这个super id。
还有这个什么鬼,s u r plus top是不是又代表什么呢,还有个就是这个ACT,那这个呢还好理解些吧,这个SPUTE那就提交了一个值,那这个呢这两个可能其中一个就是什么不说了。
兑换极值就是说是积分刀余额还是余额,刀积分就可能是这么个逻辑,感觉是这样的情况,修改id应该也有可能是这个兑换逻辑,就零代表是几分到余额,一代表是积分到余额啊,余额到几分。
你要关注到这个每个点来自己去猜,你可能说我改一下试一下,黑河中女士肯定是改一下,试一下,是不是不是按照你那个顺序逻辑思考顺序来,白和中肯定就看大A码了,那具体这两个对应什么意思呢,你要看大A码分析的话。
看大码这个代究竟是几分到余额,还是余额到几分,这改不改都无所谓。
你改他有什么一,那就改改成一改一呢,放看有没有换算的是吧,这都是你车的啊,啊颠在这里呢,你看没反应啊,页面错了啊,说明这里呢,啊有点问题啊,还是那个七九他没有任何改动,那就刚才那个时间没有任何改动。
改了之后没反应,那你可以再改后面的啊,这我只说一个猜词啊,你在实战中都要去猜每个值的那个对一,你比如我把它改成零放出去,然后他兑换成功了,你看78,但是还是正确的嘛,那那个一和零就有啥意义呢是吧。
这个就要看那个东西了啊,要看代码决定了,我就说一个意义啊,你在实战中要分析每个参数,好这就是我们这个本地案例呢给大家演示的啊,从这个数量啊,价格呀,包括订单对冲啊,这个替换啊,优惠券呐,盗用服用啊。
积分上面的这种换算算法呀,还有这种积分的这个逆向,其实就是积分的互转嘛,就说他的上面那是只有这个什么,只能换算这个鬼这个金额哎,你能不能金额换算成积分呢,是不是就刚才那我们就把积分加上去了,就是吧。
就这个意思啊,好那这边是我们进行分析,我们来看一下啊,还没有其他呃这个字符逻辑的一些技巧呢,有的啊,这是讲SRC隔壁培训什么几千块钱的,多少钱的啊,就是讲这些东西爱你啊,我给他看一下,这个安妮啊。
包括还有像什么支付的方式的更改,都是可以的啊,啥意思呢,你比如说像刚才我们去购买商品的时候,来给他看一下啊,然后购买商品的时候大家看一下。
这东西没有讲,但是一般实战中这种东西比较少,所以说没有讲提还是要提一下。
好比如说在这里购买的时候,我们来看一下这个这个购买的一个流程啊,点击购买购买之后呢,这里产生了个编号,然后你看一下啊,这里是那个产生那个订单订单是吧,然后呢再放出去啊,这里呢有产生名单。
你看他请求是这个什么鬼东西,好好好,这里选择呢,比如说你选择微信是吧,点击微信支付好,你看数据包啊,我们看数据包点击确定之后,你看他的这个叫index s等于w a p p we cut,微信支付。
如果说这里能够调的是其他接口,我把这个值改掉,我改个什么哪里,可是吧,我说这个地方的能重定向,我把定向到自己的这个字符结构上面去行不行,所以这些东西呢都是属于说调换结果,就是啥意思啊。
就是业务到机到这里的时候,哎他会调用这个自身的结构好,那这个代表自身结构的一个地址的配置,这个时候呢你把它改成其他的,或者改成自己的,看看能不能调用,一旦调用呢,唉他看变成支付宝了。
意思就是说我更改他的这个付款的接口,就他重定向他自己的那个就是我们后台里面吧,后台里面有自己的那个设置配置,对不对,然后呢他如果说能够自己重定向的话啊,你重定向自自己打进结果上去,那就说自己付款给自己。
然后再给他返回这个成功的状态,或者说我可以搭建一个和他一样的商城,用同样的程序是吧,我把那个接口呢,他付款结果呢换到我这个接口上面去啊,我同样以同样的那个返回值给他。
这个就是看他自己配置那个支付接口的时候。
是否是吧,验证的完善,但一般这种事情呢,说实话啊漏洞比较少,而且很难测试,很难测试的原因,第一个是这种接口,现在我们搭建不了,因为打这种支付接口,说实话啊,现在做不了,他要企业。
而且现在都是打击这种洗钱的,所以这种结果很难的打击啊,然后这一块如果说出现安全问题,那说实话啊,那就是打高位了啊,虽然说他不会涉及到,会危害到网站什么鬼源码安全的什么鬼东西,但是你想想想啊。
这涉及到钱的事情,你钱跑别人那里去了,这个肯定就不是说小事情的是吧,所以这块的安全问题呢比较少见,也比较难测试,所以我没有说怎么可以提提它啊,但是测试的方法封面是有这种测试的啊。
就是把那个调用的时候啊,那个接口那个地址呢改成对外的,就是对外是你自己的啊,就是先付款的,跑到另外一个付款地方去了,咳好,我们来看一下这个实战SSRC里面,那些挖掘案例啊,这都是挖这个SC的啊。
再点进去看一下啊,啊举了这个。
五个妮一个是越权让他人致富。
这是啥意思呢,越想让他人支付啥意思啊。
其实也非常简单啊,看一下啊啊这是一个类,应该是一个app的,或者是个小程序里面东西好,这是个界面界面,这里呢啊他是一个积分的,去约换一些产品的是吧,采用这个积分的去约换一些个人产品的。
然后这个时候呢他做了个什么事情呢,就是圆环一个产品在这个数据包里面呢,他也找到啊,他还找了个什么信息啊,找了个open id,后面id呢就是个人的id编号,就像是你这个人的,他把他替换成了这个什么。
其他人的编号去约还这个产品,结果呢就形成了个什么,就相当于啊让别人的积分去替换产品,能理解吧,他这个就是属于言传的替换,就是本身呢他自己是没有这个几分的,他几分为一是吧,没有积分的,他去约换产品的时候。
知道自己的这个open id,要知道别人的欧派一对不对,那么在这里呢他去约上场,然后把这个像是说你在约会的时候,对方肯定知道是谁在约会呢,在数据包里面呢,它有个open id,对应这YY定义。
就是对象随便换的,他就把这个值能改成别人的,那么别人就说几分勾的话,那就越换累,所以呢他就用别人的积分帮自己变换,就这个意思,这里写上武汉市洪山区是吧,大家说一下谁呢是吧,写这个文章呢人是谁呀。
是不是小迪呀,其实说白了啊,这些字符逻辑啊,包括这些东西上面的安全问题,你会发现全部都是做了什么事情呀,都是对这个数据包里面的值呢,哪个修改这个修改什么数量的值修改呀,价格修改呀,编号修改呀。
产品属性修改呀,都是修改这些乱七八糟的,有什么是难理解的呢,反正一句话,就是你自己呢把你实际情况呢往往里面掏思路,往里面掏,你觉得这个参数值是什么信息,他这里核心点他怎么把思路转明出来。
这个漏洞是怎么挖到的,就是核心点就是他知道了这个open id是他自己,就是open id代表的是你个人的身份的一个id值,然后他在约换数据包的时候,发现数据包里面带有这个id。
那么这里就可以理解为约换产品的时候,他要知道你这个产品对象是谁约换的,那么他就以这个id值为准,这个时候呢他就把他自己的地址替换成别人的,所以就往系统以为是别人在替换,在约换,就是这个意思啊。
你说这有什么好难理解的,那啊这五被抓包了,理解呀,他这里就是一个思路点,就很简单,一个思路点,什么思路点呢,他怎么知道这个open id是我个人的这个信息呢,你看他前面写了很多东西。
他说从数据包里看看到open id泄露,这里泄露很多IP,为了方便我就只了截了一个是吧,他怎么看到呢,就是通过数据包里观察,观察到一些返回信息里面有一些什么open id,我们id呢就是打开id。
你说这个东西和什么相关呢,那肯定就是id嘛,就是肯定就是哪些东西的一个编号是吧,然后id后面呢有一个呢叫like name,Like name,就是什么名字真名,那涉及到名字,那就是用户啊。
那用户里面有个open id,你觉得这个欧派id是啥的,那肯定就是和用户相关的编号啊,啊刚好这个go啊里面,那就有这个月换的时候有这个O派id,那肯定这就是你用户的个身份的标识,替换它就等同于换了身份。
所以这个漏洞能挖到,就是对方挖掘这个漏洞的人呐,他已经把这个open id呢理解了,或者说他已经假设了你挖不到的原因,第一个是在数据包里面没有发现open id,第二个是open id,即使你看到了。
你也不知道这是啥玩意,就这么简单,这个逻辑漏洞说白了啊,没有考任何的一些安全方面的技术,或者说代码层面的一些知识点,因为代码层面的知识点呢,说白了啊你要理解的话,一般做安全开发需要理解就是搞修复。
你挖这种漏洞,你靠的就是一个逻辑思维,靠的是逻辑思维,就是怎么去,说白了你会不会好养猫,会不会买产品,一般会省钱的人,非常节约的人,他对这种逻辑漏洞他就玩的好,我举个很简单的例子,那我记得我就是这样的。
对不对,我比如说我晚上我点外卖点外卖对吧,我先去外卖上面看了一圈点日子产品,然后呢我这个点外卖外卖,大家都知道美团呐和饿了吗,以前呢我就在美团上面点和饿了吗,上面点我点完之后呢,我就看有没有红包是吧。
红包呢有各种渠道获得,一个是官方的,哪里是吧,还是在是活动,再是自己充值啊,开会员送的红包和,反正就是各种各乱七八糟的啊,以前的我就说哎呀,在这个平台上面有没有红包到哪个红包多。
我用上去看下价格划不划算,现在呢我还学会了是吧,看平台了,我还看平台了是吧,我是说统一价是店家是吧,在这个饿了么上面我搜收到这个商家的了,我再到美团上面再搜,我把它全部一看,看在美团上面点便宜些。
还是在饿了么上面点便宜些,然后呢我还做做这个红包上面的差异对比,知道哪些地方能领红包,还有一些网上,还有一些这个领了红包之后还能返圈,还能返那个提点,那是一些这种商家给这种官方的提供的活动。
就是为了触发这个外卖量,订单量嘛都是一种出法啊促销,所以说呢你自己有这些想法,而你就会知道哪些地方对不对,有这种有这种优惠啊,或者怎么滴,那么这个漏洞呢也是这么个情况,也是这么个意思啊。
我举这个例子就是说这个意思啊,你自己要思考他哪有什么鬼,这个地方的是吧,哦这个是这个越传的是吧,你们你们看,那还有人说这个什么安卓比苹果还便宜,你说是不是人人就是会薅养猫就会搞这种事情,还能叫死舍无。
这个呢也是一个新套路,以前都没有听说过的,但是现在的高端课程是要和隔壁SRC的,等价前去啊,我们也把他锁一说,你不要说啊,我这里没有案例跟你讲啊,啊隔隔壁讲的好啊,我跟你说。
没有人会实战去把一个漏洞给他挖到了,给你现场看,现场演示都是用PPT,或者说用这个图片给你说,给你讲,你还准备这个是吧,花个几千块钱,别人带你实战,你想多了吧,你,他就是看谁讲的好不好了。
你能不能听懂呢,你不要想着说哎呀,你怎么花2000多,隔壁7000块钱,8000块钱,1万块钱是吧,那个绝对比你家的好,那你去花七千八千去试一试,试完之后是吧,看是什么想法,这个呢是那个45度搬家工。
这个是个什么呢,这个是其实就是支付平台的一个配置,或者说一个信息的一个一个差异,啥意思呢,我给他说一下啊,你看这个以前别人提交过啊,提交补贴获得了场上的1。2K的奖金,就是1200的一个奖金。
如何操作呢,这个一般如果说你用支付宝充值,或者说用微信充值的话,他都会有一个失手,啥意思啊,就是你充值的话,他只能精确到分,就是0。0多少,不可能是0。00多少,能理解吧,就说你用这种支付宝充值啊。
或者说微信充值,比如说你充0。0001,那么它没有,它只有0。01,只能冲,这么前他就精确到分,没有后面的小数点了,是这个意思吧,好大家思想想啊。
然后你看下这个图片啊,是什么一个逻辑呢,业务在忽略分后面单位之后呢,比如说现在啊0。0019,我在网上,我要冲0。0019是吧,在支付的时候,由于客户端呢传递给这个第三方支付。
就是支付宝或微信这种微型呢,他也不识别这个啊分后面的单位,所以它就变成了0。01,它就变成了0。01,也就是说呀你现在就是用0。01,去冲这个这个金额,但是在目标网站上面呢,他是个0。0019或者0。
02,如果他四舍五入,那就是0。02,如果它原本显示,那就0。19,其实他就是借助了这个第三方支付的,一个到分的一个过程,能理解吧,因为支付宝和微信他只接收到分。
这里他不可能后面这个九呢还能给你再冲上去,他没有这个东西啊,要么0。01,要么0002,没有什么0。19,所以你冲0。019,这个订单拉面显示就是0。010。02,那就是0。02。
所以你看一下这个截图啊,这是那个挖漏洞截图,来我的这个上面的金额为1。04,大家可以看到可用于购买自营商品,啥意思啊,自营是哪个的,京东的,这是京东当时报的一个漏洞,获得1200的奖金。
从此你看他充的钱啊,来充了一块钱,充了0。01,充了0。1,结果这里显示的00020002,我的结果呢就变成1。0。4,应该正确的这个金额应该是1。02,应该正确定的是1。0啊,刚现在变成1。04。
为什么呢,就是啊我充值的时候我写的是0。019,然后冲的时候呢只能充一分钱,他接触的就是你在付款的时候,他不能精确到后面的小数点,所以他只能进到前面的,你付你创0。019,它也是0。01。
好不好理解这个东西好不好,讲完之后就这么个事情啊,这个1200的漏洞就这么玩的,京东的一个app里面一个漏洞,在当时的啊阿里面点玩的1000万。
它造成的危害就是能够是吧,重复多次。
这个金额就一直在后,好这个再说,并发提前签到。
大家都知道啊,在我们购买这个商品的时候,很多网站都有这种签到这种奖励是吧,你签到送多少积分啊,送个什么鬼东西,你反正就是和你这个有优惠的一个事情,挂钩是吧,大家想一想啊,首先签到是每天只能1000。
签了就没了,你不可能说哎我今天签了是吧,把后明天签了,后天签了,那别人还设计这干叼啊,那他妈的还涉及这鬼干嘛呀,他肯定是个限的,今天签今天的,明天签明天的,他就是让你每天来,每天都进来。
他才有这个消费的这个可能性,这么个逻辑吧,好大家想想啊,一种情况,这种千刀的怎么薅它呢,既然他判断时间,你想象下吗,时间一打开之后。
它对应假如今天是我们今天是8月1号啊,只要签8月1号的,有两个方式时间验证,你就直接把你当前的设备时间改一改一下,改成明天你再打开看一下,会不会他就是让你提示签名签的时。
所以你就可以一次性的把所有的签到给他签了,那么一次性的拿到签到的奖励,还有一种就是说压根就没有验证。
没有验证怎么办呢是吧,直接发数据包,就是说可能参数里面传递的是0504,然后来点签到之后里面有个054,你把054呢改成050050506,哎,那是不是又会把这下面两个签到呢。
这个呢具体要看数据包有没有这样的东西。
就是利用前导的那薅是吧,把签到奖励全部拿到,则也是一方面就是类似的所并发的意思,同时呢去不断发这个签到包,会不会把所有东西都签到,或者说如果说有这种验证的话,更改当前设备时间来看一下。
是不是以你这个当前设备时间呢,来对应这个签到时间,还有循环使用优惠券,这个呢说实话都可以在我们案例那去讲到。
什么叫循环流互相呢,你看啊他这个逻辑啊,先使用优惠券创建这个订单,好在这里好吧,先用户下创建一个订单,停留在字符界面,把订单关闭,诶,右下就返回来了是吧,大家都知道啊,那你使用右下那里创建一个订单。
哎你现在不支付了,订单关了,那右下就还是回来了,就说你没有还使用这个这个pd啊,然后呢这里说使用优惠券之后呢,再次创建订单,把第一个未支付的订单来进行支付,啥意思啊,那然后重新打开。
重新进入待发货的阶段,这啥意思呢,这个好简单也不难的呀,就是说呀你先用用权创建一个订单是吧,然后呢你把那个右权呢给他,先关闭右权,反对你了,再回过来了,这个时候你再创建一个订单。
再把第一个未支付订单进行支付。
那么就相当于在这个过程中,就在这第三步核心关键好,你可能会有疑问,什么疑问呢,来我们来看一下什么疑问啊,这第一步啊,先创建订单,关闭了哈,返回了是吧,然后呢你可以说哎呀,这里又用又想再创清单是吧。
第一个订单为支付,那你可能会问这个问题,说哎呀嘶那里第一个,既然这里要进支付了啊是吧,进支付了,那这个右上就没了呀,那何来id又想再创建订单呢,你要看一下先后顺序吧,先后顺序。
他先把你这个返回的订单创建了个订单,然后再付第一个款,啥意思呢,就是你的订单已经创建了,那个订单是减的金额,再把它关闭,订单重新再返给你,你再用这个订单再创建一个订单,再去支付第一个订单。
那么他就把第一个来了,那个右传单再重复使用,能理解吗,就是先后顺序,因为他到这一步的时候,这个订单在支付时候,这个秀权就没了,但这个右下呢又创建了个新的订单,那个新的订单呢像是有享受优惠券。
那不就是优惠券的重复利用。
就是让你销毁之前,我先把你搞搞定,你们说不是关闭了吗,关闭还可以把激活出来的啊,重新发货,关闭激活,大家看那个订单那个逻辑了啊,有些是关闭之后呢,能重新再发货出来,我不知道大家能不能理解。
这个这个订单的这个循环。
利用这个思路,那我们拿我们这个本地案例举个演示啊,你看,那这里我们看有没有用上的哈,好这里有个右上啊,我们连购买,啊这里有个右下是吧,我们要选中它了啊,已购买提交,好好等下改下好。
那现在呢我们看我的订单啊,就是个刚才也是有右向的是吧,你看我们现在看我右向啊,假设没有右下呢,这没有右上啊,空的,这个时候呢我把它关闭关闭了,关闭之后我们再看右选啊。
他又回来了是吧,然后时候呢这个时候啊我就再下一个单。
因为他回来了,我就能重新再使用这个优惠券了是吧,重新再来使用这个用回来,然后把这个优惠价呢给他搞出来,这个时候呢对不对,我再找到我的订单那里是吧,这是刚才已经关闭的是吧。
这个地方呢它关闭了就不能再搞了啊,那如果说有些网站这里关闭之后呢,还能继续是吧,再把开起来,那么这里就有安全问题了,能理解吗,他就这个逻辑啊,就这么个逻辑。
就先把你的优惠券呢给他释放出来啊,先给他释放出来,然后呢我再用这个地方呢再创建一个订单,那我再把第一个支付地址单给他支付,对不对,其实就是说第一个字定字符呢,想用上这个使用右户上订单也要享用右上。
好这个再来说这个支付签约的,支付签约的呢,也是SRC里面天天吹的一个漏洞是吧,什么冰发S什么圈圈,说的尼玛高端的要死啊,对不对,其实呢是个啥东西呢,大家都知道你有时开什么腾讯会员呐,QQ会员。
音乐会员呐,或者什么鬼乱七八糟的一大堆会员,他都会有个什么鬼签约的一个视频,就是说啊在那个支付宝微信上面付款的时候啊,签约一个合同,那么下一次下个月首任他帮你自动续费,说白了他搞这个前面的。
就是在你不知情的情况下,是啊你一同意呢,哎你可能下个月没注意诶,他你妈的都给你,直接是么,去飞了,对不对,就这么个事情,然后呢他签约就有个好处,你不签约的时候呢,他假如说是20块钱一个人。
你签约了可能就是十块就少一半,所以呢大部分都会签约,有些签约的不知道一签约他也没再把它关闭,导致呢过了一个月自动续费了,大家都知道吧是吧,你只要开过这种什么鬼QQ会员的,什么音乐会员啊,或者一大堆的啊。
都有这种鸟毛事情,然后呢这个前面是个什么安全问题呢,啊他是一个什么逻辑呢。
啊看一下啊,他说了,使用A手机登录A要开业务,在使用B手机呢也登录A账号的也要开业务,然后呢A手机呢点击进行签约,A手机支付完成之后呢,再到这个里面去解除这个自动续费,然后再用B手机呢再去支付。
再解除支付费,啥意思呢,说白了这个签约闹钟就是换了个手机,换了个设备而已,就是别人判断你能不能签约的一个情况,一个是基于你是不是他的签约对象,一个基于你是不是另外一个设备,那你可能说这有什么影响呢。
影响就是一直使用这个签约,导致这个价格呢就一直开下去,就比如说你签约了一次,你的时间是从这月8月号是吧,8月1号到9月1号是你的一个月的会员期,你再签约第二次,不是不就是这个9月到10月了吗。
你签两次就是两个月呀,但是你签约两次的价格是多少啊,就是永远的签约的第一个价格呀,因为我们都知道啊,签约他一个逻辑是吧。
你这个签约好之后,比如说签约第一个月是15块钱,那么后面正常续费二十二十是吧,你呢就是说相当于说你在这里啊,你签约一次的时候,两个月的这个费用应该是30块钱,对不对,就10+20。
但是这里呢你这个签约啊,你画了个东西就是10+10派,两个人,就是两个呢就80块钱,对不对,你可能说哎呀,那你妹的我先签约了,签约之后,我下个月我再签约,不也是20块钱吗,话是这样说。
但是你要想到这个签约不是什么时候都有。
而且他有一些用户呢,他没有这个东西,知道吧。
他这个前缘啊,说白了啊就是什么一个逻辑呢,那这是他逻辑正常逻辑,新用户优惠下单收到这个订单请支付,然后呢是吧,设计单充值会员啊,发起支付,非新用户呢就下单失败了,就返回金额,对不对,所以新用户就成功。
他怎么办呢,下单收到了订单支付界面啊,那然后再换一个手机下单支付界面,然后呢就开始其实就是说啊换个设备,不如把这个签约的呢答疑为成,你是另外一个人,但是你们都操作是一个账号。
就像是那个呢制完成之后解释签约,你再用一个手机呢再再开一次,有什么太大难度。
那没有什么太大难度啊,这里有解释啊,自保和微信同时打开签约界面,这子线圆线笔线切圆圆形,现行签成功之后,然后微信里面再取消签约,然后再到支付里面再点击签约,这个企业发现了成功续费两个月的低价会员。
因为签约第一个月的会员是最低的,这是签约漏洞,就凡是有签约的,像什么百度网盘的,还有什么鬼,腾讯会员的很多啊,都有,要你不签约,价格就正常价格,签约就少一些价格,然后呢,但是签约只有一个月的生效期。
就是那一个月是那个价格,下个月就正常价格了,所以他这个签约漏洞,就是直接怎么样搞两次或搞多次,让你开三个月,四个月,多个月的时候,价格还是一个月的那个倍数,就这个意思啊。
这个漏洞搜嘛当然收啊,其实就是看他怎么去判你是不是签约对象,这个意思啊。
好然后呢我们看一下啊,你比如说像现在我们那里有个真实网站啊,这网站你看啊。
这个交易的网站点一下啊,要注册个信息啊。
在哪里,这也是个紧急的啊,交易啊看一下啊,打个包1100的交易价格额,卖家支付一千一四十,卖家获得1100啊,总结了抽33块钱,抽三个点好,我们来点击点击法交易好,这里有个叫价格为1111。
然后白嫖白嫖就什么买入的金额,买入金额是11443,卖家的得到金额为一,中间的抽33,很简单的道理,因为你选择了这个什么卖家,全部手续费为三个点嘛,手续费就是光家自己收的。
然后这个时候呢我就把我买家金额我改成了咦,一把放出去,结果变成什么卖家船夫,我支付一块钱,对方收到1100,所以说呢这个东西啊你自己要看实战中的话,看各种数据包有还是没有,有的地方尝试修改,看对应关系。
你可能说在实战中连你妹的是吧啊,搞一些这种网站,连什么数量啊,价格都看不到,没有那个参数,那没有你就不找那个思路了呀,你找其他逻辑呀,找什么优惠券上面有没有问题,有没有优选的附庸,优选的盗用啊。
没有又想找积分,积分不行,找千刀千刀不行,再找什么签约是吧,就是各种乱七八糟的一堆,找简单来说就是我们这一束花啊,王不知道他的这个支付逻辑,说白了自己呢会不会猜,能不能把这个值里面的数据包。
里面对应的这个信息啊,拆除对应的地方,哪个代表是金额,哪个代表是余额,哪个代表是优惠券,哪些代表是什么东西,裁好之后呢,就来整真逆猜是吧,优惠券编号这个金额是哪个账号信息是哪个啊,很简单的道理。
像刚才我说余额选支付就是拆到账号信息是吧,你自己账户上面没有那个几分去约会,你把账号改成别的的,搞成别人的,那不就是别人在约会了吗,用别人的身份去约换,是不是,所以说这些东西呢都要靠想的啊。
我们这个讲是讲不完的,案例分析的,再详细,案例分析的再多都没用,欧阳你自己呢在实战中搞那么几次,然后那里挖到过有经验的啊,你就会知道怎么看了,连这个玩具是啊,我都帮你找了。
你刚才有人问说这个图片是从哪里来的,那你管哪里从哪里来的呢,啊我都说了,对不对啊。
你都没看到啊的。
我把这个写上去了呢,这还打码了,帮你打码都打了。
你是从你哪里来的呢,他不能告诉你啊,他马都打了。
上节课是吧,我忘记打码,那个打码那个身份证号码了,我后面都把打码了,泄露了一些人的身份证号码。
我就怕有些人乱搞是吧,安心的要死,我打后面那就重新打麻。
还没讲完啊,还有很多知识点啊,这个这个业务逻辑的啊,大家都喜欢听这样的课,原因是因为呢他和华东呢,瓦懂为什么喜欢挖这种漏洞呢,先简单好理解是吧,而且好多地方都能测啊。
不需要太多的一些这种代码层的一些知识点,这是大家喜欢的原因啊,也是说挖漏洞的,因为你直接挖了什么什么鬼猪路啊,那漏洞的太难玩了,所以就玩这些漏洞,这是SRC里面经常提起的一块知识点是吧,教SRC的都学。
都教这些东西,简单啊,易上手,又和瓦懂相关,哪个不喜欢呢啊今天就讲这么多了啊,然后呢这是我给大家写了一张整理一张图片啊,这还没写了一些啊,其实这个呢还是要根据实际对象,就是你要知道啊,你在哪些地方呢。
会碰到哪些情况是吧,商品本身的一些属性的价格,数量上面的修改导致的营销手段,什么优惠券啊,签到奖励呀,或者说无限私用是吧,有些这种产品的能适用,然后你要分析吗,那既然能适用,他肯定有个时间限制啊。
不可能说你妈的一直试用啊,要到哪点的时间结束了,那你就分析他是怎么判断这个适用这个截止呢,这个时间是是时间判断还是什么判断呢,对不对,你尝试找到那个逻辑把你更改,那无限试用不就得了吗。
这也是好养猫啊是吧,积分约换优惠券,说白了啊,就是你要去以一个,你是站在你设计这个产品的观念上面,你设计这个东西的一个观点上面,去分析对方会怎么做啊,然后呢你尝试性修改,这样子呢你才能挖好洞啊。
才能玩好这种类似的洞,呃其实任何字眼都是这样的啊,你自己下去呢要多想,多多考虑,课的内容是讲不完的,因为这里我们讲的知识点,都还是说从网上流传出来的一些这种测试手段,而且网上的文章的参差不齐。
一大堆的东西,那个说全了,这个说一半,那个说一半,你也没办法做到这个把所有字典都整理进去,而且这里肯定是有些人呢,还私藏了一些另类的一些挖掘技巧,他没有分享出来,因为它分享出来之后,你你你就能玩吧。
就这么简单的事情,所以说还是要靠自己的去玩一些这种东西,之后的子女总结一下这种是吧,另类的一些技巧,所以这句话说的非常好啊,你多去想象一下开发者没想的地方是吧,什么算法拼接。
就像我刚才说的那个积分的那个算法,拼接那些东西是吧,讲了个算法啊,什么复数啊,形成一个对冲的情况啊啊等等啊,嗯你了解好这个字符的整个流程之后呢,就要想啊,你把怎么去学它呢,就是把流程的规定好。
选择商品和数量的时候,哪些地方能修改是吧,然后在这个支付金额最终的换算的时候,有哪些东西会影响这个金额,优惠券积分是吧,哪个地方能又能影响这个金额,再融资金额上面做文章啊,订单产生的时候。
怎么这个让订单成功不付钱,就是更改状态呀,或者用低价买高价的呀,啊,这都是属于针对各个流程上面的,一些操作思考啊,就是了解整个购买商品支付流程的一个顺序,从每个顺序上面来想,哪些地方能够优惠。
哪些地方能够折扣,哪些地方能薅羊毛,再从哪些地方入手,在入手的时候,要想象一下对方,如果说检测他会是怎么个检测逻辑,尝试绕过,想好了啊,这个事情就好挖好,就说这么多了啊,今天课就讲这么多了。
我们下节课那就继续商,关于这个状态和这个什么鬼啊,就是类似的一些接口上面那些接口,接口状态的一些验证的,一些逻辑上面东西其实非常简单啊,就是我们说的这种返回包的更改嗯,会讲一些啊。
就像接口枚举啊这些东西啊,下节课的内容是哪些啊,这节课呢就说这么多了啊,大家看一下有没有什么问题啊,有问题就问。
有问题我就瞎啊,艺术挖掘咋整,一出挖掘是靠运气的,不是能够一定程度啊,艺术玩家其实就是看那个,就和那玩艺术漏洞一样,得搞一个那种打字,或者是压根就不是一个类型的值,给他看他是什么反应,他有可能成功。
有可能就直接崩溃等等一些情况,就像我们说的啊,数量那就是数字,你搞个什么英文单词进去啊,中文单词写进去,把它数量一替换,你看他是什么反应,对不对,这个要看对方的那个代码的处理逻辑才决定啊。
起码今天这个骑士金额发生啊,期重叠下这种情况该怎么处理,你问这样的问题吗,你说该怎么处理呢,就好比老问一些这种技术问题呀,就好比你在租的时候,别人提示你非法注入,你问我怎么办,那能怎么办呢是吧。
没办法搬难,你要分析这个地方它是怎么个验证,他说金额被改通是吧,那你不改它,它提不提示呢,不改它它不提示你改小一点,改大一点,他还提不提示,或是你在后面他是100块钱,你改个100。00,看他提不提示。
你要分析呀,比如说100块钱,你说改动呢,它提示这个提交是吧,好那你先改小一点,改小点,改大一点,看他提不提示,改大点,就是你想多肤浅,那谁不允许呢,你看你如果他也提示,那就说明一点了。
他就是确定这个值嘛,判定这个值,那么你想一下啊,我就拿这个逻辑来跟你讲,你自己挖这种漏洞要有思考的,你没点思考,永远这种意外情况你是永远说不完,道不清的。
你没有一点节约办法能力是没办法的,你说这种问题是吧,该怎么解决啊,我们这处理下思路,比如你发100是吧,你改了金额,你把它改成零二或一块钱呢,他直接提示这个信息好,那么现在啊举个很简单的例子,改100。
01改改小一点,改成一块钱好,假如说都提示了,那就说这个值它确定了好,那既然这个值确定了啊,那么现在很简单的事情啊,我改个100。0的,我改个100,100。01的,100还是100块钱是吧。
如果改了这个之后,它还是提示,那说明点呢它固定这个值啊是吧,谷五零这个值啊,那是对这个值进行交易的,对这个值进行交验呢,那你就要想想了,这个值他怎么交验的,他不可能你发送过去100,他就交易100。
应该是会有个什么呢,就是在它的当前的提交请求里面有个缓存,或者说他接收到当前浏览器或数据库里面,有个值,要和这个对应对应上才是真实的这个价格,你要想想那个东西能不能照顾了,能理解吗。
我说这个意思能理解决吗,说白了啊,你要想这个东西能不能绕过来,如果说你把你想的方法和你思路都解决了,都还是搞不了,那就说明他非常安全,搞不了,因为毕竟他有这个检测,就是他考虑的这种事情。
那么就是看他考虑的周不周全,你能不能绕过的事情呢,就不是说这个安那个情况了啊,因为他提示这个信息,就说明他考虑的安全,就是看他的验证是否能够绕过对吧,100是商品的价格。
那这个100加个是存储到这个浏览器里面,那个写上去的100呢,还是怎么滴呢,你能不能把那个浏览器里面那个商品,价格审查元素把它改成十块钱,然后你再提交,再把那个十块也和它对应上,这样行不行呢。
他是和哪个做对比呢,还是说和他后端的数据库里面,那个值进行对比呢,对不对,然后他对比的时候还分几种情况啊,是吧,是对比的类型还是对比的什么,对比着整个东西呀,就是我们说在对比值的时候是分类型对比。
还有值对比,还有什么鬼对比啊,就说100呢,说白了对于我们来讲,100点点0米它是相等的,都是100块钱,但是类型不同啊,这个是应用类型,这个是double类型,如果在代码中的话,它需成这个对比是吧。
进行对比,如果他只是取整去对比的话,那很简单,100的取整还是100,100的,这取整也是100对应对上了,你传参的时候,你这样去传是吧,那这样去传对不对。
要自己思考的啊,有些东西,那个CPF里面就有这种类似题目,就我们说那个鬼什么,两个等于三个等于那种判断,还有判断类型的,有全部的判断类型值,都判断各种各样的,啊不撸桑不会撸的,我都说了,科永远删不完。
内容也是永远删不完的,就像我今天说的这个科,你怎么讲都讲不完的,他很多一些细节点,你没办法把所有实战中遇上的所有情况,都给你解答一遍,都是通过这个课程,大家听了之后,自己有一些这个不同的想法。
然后呢你在实战中碰到了自己思考过了,那这个字典就弄懂了,你刚才说那个金额被修改提示,那东西那个就是那很简单的道理,我们想抓包的时候是吧,有些人一抓包,我们讲的时候抓的好好的。
然后呢他跑去实战时候抓了个包,炸包的题是一个什么鬼,检测到代理,或者说不让抓包等等一些这种情况出现的,不知道怎么解决了就没了啊,这就是相当于就很简单的道理嘛,就只学了DOON内容。
没有做到这个后期的分析,分析分析和解决问题的能力,很多种情况啊,你这东西是传授不了的,你讲再多的案例,讲摘东西没用的啊,讲不进去的,这都是靠你自己学完知识点,自己思考,自己总结的,讲不完的。
说的再明确都没用,那个巴普shot呀,什么字典文件,我发了很多次激活,我也说了很多次,网上一大堆的这个激活东西,还是有人问,还是有人不会激活,这就是道理啊,没办法解决的,你这个事情,知道吧。
我说你想学好这个课呢,只能说给你铺个路是吧,讲的更好,能让你快速的理解,想深入啊,想学好还是要靠自己呀,因为实战中情况太多了,实战太情况太多了啊。
实战的话就是无非给他提升的解决问题的能力,不是说实战就好,就实战,那你会遇到各种各样的一些问题,然后呢你就学习一下是吧,其他人是怎么解决这种问题的,就学习这种思路,这实战中的一些好处。
微信小程序直接给你个二维码,让你付款,不提交,在状态是不是就没办法了,不提交在状态是不是就没办法了,这啥意思啊,我真没看懂,这说什么不提交在状态什么鬼啊,北京男喜欢B,没听懂啊,你说的。
啧你们说的都是些那种测完之后的一些那种,要么是检测,要么验证,要么拦截的一些事情,我都说了,别人如果说考虑到是验证和拦截了,大部分都是没办法的,只是说有些地方呢你思路活跃,你各种车车速绕过了。
前几天还有人问,把那个返回的状态码把它改完之后呢,浏览器提示成功了,然后他说提示成功了,怎么我还是没成功,因为你本身就在自威呀,你本浏览器搞完了之后,要对方施以浏览器的结果为准才行呀,他不是以那个结果。
他你只是把自己浏览器改完,然后他成功了就好,有简单道理,他本身要运行一个失败的代码,你强制性把它改成成功代码,就你自己看到成功的那对方服务器,他不认你这个东西啊,这也是我们下节课说的啊。
其实前期我们讲的什么JS,对一些这种验证JS的看,安全开发就特别强调过这种事情,讲的第一课,既然是根据开发就讲过这样的事情,你看我当时把那个课讲了,我还举了例,私下里还是有人是吧,碰到不一样的问题。
但是还是一个逻辑上面的安全漏洞,那还是不能理解,就说明安全安全开发,这个你就完全没有吸收进去。
所以说还是那句话,伸头结束啊,非常安全,对不对,没有问题啊,大家看还没问题啊,没问题就下了啊。
P73:第74天:机制验证篇&重定向发送&响应状态码&跳过步骤&验证码回传&枚举 - 逆风微笑的代码狗 - BV1Mx4y1q7Ny
我们今天上这个74天了啊,今天呢说一下这个验证方面的一些逻辑啊,说白了那都是一些什么验证码呀,验证逻辑的一些资料啊,今天课的也不多啊,我们来给大家演示一下啊,具体有三方面啊,针对不同对象的呃。
主要呢是针对这种什么找回密码呀,密码的一些验证啊,这种类似的啊就是修改个人资料的验证,修改密码的验证啊,像这种地方的容易出现这种事情啊,一个呢就是直接针对验证码的突破,那验证码突破呢。
网上一般俗称的就是一种呢就是回显贤思啊,还有一种呢就是规律爆破回形显示,那就是说这个验证码呢在发送的时候,这个数据包里面或者说回形包里面呢,已经啊泄露了这个发送的验证码,导致啊。
你不需要知道目标的验证码是多少,直接的可以用这个数据包里面的来进行对比,这是第一种情况,第二种情况那就是验证码让它有个规律,这规律呢就是我们常见的是吧,思维还是牛尾纯书字,还是有英文字母。
然后我们都知道这个六位或者说四位呢,他都总共呢有一些这个可能性,比如说四位全数字的话,就是1万种,可能就是00009999对吧,也是说从1999的一个可能性吧是吧,1~999就有这个可能性。
就是1万种,1万种的话,如果在你提交验证码的时候,验证码的存活时间,包括提交多次不会出现拦截的情况,下面的话满足这两个条件,就可以采用爆破的手段,就很简单,我给你发送个验证码,验证码是1234。
这个时候呢你就开始从一一直爆破到9999,当爆破到1234的时候,那就对了,在这个爆破过程中,验证码呢没有失效,它没有过期时间,或者说在有限时间已经爆破成功,或者说多次尝试之后,网站里依旧可以再去验证。
不会出现验证码,或者说不会出现新的验证码,或者说不会出现是吧,这个网址错误不让再次提交,没有这个次数限制的情况,下,面是可以尝试性的进行这个报货的,这是第二种啊,这种呢是针对这个验证码的操作。
还有一种就是我们的验证目标,验证目标指的就是重定向用户和重定向发送,我们来了解一下,在一个验证逻辑过程中,就拿我们这个找回密码,或者说重置密码这个功能来讲的话,比如说从召回密码,重置密码的时候。
经常呢在重置密码的时候,我们都知道啊,重置密码肯定是有个对象重置谁的,如果说重置对象在数据包有体现的话,我们试着去尝试把这个重置对象呢把它改成,就很简单啊,比如说我现在重置A的账号。
然后呢我发送验证码验证码,我收到了A账号呢是我自己的,所以验证码的我能自己收到,收到之后呢,我在输入这个验证码的时候,那验证码肯定是正确的,因为我收到的就是验证码,我再把这个验证码呢去尝试去验证。
修改B的那个密码,就很简单,你以前呢是用A去重置A用户的账号密码,然后A用户是你自己的,当你验证过去之后,通过数据包的更改,把它重定向,从从零下修改B的,由于验证码是A的,你搜得到,所以你重置B。
那么那就相当于重置别人,其实那就是换人目标啊,就是因为验证码你突破不了这个手段,你就尝试去突破,换对象,就是那先让验证正确,然后呢再换对象,这是第二种,还有种叫重定向发送,什么意思啊。
刚才是换用户这种的,就是换发送地方,从此那个验证码的地方有可能是你的手机号码,有可能是你的邮箱地址,或者说其他的能不能修改后,让这个重置发送地方发生更改,发送到你指定的地方,这样子你就能收到验证。
因为我们都知道A35绑定的,比如说是一个QQ邮箱,QQ邮箱是别人的,你无法进入,也就无法收到那个验证码,这个时候呢,能不能把那个验证码的地址改成是吧,但是你的地址,那么验证码发到你这来。
那么验证码你都知道,你就可以重置了,这是第二种啊,就是根据对目标入手啊,刚才嘛刚才呢讲的是对验证码入手,现在来说是目标值,还有种就是验证逻辑,验证逻辑是什么呢,就是我们说的最常见的修改响应包,这种情况。
下面是建立对方呢以前端验证为准的,一种安全问题,就是说他如何去判定你验证码输入正确,或者说你这个逻辑是否正确的话啊,比如说你输入这个1234,这个验证码呢是1234,你输对了,它就会返回啊。
浏览器就会结束一个值,这个值呢就是一个正确的值,然后呢浏览器看到这个值之后呢,它就会啊认定你是输入正确,就会进入下一个逻辑,这个时候啊,我就说因为我不知道这个验证码是否正确,我就尝试改一个错误的。
改错误之后呢,正常来讲对方呢会返回一个错误的,然后提示是吧,这一步你没有通过,所以他一直会卡这一步,这个时候呢我强制性的让这个返回包呢,改成正确那个包,让它这个浏览器以正确的模式往下进行,就是说跳过啊。
类似的就是说强制性的让你正确,但是这个能不能行,表面浏览器都是可以支持让你通行的,但是事实上他是要与对方是否认定成功为准的,也就是说以浏览器那边提示你可行了,并不代表真实可行了,真不真实可行。
要具体看对方是什么验证,就是说他只是做了一个浏览器这边的前端验证,就说的验证代码的这个浏览器已经解析了,在上面验证的,那你可以突破到,如果说对方还是进行了服务端验证,就是你前端呢。
只是说你自己修改了一个自威的效果,看上去成功了,实际上对方服务端压根就没有理会,这种情况下,你就是突破不了的,所以说修改下包呢是针对于这个验证,产生在前端的,为什么叫前端呢。
就是说写了一些JS的一些代码中,而不是在后端语言呢去验证的是这种情况,下面这个东西呢,我前期在讲安全开发JS的课程里面着重演示过,就是收到那个返回状态码,或者说收到返回的那个数据包里面有什么特征。
来代表成功和失败来判定是那么一个逻辑,那种能解决安全问题,但是如果说这一种呢,他的验证既采用了前端,也采用后端,那么以后端为准的话,那就不行了啊,就是这种啊,还有一种叫做叫做跳过步骤,Your all。
啥意思啊,我们都知道啊,你在重置密码的时候呢,他分几步,比如说先呢给你这个啊要找谁啊,对谁呢进行修改,完了之后呢,给你这个修改了这个目标呢去发送一个验证码,然后验证码通过之后呢。
就进入这个重置密码这个选项,也说这里呢分为一步两步,三步四步,你可不可以直到第四步的一个URL地址,直接从第一步的时候来访问到第四步去,啥意思啊,因为我们都知道啊,你进入每一步的话都有个余额。
你能不能直接从一步跨到第四步,就是说我省略了中间的那个验证码的一个过程,因为那个东西呢我做不了,所以为了直接来了重置密码这个选项,就是看他有没有对这个整个验证逻辑,有一个清晰的认识,如果他没有腌制的话。
那肯定直接跳过,如果说有腌制的话,那肯定是没有第三步的完成就不会有第四步啊,这样子就是安全的,所以说安不安全具体都是要测的啊,好啦这是我们讲的这个整个情况,那么现在呢我们就以这个啊。
真实的这个演示的案例呢,去给大家去看这几方面的啊,在今天讲的几个方面,先从验证码的这个事情来说啊,好首先呢第一个啊,就是验证码的这个回显显示啊,回形显示呢我在这里呢以前都有目标的,后面呢不然太老了。
我也懒得去演戏啊,一说一级打出来的老演员,老演员老演员找了张图片啊,给大家看一下啊,那就Z张R了,这是一个网站,这里呢我们看一下啊,点到这个发送这里呢,它会发送验证码是吧,尝试着找回这个用户名啊。
发送验证码在这个数据包里面,我看一下啊,放到包里面,那你看这里呢发送验证码已经有回血了,啥意思啊,就说这个验证码呢在抓包的时候啊,对方在触发这个点击验证码发送的时候呢,在数据包里面的回血里面的待遇。
所以说我们能够在这个包里面看到这个验证码,那么也就是说你不需要知道对方手机号码,也不知道,也不需要得到对方手机权限,就可以得到发给对方的名字码,这个也是的,哎是吧,你提交验证码的时候。
那你提交验证码的时候,你提交的提交的是123456,对方验证码呢他提示不正确,然后呢他这里有写了一个什么581668,这个就是正确验证码,所以有时候啊,有些这个开发者呢在做这个设计的时候啊。
他就有这种情况,就是,在验证判断逻辑的时候,可能会把正确验证码了,在这个发送点击发送后说返回的那个响应里面,就是我们说那个返回包里面啊,有那个正确的,但这个呢说实话啊以前比较多,现在还是比较少了。
没找到,所以只能用这个图片来给大家说明一下啊,以后大家也注意有这个事情就可以了啊,然后呢我们再说这个爆破的啊,爆破这个呢是刚好嘞,有啊有这个包破。
所以我给给给他演示一下啊,这个是我们那个app那个老演员啊,拿出来给他看一下,这个能不能对验证码进行爆破的话啊,这个是要看对方验证码输入过多,和这个有没有存活时间这两个东西呢来决定啊。
存活时间就是说那个验证码呢可能大家都知道,有些验证码那可能就是一分钟是吧,一分钟不输它就失效了,他会有这么个逻辑,那么你能不能确定啊,你在一分钟之内呀,能不能爆破出来,这个很显然一般是暴露不出来的啊。
用验证码的可能性太多,一分钟你除非是搞那种兵法的是吧啊,可有这种情况,主要还是看他验证的次数有没有限制,就说你一直输入错误的验证码是吧,对方都还是让你这个继续验证,那这种情况呢是吧,就是可以尝试的啊。
如果说不是这种情况的话,那就不行,就是你多次之后,那他就直接不管了,就不会理会你这个包了,那这个时候就不行,好我们在这里呢,我们找到这个福利期货啊,我们看一下啊,他这里有没有这个逻辑啊。
好我们先把这个包的环境呢给大家准备好,然后在这里呢我们点一下啊,比如说这里面有个找回密码是吧,好,我们输入我们自己要找回的,这个对方的账号名字啊,好这输完之后呢,哎他发送验证码是吧,两罚,发送验证码哦。
他是访问成功,我们也看一下啊,这里呢他对发的包呢,刚才说四要是有的,这是发的那个包,这个是触发那个东西的,这个是下节课要讲的啊,就是一些接口方面的一些枚举和调用,也是一些短信轰炸机的实现原理。
好他发了啊,发过来了,发到我手机了,嗯我给他看一下啊,看下手机今年码是多少啊,好,那么他这里呢你可以根据你先自己注册个账号,注册个账号之后测试一下它,验证码的一个规律是六位还是四位啊,越位数越小。
那就可能性越短,那就成功性就越高,位数越多啊,这个数字加英文,那就可能性更多啊,由于这里呢我也看到啊,车的话是一个六位的纯数字,那就是说100万种,100万种可能是吧。
然后呢时间关系啊,我们爆破呢他没有时间限制,因为我这里呢就我发过去都已经过了一分钟了,那这个验证码这里呢已经来按钮已经重新开了,也就是说这里呢按正常来讲,如果说他要失效,现在已经失效了对吧。
所以说我没有发了啊,我直接告诉大家啊,我这个验证码是多少呢,给大家记一下啊。
是不是514901,我看下好,51404,这是我那个验证码啊,514056好。
那现在呢我给大家看一下啊,实战中的话更喜欢决定啊,我们点一下啊,那比如说我这里那点个5140200,从这里啊,我输这个啊,把包选中了,点下一步啊,这里呢就是你那个验证码。
这个包是把的code等于514千嘛,啊正常来讲的话,如果真实情况下的话,这里肯定就从六个零到什么,那六个九,对不对,好,我们这里呢把它发到这个include模下面去啊,这是上一次给我发的啊。
我没有再点第二次发送,所以说这个验证码呢如果说有失效时间的话,他肯定就早就失效了,把它这个地方的话选中当字典,然后在这边呢有一是纯数字,没有英文字母,那就是直接到这个什么就九这里嘛是吧。
那么就是多少种可能呢间隔为一啊,100种可能,那我们就测试一下吧,实战中的话肯定就是100万种了啊,就一直跑,等他的时间,那直接快一点啊,然后这个很快就跑完了,跑完之后呢,通过这个长度的一个对比法。
那到514056的时候,提示的返回包长度为1072和1082呢,有差距,看一下具体返回是啥,返回数据包为207折面呢返回是什么,206,那么应该这里就是514056,对不对。
就和我刚才给大家说的那个验证码,就正确了是吧,对上了哈,这个呢就是爆破的一个操作啊,实战中呢就是把这里呢要把改成是吧,改成这种,那么就直接跑,等着他跑啊,这个呢就根据自己的网络和带宽情况的,时间了啊。
一般的话估计也就100万种,可能也就是吧10分钟的时间就可以抛完,00010怎么用啊,就这么用了,他这就是从一开始啊,123456,它也会是零一,你不行的话,你就自己呀,你不会搞。
你就自己呢用脚本生成个支点,再把导进去不也是一码事情吗。
什么难度啊,那这种呢就是爆破这个包坡能不能包坡呢,是要自己先根据规律决定的,一个是他的可能性多不多,可能性只要说在我们能够接受的范围内的话,都是可以的,其实主要就是看他有没有验证次数的限制。
因为我们都知道啊,正常的安全的话,他就会比如说三次或五次,你提交错误次数过多,就不会就直接杀,不让你罚了,就是一分钟后再试啊,或者5分钟撕啊,30分钟之后再试,那这种呢就是安全的,那你这个爆破那就不行。
对不对,虽然说你爆破也可以,你再等30分钟或者10分钟,但是这个效率太低了,这不可能完成的是吧,所以说啊一般的就是没有次数限制,这是第一点,第二点就是说这个验证码呢没有存活时间,从我时间。
这个呢只要说时间比较短的话就不行啊,这个呢要自己根据实际情况决定的啊,这个呢就是针对验证码的这个突破,你跟他说还有没有其他的突破方式啊,你要像这样想啊,你要这样想。
如果说这里还有很好很好用的组合作方式的话,那网上的所有采用这种验证码去验证的,这个逻辑就已经不安全了,现在目前网上大部分你不管说是小程序,app网站也好,或者说我们现在市面上看到的,大部分的大厂也好。
是什么鬼也好,都基本上还是采用了验证码这个验证逻辑,你要找回密码呀,或者说修改密码呀,或者说更改什么逻辑呀,更改你信息啊,怎么样要验证数,还是以验证码为主,这个马如果说能够轻而易举的这个得到的话。
那也没有任何安全可言对吧,所以说啊这就是他唯一的两种方式,所以说做这两方式呢就是投机取巧啊,有些那是能够的,大部分的都不行啊,考虑到次数验证和不回血的话,基本这个验证码那是没办法去把它得到的。
除非是是吧,你听过通过其他手段,比如说像这个什么鬼拦街啊,是吧啊,或者他这个网络权限呢给他拦下来了是吧,收到那个水包了,那是另外的事啊,好我们再来说这个验证目标啊,比如说重定向用户和重定向发送。
那这又是什么逻辑呢,这里我都给他写很清楚了啊,比如说第一个同样用户啊,比如说我们当我们输入正确的账号密码,手机号码和短信验证码之后呢,他就会进入重置密码,最后一步也是我们输入正确的新密码。
当输入新密码之后呢,对方就会把这个新密码呢给他,以这个数据包的形式发送给服务端,服务端呢就以这个新密码呢去更新你的密码,就是你让你重新的把你这个密码呢给他重置了,但是呢你要想到啊。
那么一般网站呢他肯定是啊就是我们都知道啊,我们来看一下啊,他来讲这个例子啊,呃比如说在这个网站上面还是本地,多么啊,我连接找回密码啊,我这里呢随便输个地址,输这个地址呢,我点击发送,然后他会发送成功。
然后看啊,我这边的邮件,那就收到了是吧,验证码已经发到了,是1907哈,然后呢我点进去是吧,然后点进去呢,这里就会输入我的这个新密码,账号是不是就会输入我这个新账号密码,对不对,但是这两个嘶。
那么在这里呢他就只接收你的新密码,但是用户名他也没有接收呢,没有接受,因为他肯定就自呆了,就是他已经认定知道你在改哪个了,但如果说现在呢出现个逻辑,什么逻辑呢,就是我把这个用户呢给他重绑定,重理讲。
啥意思呢,就是我本身呢是修改A的好,我现在呢做这个实验实验来说吧,这讲是模拟不出来个现象。
我们先注册。
注册啊,这是直接给看一下吧,这是我们注册的账号密码啊。
该写到这里,然后他绑定的邮箱是这个邮箱,还注册个账号,这个账号是多少来着,这个,密码呢也是这个,然后绑定邮箱呢是这个1630号码,这是我们注册的信息啊,那个注册我就不给大家方便演示了啊。
因为他注册他要检测邮箱的啊,这个邮箱呢我也没有多的邮箱给他演示了,所以我只能用一个自己的QQ邮箱,和一个163邮箱来给大家做演示啊。
这里头给他确定一下是这两个事情啊,在数据库里面来看一下啊,注册的信息,啊这是我们的注册的账号和密码是吧,账号和账号和两个账号,然后绑你的邮箱给大家看一下了,一个绑定的是这个4725,一个是135对吧。
这是我们的这两个用户啊。
那么现在呢你看一下啊,比如说像现在啊我去找回密码是吧。
点击忘记密码,我找回这个四十六五的,那其实呢现在就是找我这个小李这个密码,对不对,找到小李密码啊,点击发送啊,这个是我配置的短信接口啊,这个网站短信接口的配置呢。
呃呃这个等下在安装包里面呢会给大家说的啊,好这里呢收到了,那他就发给我了是吧,这个验证码就发到我邮箱了,88,对不对,八个18对,那88,然后呢,你把这个正确的验证码呢给他输进去。
然后点下一步他是不是就去修改他的密码了,比如说我修改成123456。
123456,我们在修改之后呢。
我们先关注一下这个邮箱的这个密码,这里啊,他这里不是MD5啊,是另外一个加密方式,但是这个不重要,我们只看这个有没有更改就完了,点击下步好,重置成功刷新一下这里,那你下这里又发生更改是吧。
来变成这个C开头第几位了,好现在就可以正确登录那个账号密码是吧,比如我刚才登录的,找一是吧,密码123456好,他就进去了是吧,这是我那个那个那个,那个登录的账号密码对不对,好好先把它推出来啊。
好这是一个正常的一个自己修改自己一个逻辑,好,我们来观察啊,在他这个逻辑里面啊,我们关注下啊,首先呢我们把包给他抓起来,测的时候呢每个数据包都要抓的啊,不抓不行,好我们怎么测拉啊,我们把这个选装器啊。
然后凹这里呢点击发送是吧,给他发送啊,然后呢在这里呢我们先把包抓到,把这里的开一下拦截啊,点一下发送发送,这里呢就发送成功了是吧啊,这里呢也没有收到包,发送的时候没有收到包啊。
好这边呢又收到一个验证码啊,这是我们那个验证码,对不对,21713电视剧好,那我们就是刚才那个逻辑了啊,这个呢我们就不说了啊,那么原因漏洞产生在哪里呢,这个漏洞产生在哪里呢,看着啊,把代理开起来。
重新点发送啊,重点发送,我们关注一下这个包好,包接收到了,这是他去这个发包的这一个什么,发过去的一个数据包啊,就是这里那包一发出去,他就会像下面呢去这个邮箱呢,去发送这个东西啊,发送东西好嗯。
那么这里啊,我们呢由于这个比如说现在是这个用户。
那么这个用户呢就是这个用户嘛是吧。
就这个用户,好我们让它发出去,把它先放出去,好包发了,发了之后,下面收到这个验证好,我们就把它填写进去,填写的时候抓个包看一下啊,点下一步大家可以看到啊,填写的时候一秒就是这个以这个账号信息的。
然后呢717515的,这个时候我把这个地方改成什么,改成对象,换成谁啊,换成135,换成这个邮箱地址,然后变成163点com,啥意思呢,我刚才找回的是47165,4725是我自己的账号。
我现在呢就尝试应用我的验证码,因为这个验证码是我接受的,肯定是对的,我让他去和这个135帮你,这个时候呢再把包给他放出去,那么这里呢他就重置的是135的账号,那我再输入密码1234567。
1234567,那么我们先关注下身边135的这个数据库的,这个密码是这里啊,看一下我更改之后,这个地方是不是会产生修改点,下一步重置成功之后好,我要刷新一下这边的邮箱信息,密码信息,发现没跟发生更改。
说明重置了135,就相当于我用自己的账号4725接收验证码,去修改135的目标的一个密码,他的这个漏洞的逻辑是在哪里产生的呢,看上去表面是没什么问题的,写进去点击发送,发送完之后接收一个新的验证码。
就是你尝试修改自己的,在修改完之后呢,我们在这里写,然后点下一步,在这个过程中数据包里面抓包的时候呢,你看到就是这个邮箱绑定这个验证码,这个时候把目标一改,就是重定向,修改目标改成135。
那么意思就是说绕过你这个逻辑,这个逻辑是怎么绕过的呀,大家能不能听明白了呀,你一说听不明白,其实非常简单,就是他自己在这里设计逻辑出了安全问题,是一个什么设计逻辑出了安全问题呢,是什么逻辑啊。
大家明不明白啊,他这个逻辑出现在哪里啊,应该怎么设计这个验证逻辑啊,他是这样的啊,就是他先发验证码后呢,再去选择性的去修改,应该正常来讲的是一个验证码对应一个用户,就是我发过去的是对应哪个哪个邮箱。
那么是绑定好的,你不能再更改,刚才那就是线很简单,我搞了个正确验证码接收到了,因为我自己账户接收到了,然后呢,我再让这个验证码绑定一个我要修改的用户,那么就是重置了别人的,其实正常逻辑来讲的话对吧。
应该是要绑定在一起的,这个能不能理解啊,这个,能理解吧,逻辑也是应该能够明白吧,这个逻辑不难吧,逻辑不难的啊,就是先让这个重置的那个验证码呢,成功成功的时候呢,立马在那个成功的时候绑定一个也要重置密码。
那么这个漏洞呢就造成了是吧,任意用户重置密码,你就可以重置任意密码了啊,就是你注只注册个账号密码,把验证码发到你账号来,发完之后呢,立马就把验证码的绑定修改其他账号,那前提是有别人用户的密码是吗。
不然还是王源,唉没办法了啊,这个怎么讲也听不明白,这个不好说啊。
好垃圾呃,这个呢就说到这里啊,这个东西说实话哈,这只是逻辑上面的这个思路啊,可以说这类的课程是我们安全体系课程,最简单的啊,如果说这个课程呢你都听不懂的话啊,那是没办法,后面一些谁叫什么代码知识点啊。
这么代码的一些东西,那就更不用说了啊,这完全就是自己对待一些事情的,就是你自己啊,平常你在生活中一些逻辑就是这个事情啊,好我们再看第二个啊,重定向发送的一个情况,这个又是啥意思呢,哈这个又是啥意思。
我们都知道啊,这个有的呢是像你邮箱里面,比如说像现在啊我这个个人邮箱是吧,来有的呢是以这种这个找回密码,这个什么这个这个验证码发给你,那么邮箱呢可能是哪种情况,大家都知道邮箱的可能就是发个链接。
你然后链接一点是吧,哎就修改,比方是有这样的东西,还有啊发个重置密码的链接给你,对不对啊,然后呢你这种验证也好啊,或者那个啊他也搞这种事情,嘶那么大家都知道有这种事情啊,他就发个重置链接。
你然后呢发过来呃,由于这个邮件呢你各种语言在发送邮件的时候,由于这是网站,大家有没有学过网站如何去发送这种邮件的。
这个协议啊。
你比如说我用这个pp或者java去怎么去写,用这个网网web的一些API呢,实现发发发邮件呢,其实加pp里面呢他可以用这个control啊是吧。
利用这个呢来形成一个数据包发送对吧。
用它啊就可以实现一个数据包发送,然后发送这个信息给你,包括验证码或者说一个地址信息给你,对不对,就会有这种东西啊,这什么东西啊,哎好我们这里那就说一下这个第二种情况啊,就是从低印象发送。
什么叫从零印象发送啊,大家关注到啊,你比如说像这个D上面啊,这是他找回密码的一个情况啊,输入你要找回密码,我尝试找回艾特密的用户,点击下一步啊,然后呢大家看一下啊。
D上面呢我写了一个叫m e t host,192。16,8。43。15。
这啥东西啊,我先给大家看一下啊,清空NC杠LCP88号端口。
那么访问我的地址的时候,比如说我现在访问这个IP地址。
访问那个88,那么就是这里面会接到请求了,有人访问过是吧。
访问88请求呢来源于这个地方好,我重新真听啊,重新更听啊,换个端口,换成这个89好,那我呢地址就是IP地址加89啊。
监听好,现在呢我们点击这个地方啊,把数据包抓一下,哎这里没有点这个地方啊,重新把包装一下,好我们看一下这个数据包,这里啊,这里呢有个这个参数,这个参数是什么东西呢,啊他这个叫meter host。
就是目标主机,我把它写成这个地址。
89,这个是你要重置的信息,重置enemy,那这个是啥意思呢,就是说如果数据包里面啊,你点重置之后,它会有这种类似的地址,是啥地址啊,其实就是重置发送地,比如说重置密码,他会发送给谁,发到邮箱。
还是发到一个API接口,就是这里呢有一些这种远程地址的一些信息,尝试性把这个参数值,改成你自己的这个IP地址的信息,然后把包给他放出去。
这个时候我们关注一下这面有没有介绍信息啊,有人访问过哎,啥都没有啊,等一下啊,重新来一下呃,换个九零端口吧,换个九零端口啊。
重新来一下啊,刷到这个水报,然后呢就把刚才那个哎哎,水包呢跑哪去了,抓抓抓把这些莫名其妙的一些东西都抓到了,哎那个笛子这个东西跑哪去了呀,鬼东西呀,真是,刚才那个第一值嘞,把其他小。
啊低星期没法写上去啊,这个是那个my host,我们把它写上去吧,别在这写,这个呢是他有这个漏洞啊,实战中的话就是观察这个参数值里面,有没有有没有这种东西啊,就是有没有那种端口信息啊,九零好。
就这个东西啊,就是说我们这里呢是他有这个漏洞,强强加上去的啊,实上的话他本来数据包里没有这个产生,但是呢他是他这里呢我们知道有这个东西啊,你实战中的话,你是不知道有这个参数值的啊。
石家庄就是看这里面有没有这种信息,就是说在找回的时候呢,这个数据包里面有些参数值呢,指向的是外部的一些地址或是外部的一些链接,你尝试性的把这个链接的,改成一个你自己的地址,就是你那比如说我的监听九零的。
就把它改成这个啊,那么时不时他会把这些信息发到这个地方来呢,好我们就给进行一个放出去。
好观察一下这边啊,然后结束一下,看看这边信息整理啊,有没有接收到这个九零端口的一个防火信息,好等他这个结果啊,看这里看没了。
收到这些信息了,这是一个什么,您的网站密码重置请求已经得到验证,请点击下列链接,输入您的新密码,再就是那个类型,那这个东西大家应该都很清楚,这是一个什么东西啊,这其实就是一个。
我们说的那个重置密码的一个链接,大家应该都知道,有时候找一些这个密码的时候,那发给你的时候就是这种重置链接,打开之后呢,再来重置密码,这种也是一种验证,是不是啊,就说其实呀对方这个网站呢。
就是有时候呢在重置之后,他就会向你这个用,就像是你这个用户的绑定的邮箱,或者说绑定的这个什么这个手机也好,它就会向这里面去发送,如果说在抓这个数据包的同时,你发现在数据包里面有那个绑定的那个地址。
那这个时候呢你就把他绑定修改成你的,就是让他把这个重置东西重重定向,和刚才那个是一码事情,一个原理,刚才那个那就是先验证通过,再换成别人的,重置别人的信息,而现在这个呢就是很简单的道理。
先想办法重置别人的,然后呢重置别人的时候呢,他会发送给别人的这个手机或者说邮箱,这个时候呢通过数据包里面的修改,让他重置发到你的地方去,所以说他攻击的对象不一样,但是原理是一样的。
都是属于一种重定向的操作,是不是啊,但是前提条件是对方接受你这个职,并信任你这个值才行,能理解吧,至于他信不信任实验才知道啊,说白了啊,这所有的业务逻辑方面的安全问题,全部都是在数据包里面产生的。
数据包里面的参数值比较多,尝试性的对各种参数进行修改,来达到这个业务逻辑的倒钩,所以说任何用户输入的东西都是不安全的,这句话呢就是这么个来由的是吧,永远都不要相信用户的输入,因为用户的输入呢都可以更改。
一旦更改之后,以他为准的话,那就会形成各样各样的安全问题。
好,这个呢就是我们说的这个重丁香所导致的这个,安全问题啊,好啦紧接着来了,我们再看这个验证逻辑上面的安全问题啊,那这里呢又要请我们的老爷们app真实案例了,好吧,这个一个呢是修改响应包是吧。
来这里呢我们来看一下啊,这个响应包的修改呢实验完之后呢,一定要验证是否成功啊,不是说它上面提示成功就成功了,就一直喊666是吧,以前的那个老袁呢是能够成功的,现在呢被我磕的讲了一次两次三次啊。
不知道是谁啊,还给他给提交了,结果别人把他修复了,搞得我现在讲课都不能,怎么都没没有按理讲了,以前好多案例我在课上讲啊,讲完之后呢都修复了,哎呀不知道啥情况啊,哎这个老演员服务期货以前就有这个漏洞啊。
以前都能修改成功的,后面都修改不成功的,不知道谁提交的好人还是多呀,对不对,好人还是多啊,我们安全什么有责任感,大家都是有责任感的,看不得一点漏洞是吧,有多种我必须得提交我。
我为我中国网络安全是我我发展做贡献呐,我容不得你撒子,我们来找这里呀,来看一下啊,点击这个登录这里啊,比如说找个密码是吧,我这里输入我要找回的这个密码是吧啊,假设我要找这个人的啊,找这个人的。
由于这个人是我自己,我就假装我自己,那不是他是吧,然后呢验证码了,我也不知道给它进行发送,发送完之后啊,我们先自己最好的情况,下面是先自己用自己的账号做测试,用自己的账号做什么测试呢。
做一个完整的逻辑测试,啥意思,因为你要把他整个包都抓到,就是先啊我先模拟自己啊,是自己的账号,然后呢,我把逻辑呢数据包全部做到594108,把鼠标全部抓到啊,点击下确定好,它就会进入验证成功,好。
进入这个重置密码,这里的好,然后呢,我就是吧,输入这个正确的账号密码,对不对,输入要设置到秒点确定,还有什么格式不正确啊,好密码重置成功好,那现在呢就完了啊,这个逻辑就完了好。
那么现在呢我们就来关注一下数据包啊,在在这个正常的逻辑里面啊,我们先把地址一塞,因为有一些乱七八糟的例子啊,好这个就是啊应该是那个验证逻辑啊,你看啊这个应该是那一个叫user ga呃,如果说实战中的话。
你最好是呢不要看历史包,就是直接在这里拦截,看这个是最好的啊,我们直接还是把这个过程走一遍啊,怕有些人不知道,这个每个拿个报告是哪个包是吧,这个有乱七八糟的什么微信的,因为我开了全局代理,所以在这里。
那就很多一些其他的数据包都来了啊,就是比如说我电脑上面正在开的这个文档啊,这个数据包都在里面啊,这些乱七八糟的啊,啊现在呢最好的情况下就是开暖机啊,就是你操作的时候呢,你把蓝开起来,然后呢你在操作。
比如说现在重新点忘记密码啊,这就是那第一个是吧,第一个包就是忘记密码的包是吧,我给他发到这里来记录一下,好把它放出去好,现在呢就来输入扫描号码,好点击获取啊,点击获取啊,然后密张密码了,输了再来了。
然后呢我们把这个包装一下好,这里呢我们来看一下啊,输入验证码,输进去之后啊,我们再抓个包,还是我们提交验证码的啊,我给他发到这里来把它放出去啊,或者说这里大把他这个进行一个提交,放了好,进入到下一步啊。
现在是新密码了啊,那么有这几步呢,我们可以看一下啊,数据包的一个情况啊,呃刚才这个呢是那个找回页面那个验证码,那个包,然后,下面呢来把地址记录一下啊,这是第一个,别放这了啊,第一个。
这是发言证码,应该是啊,这个是应该是发言证码。
那就是一个叫fight back sam s m s在外移动嘛,这个是第二个就是每一步的数据包呢,你做好个记录,这个记录呢,就是能够帮助到你对它整个的一个理解啊,怎能理解到这里就完了啊,就是这四步嘛呢。
1234后面的也是这四步啊,嘶那这里呢我就不管他了啊,我们来关注一下这边啊。
我看这个几个包,我们来做一个简单的说明啊,每一包装好之后呢,都要做实命啊,这个呢就是应用这个找回密码一个首页,这个是拿到第一个数据包,这个呢就是发送验证码包是吧,就是点它之后,那就呢发送你这个目标账号。
然后就是输在验证码,那验证码就对应上啊,发的一个东西好,这个呢就是验证你一步就是验证你码,你这个什么输入的这个验证码是否正确,就是验证,验证码把数字放进去,改一个数据包啊,最后一步呢就是这里啊。
就是把这敲完之后呢,就是你重置密码的数据包,这是重置密码,数据包,就等这个密码输到他有四部啊,呃先呢进入进入,没问题好,那么呢就显写信息,发送验证码,验证码发完之后呢,再看验证码是否正确。
提交的值正确之后呢,就进入到重置密码,然后你再写自己的重置密码啊,他就重置了,对不对,好问下大家啊,从这四个包里面。
大家觉得这里啊,我们可以看一下数据包的回旋的一个情况呢,这是第一个综合逻辑,这个是呢进入页面返回的是状态码200啊,这是它返回的值啊,返回的一定要看啊,返回200好看,这个发送验证码乘发送验证码的时候。
发货的也是200,然后验证验证码征途正确,返回的也是200,第二步防火理解是这样的,所有因为我刚才操作的数据包都在这里,我操作的是一个正规的正确流程的,一整理下来返回都是这样的好。
那么现在呢我们关注到啊,我们如何修改响应包来实现这个效果呢。
来我们来看操作它啊,比如在这里我们重新来到这个界面。
点这个操作这里,那我现在开始抓包啊,那先把这个包放大啊,1634点击发送好,他发了,然后呢这个发送验证码,假使我不知道这是别人的账号,我要重置别人的这个账号,我不知道验证码是多少,我随便写,咋知道。
明明是六位,我故意写个五位是吧,这明显就是错的,输都不对,那怎么可对呢,好吧,那么现在呢我把包抓到,先提到这里,我点下一步好,这是我要发过去的是吧,验证的那个代码。
然后呢这里有一个选项叫dual export,就是respond to this request,啥意思呢,就是返回包呢,哎返回包来到这个请求这里来,这个呢就是说让这个返回的这个状态返回报。
就是说这个数据包发过去,他只抓请求的就是浏览器啊,模拟器只抓请求,这个时候呢你把这个零件选中,让放回包里,也经过这里反回报,就是我们这里看到的这里啊,那就这边的这种东西叫respond啊。
我这里呢就这里再设置一下,点击这里,然后它返回包呢又走到这来,点击方发出去啊,这个呢不是返回包啊,你不要自己呢,有时候呢出现乱七八糟的暴力,你这个也搞错了啊,这个明显就是我其他的一些程序触发的。
不管它啊,这个也是的,你看这个浏览器遇到地址就知道,这都是一些其他的啊,这个应该是吧,你看他扣的那就变成两百两百零六是吧,然后这个时候怎么办呢,找到刚才我们那个逻辑的,刚才那个逻辑我们看下请求地址。
请求地址是什么,这是那个输验证码的。
我们看一下刚才那个输验证码,应该是判断验证码是不是正确,是这个包啊啊这个端的这个包对我这里。
那就找到刚才成功的那个地方,弯这里把这个地方的话一改复制,来看到没把它替换掉,甚至说我可以把整个包都替换掉,就这里粘贴图纸,如果说你怕有不行的话,你可以整个NF啊,返回这个了,返回两。
然后再把它点这个啊,点这个叫RESPON,就让它放出去啊,不要点这个抓了啊,抓嘴把你带丢了,点这个啊,我们来关注一下页面,这里啊,这边肯定是错的嘛,哎方那他说验证正确,进入到重置密码,这来了是吧。
就是如果说这里进入到这里来之后,接下来我们再输啊,A123456啊,随便写个招密码好吧,叉小叉123456,因为他是大小写组合的啊,你不要搞错了啊,有时候还要把这个东西再记住,有时候你这个密码是做了啊。
好我再点这个呢,点确定好,我们在这里呢,我先把它放出去,就说我这里呢不管它,我就按正常逻辑啊,我放出去,他说流程错误请重试,看到没,那流程错误请重视,为什么,其实就是刚才我突破了那个什么突破。
那个验证码,他在这里还有检测,就是它其实就是还有检测,你刚才虽然说你强制性装,它进入到这个重置页面上来了,但是他刚才还是有检测的,他还发现你这个流程有点问题,就是他认定你第一个流程没有完。
就进入到重置密码,所以他属于流程错误,那这个时候怎么办呢,继续啊,重新点这个地方,继续把这个response重新返回,再把它放出去,还好我是205好,我们再来到刚才我们成功的地方。
来把它强制性的改成这个,所以说我为什么说要先做一个正确的,因为你要知道正确的是怎么回写,错误的是什么回旋,要把改成正确的逻辑,那个回旋的东西放进来,然后这个时候我们再来观察一下这个界面啊。
你看他之前呢是流程错误,现在我把它放出去,他说密码重置成功,带人来,哎有没有成功,我不知道,我们也不清楚成不成功,你这一撕就知道了,是吧好,这是这个逻辑,这个逻辑呢就是修改响应包来实现突破。
他的安全问题是怎么造成的呢,就是以前端验证为准,也就是说呀他验证你验证码是否正确和验,验证你那个逻辑是否正确,全部是在前端验证验证的这个东西呢,有些人是无论如何都无法理解的。
甚至于他经常在下面能搞一些自威,所以你要告别自卫了解员,你就不得不看我们JS开发的课程,这里呢我就有必要呢给大家看一下,前期我们在讲这个,JS的时候那个支点啊。
我要把那个东西翻出来了啊,那翻到那一天啊,我们当时讲JS的时候啊,在这里写过诶,是不是在这个地方,我都忘记在哪里啊,写的是哪个目录里面的,前期我在讲这个开放式,好像是在登录那里啊。
index的登录的那个页面,用那个判断的,额这个呢不仅是在我们这个找回机制这里啊,在任何的一些这种验证逻辑这里,都可以测试这个修改的返回呢来实现绕过,但是真实有没有成功呢,这个是不是说浏览器是吧。
稍微显示成功就成功了啊,好这个就是我们当时呢在讲那个JS开发的时候,大家有没有印象,你看啊,当时就是这个讲的的,就是用JS呢来去请求这个地址,然后呢那他结束这个值发送过去,然后你看啊他有个判断的。
他说要成功之后呢,返回一个状态码,状态码呢你看啊如果是等于一的话啊,就提示登录成功,然后呢重定向重定向这个成功的一个地方,也就是说啊,其实啊浏览器它在这里判断成功之后,采用JS验证的,是要让你这个地方。
如果说你在实战中的话,那个漏洞这个修改响应成功就是看这里啊,就是看这个代码,这里就是看对方是不是以这个返回状态,判断成功之后呢,进入成功后的逻辑,而这个逻辑里面还没有判断,如果说没有。
那就恭喜你这个项目修改效应就是有用的,但如果说这个修改成功逻辑里面还有判断,或者说成功逻辑里面会带入后端判断,那这里就不好意思了,就没有了,能理解吗,他那个漏洞产生就是和我们这个代码一模一样。
就是说在接受对方返回嘛,那就判断返回返回里面啊,这个什么状态码呀,这种东西来作为这个判断标准,我们刚才修改的也是那个状态码是吧,就是这个返回状态,然后呢状态对方在浏览器那边解析的时候呢。
由于这是前端语言,所以浏览器那边解析了,他在结束这个200或者说其他值的时候,通过这个值的判断来判断你是否进绕过啊,就是验证过了这个逻辑对吧,我们刚才看了啊,200就是成功的,不成功的就不是这个状态。
那就是206,对不对,他所以就是根据这个判断的啊。
代码呢就是类似于这种代码去写的验证,后续成功验证过去之后,后续的处理操作就是和这个漏洞是不是有的,核心就在这里了哈,就说你修改是没问题的,修改是进进入这个循环,但是他后续有个叫什么。
后续的成功事件的处理逻辑,如果说后面的处理逻辑里面是吧,压根就还没有其他验证,或者说压根就直接这个东西成功之后,就进入了这个下一个逻辑了,那就恭喜你,这就有漏洞,具体有没有漏洞。
就是看这个下面的处理逻辑,我不知道我这样讲,大家能不能理解,如果说不能理解啊,那那没办法能理解,那很好理解那个事情啊,所以我说为什么说这个自微不知危啊,自微呢是什么原因造成的,就很简单。
就是这里啊就是判断这里的题是什么了,但是他的处理逻辑这里啊他还后续还有操作,所以导致你呢代码只到了这里,他只给你提示成功了,但事实上它后面的逻辑里面还有验证,所以导致你后面逻辑没有绕过,那就是自微了啊。
就这个意思啊,所以能不能成功的话。
你还要有这个实际效果,就说从事他提示成功了,不是有一定成功的,就很简单的道理,就算我再写个代码啊,接收200状态码啊,是200。
哎我就提示成功了,我提示你成功,和这个代码里面有没有没有把他执行,是一码事吗,他没执行,提示成功,有个鸟用,那我提示你是高富帅,你就是高富帅的吗,还要看后续代码啊。
看他自己写了个逻辑,是否后面还有验证没有,那就恭喜你啦,有那就不好意思了,好好我们观察到这个修改这个响应这来了啊。
好那么现在呢我们来说一下啊。
从通过刚才那个响应,大家有没有在这个数据包里面发现含义,没有其他利用的这个例子啊,来这是刚才数据包,如果说前面我刚讲的知识点学的好的话,其实这里他还有其他的攻击案例,有没有发现呢,大家看一下啊。
首先呢这是找回密码,这里好找回密码,这里这是发送验证码是吧,发送验证码好,发送验证码之后啊,验证验证码是否正确啊,是否验证验证码正确,然后你看啊,前面三个好像都比较正规啊,法子英证验证码这里没有参数。
就这个东西嘛啊没没啥作的,这也不知道是啥,发送验证码在你手上,你看啊有这个电话号码啊,然后就是你输入的那个那个,当前那个页面的验证码啊,然后这个是一个叫什么鬼验证码,一个K啊。
这个应该就是绑定这个验证码的,就是说这个东西要和这个验证码对应上,他可能这里有个验证啊,你可能说把这个用户名一改改了有什么用呢,他是发给这个用户验证码,你改了没用,没有用啊。
你改了就相当于是他发到其他地方去了,他发到其他地方去了,能解吧,那发其他地方有什么用呢,你可能说哎呀,刚才你不是说了吗,把这个用户名重定向啊,是不想不回来,所以你改了有没有用呢,为什么这里没用。
哪里有用呢,逻辑逻辑是哪一步,先哪一步后,你要明白这个事情现在是发验证码,不是说现在是判断验证码,你要改也是改到判断验证码那里也去呀,发言之嘛,你改这个电话号码有什么用,你改了没用啊,他发给谁都可以。
好李哥说哎呀好进入验证码了,哎这个验证验验证码这个是否正确,这里啊这里有个数据包是吧,我改这里行不行呀,哎这里呢有这个东西好,这里是可以尝试的,为什么这里可以尝试啊,这个就和我刚才重定向那个东西。
是有点类似了呀,就相当于说我现在截收到验证码了,我把正确验码写进去,然后我把这个用户名改成其他的,会不会就这里啊,他是第一个攻击点,修改这个值,修改这个值是吧,看看啊,能不能,能不能啊。
重置修改就在这个,这个东西能理解了吧,就说验证码接收到了,那验证码是正确的,所以这后面是没有问题的,那么现在用户名改一改,因为你刚才那给网站是你要修改它的,这个时候你赶紧把对象重定向改成另外一个圆。
那么如果说他没有验证,这个验证码是和他绑定在一起的,那么就恭喜你呀,找到了一个漏洞,能理解吗,所以说改在这里改,我讲完这种类似课程之后呢,你一定要思考的呀,对不对,你不要说把刚才可以清了之后,哎。
你跑这里去改了,或者跑哪里去改了,改要改,找个地方把逻辑理清楚啊,你不要在这里改,这改个鸟用都没有的啊,所以改改这里好,这是第一个,这就是重冰箱啊,就是用简单一句话啊,就是用对的这个验证码啊。
就是用我们这个自己是吧,接收到的那个验证码,对的验证码去修改这个in修去去去什么重定向,去绑定一下修改对象是吧,比如说我现在把它改成这个132字,写随便写个吧好吧,我改这个是吧。
那么其实就是说用我们这个自己的这个东西呢,接受对应的嘛,然后重新下修改这个对象,这样一改就是形成这个效果哎,用验证码是正确的对吧,然后你赶紧把这里呢把它改成这个东西,那会不会就是直接修改他人账密码呢。
是不是啊,就这个逻辑哈,好这个是一个攻击点啊,这是重定向对象,好,我看看下一个这个有没有啊,这个有没有改过啊,这个有没有改啊,也可以改呀,你看数据包里面来1355436part多了,这个地方对不对。
你把这里改成这个值,你把这改成这个USM,改这个值,不久要等同于去修改这个密码了吗,所以说刚才呢我第二第三步的时候我不改你,我到第五步的时候重置密码的时候,对他搞吧是吧,我就把你改掉,会把它改掉。
是不是是不是Z也是个终极点啊,我告诉你啊,这个目标那个app的修改状态码能不能成功,我现在不清楚了,我也不知道修没修复,但至少告诉你啊,这两个攻击点他绝壁有安全问题,由于我这里呢没有多的电话号码了。
我就他妈一个电话号码,我做不了实验了,尴尬了哈,他要准备两个啊,做实验的话要准备两个啊,用你的呀,那你电话号码发给我一下呀,你不怕被骚扰,你就罚啊,哪天你发了是发了这个聊天记录了。
请你是吧,有人就给你打电话了啊,就喜欢你这种是吧。
身体健康,这小伙子,你也不怕骚扰啊。
都给我发了,发个屁呀,真是有人给我发了啊啊那我试一下啊,看一下啊,1355436566,的把我给电话号码一直发干嘛呀,你就怕那个gay不知道你真是呀,你这些人,我知道了呀,这是我的电话码呀。
你一直发个毛啊,发,唉这些人呐,你妈的,你发的啥玩意,你发的都是没有租车的,这我咋测试,连租都没租车,我日我是怎么把概率搞这样,租车之后我才能找回你密码,你租都没注册好,都没用,我租我找回,怎么找回。
唉,不要发了不要发了,你没没没朱砂,你下去再实验这个app app,我给他打包了啊。
你可以下去实验实验一下啊,赶紧让我是给他讲清楚了啊,那很清楚的一个流程呢,看的很清楚啊,没什么太大问题嗯。
好还有一个呢就是跳过步骤,什么叫跳过步骤呢。
那很简道理,我们刚才得到呢,这是重置密码的那个步骤是吧,然后这里是那个验证码的那个步骤,这个是那个发送验证码步骤怎么办呢,我知道了每一步的余额,我直接你妹的,从第一步我不验证,第二步。
第三步我直接给你发这个重置密码数据包,就这么简单,就这么干脆行不行呢。
试一下呗是吧,试一下呗,那怎么操作啊,很简单嘛,先打开这里,他就直接我先知道你整个那个流程了啊。
就是先用正确的那个啊逻辑呢跟你跑了一遍。
然后呢我把你整个流程摸清楚了,因为地址呢我也知道了,那现在呢我就是吧啊。
这是那个就是那个第一个流程是吧,我就强制性把这个第一个流程的呢把它复制来。
把这里那一改是吧,然后这里的呢这是我的第那个流程的是吧,我直接让你进入这个修改密码这个流程再来,对不对,然后热水施工一去掉,给他放出去,那你看这个app,你看看着啊,我们就把它放出去。
好这里大把他改成200,刚才触发的是这个嘛求嘛求这里的这个量度,哎怎么都是205啊,没有200的吗,这200那个200多,把它放这里,好我关注一下啊,就是我强制性的让他进入到这。
这这个这个后面再重新表里堵,哎这里没有反应啊,为什么没有反应呢,哎我们最好呢是这样子操作斜线啊,先把鼠标抓到嗯,怎么打不开了呀,什么情况哦,好了好了好,我们来先来这里啊,好我们正常来讲呢。
这里呢是这个包呢是这么个逻辑是吧,或者强行的把鼠标抓抓完之后呢,那个数据包是不是,我把那个数据包的强制性的改成到这里来,就是这个验证码是否正确的来啊,或者说我强行来到重置密码这个页面,好吧啊。
强制哪个页面啊,把替换掉好,放出去好,他说流程错误是吧,他说了个流程错误,大家有没有看到刚才那个提示好,再来一下啊,啊我直接把它替换,替换之后呢,我把这个状态码也给他,在这里显示,好好这个状态码是吧。
状态码改成这个正确的,好那验证成功,那是不是到这个页面来,其实这个呢就属于跳过步骤认证,跳过步骤一步骤步骤认认证就其实很简单啊,这个是非常好理解的,这个呢就属于哎验证逻辑呢,就验证用户名啊。
验证账号码啊,验数字信密码重置成功,而四个步骤呢就紧密相连,相辅相关啊,只有通过第一个呢就会进入第二个,但是有时候呢每一个步骤呢都会,如果说没有进行关键性验证,每个步骤之间的没有进行关联性验证的话。
那么就会跳过步骤连证,其实那就会导致任意执行这种操作啊,不说执行招密码就会导致这个安全问题,因为这种东西呢不仅是在这种修改账号密码,这里,在很多一些验证顺序里面,都会有这样的问题是吧。
123445有一才会有二,有二才会有三,有三才会有四,你这里呢就直接从一跨到四,或者说从一跨到三,就这个逻辑,那么他有没有这个安全问题,就是看他有没有对每一步进行操作,就说你这一步没有锅。
那就不会有下一步的意思,下部地址你在访问的时候,他不会接受,就是他接收全部是一个整个的衣服循环,满足一才会进入啊,满足二才会进入三,满足三才会进入四,而不是说啊你直接访问49的成功,就这么一个逻辑。
这样子那才是安全的,他是要循行渐进一步一步,而且不能说啊你满足E就可以进入三,是只能进入哦,满足R之后呢才能进入三,他这么一步啊,每一步都是要上面的成功,才会下面这一步这样才对。
所以说实战中这种篮球你怎么测呢,其实就是我刚才说的啊。
就是你先把他四个这个逻辑啊。
就是流程的每一个数据包抓起来之后啊,直接从第一部的这个界面这里,直接跨到这个重置密码这个选项,那么这种就是属于夸,如果能夸成功,那就是有跨不成功,那就没用。
好这个就是我们说的这个呃这几个东西了啊,好啧啧啧哎,什么愿意用户注册,这没什么讲的,简单的要死啊。
运用户注册,说白了啊,你自己用脑子都能想出来的事情,那批量注册的一些事情嘛,基本上它的难度就是在于用户名和验证码,还有那个,还有什么还用,就是很简单嘛,一般就是用户名呢就随机自己用字典生成。
保证用户名能满足密码也是一样道理,然后验证码就是识别插件是吧,全自动的去识别插件打码,对不对,批量的去请求注册包,然后呢用批量的这个绑定的电话号码,或者邮箱呢来进行那个啊,关键点呢就是你有没有这些资料。
比如说验证码实例啊,大量的邮箱啊是吧,这种东西来进行注册。
啊有没有这样的漏洞呢,很简单的道理,防护防护的严。
就没有这样漏洞,没有不严,就有这样的漏洞,什么叫不严呢,注册的时候没有验证码,不用输入验证码,随便租用户名呢没有任何限制,想怎么取就怎么取是吧,而且租车的时候,数据包提交过多就怎么样就会拦截。
还是说不管你怎么请求,他都不会拦截,这就是判定有没有用一用户注册的一个情况,勇得奖吧,好难吗。
多自己想一想问题啊。
湖南的,你如果说自己呢去写那个运啊运E啊,去批量注册那种注射剂,不是有那种搞那个网上写程序接单的,他写这个什么批量注册机是吧,它可能难度还大一点,因为它也绕过验证码的识别,它也有大量这种邮箱或手机号码。
来接收这个验证码,来激活这个账号,对不对,他可能满点还要写代码的来实现这个功能,批量的还要换代理是吧,可能有些有这个有这个检测一个IP地址的,多个注册,还要换代理,那来实现,对不对,有什么难度。
那你想一下呀,你自己挖这种漏洞,你就看他有没有这个验证就完了呗,没有就是有啊,还有还有这些验证是吧,你能不能绕过呀,绕过的方法复不复杂呀,不复杂,那就有呗,复杂那就没有呗。
一种就是我们说的验证码的识别难不难识别,能不能绕过这个识别,能够达到全自动识别是吧,这第一种如果说没有验证码,那就不用说了呗,第二种他就会检测统一IP地址,是不是注册一个了,会封代理子刀。
他换代理请求一次,请求几次就换代理,换不同地址,有没有多个邮箱或者手机号码作为支撑,会不会检测统一手机号码,统一邮箱注册多个,看这些有没有这机制,怎么判断呢,你自己拿你手机就能判断的啦,不用说了啊。
不要再问这种事情了啊,那么接下来呢我们就来看一下,这个关于我们今天讲的课程呢,在这个阿SRC里面的一些具体的案例分析啊。
好这个是我们SRC的案例分析,看一下啊,这个短信怎么回旋呢,已经跟他说过了,我们继续看下面的啊,修改任意用户对象,在那重置运用户,这是我们讲过的知识点,你看啊,但是他和我们讲的有点不太一样。
我们那是在上面直接写上名字,username等于用户名,他这里是什么,你看数据包这里去重置这个密码的时候,这个数据包这里有个什么,叫那user id等于14942,这个id我们前面说过啊。
用户名呢是指向这个用户id呢也是这个用户,所以这里呢没有用户名,但是它有id,把id值改成14941,你跟他说哎呀为什么不改14943呢,啊我问一下大家啦,这个案例中为什么改成的是14941。
而不是改成14943,那为什么是减一,不是加一啊,是吧,有些人他直连这个都想不通,他都会问你这个有什么法子呢,因为上面这个钥匙90是他自己用户,他改钥匙93的话,一般这个递增的话,就是下一个注册者。
你不能保证你注册完之后就有人注册,所以这个钥匙93这个用户存不存在,没有把握,除非有新注册的,所以他改14941就是上一个他注册的,因为他的有要4942,那上一个肯定有,就这个意思,自己呢要学会想。
不要老问逻辑,要严谨一点啊,说白了啊,你如果是上学的时候,这个数学成绩只要不差的话,像这种东西啊,它都好理解的啊,如果说你本来就是个什么啊,就是学文科的数学就很差,那不能理解啊,那是很正常的。
那没办法啊,好我们再看这个啊,修改响应包哎那个那就是和我们讲的一样嘛,呢这个案例里面呢输入个用户名好输,输这个想验证码输入完进去之后呢,啊这这是它的返回包,返回包里面返回的是false。
返回的是false,就是输入错误,这里提示的验证码错误,然后呢把它赶出,赶出之后呢,提示验证码正确了,亮了就进入到设置密码过去了,对不对,这就是修改响应实现的绕过,你可能说有这么多方法。
我哪知道使用哪一个呀,很清楚,方法不多,就那么五六种,一个个是撕,怎么撕,也是看数据包决定的,数据越多,能试的参数越多,就上面能修改数据越少,修改的少,那就修改响应能理解吧,就是上面的值越多。
比如说用户名的id都有,那么你可以尝试修改是吧,重定向用户啊,重定向id啊,尝试取到过,如果说上面没有这些东西啊,你就修改状态是吧,还有些人呢可能上面有只是他加密了,然后那你也不知道,所以那你还要解谜。
解密之后呢,再把它换算。
还有这个呢就是未验证导致用于用户注册,这个也是意思的,给对方去发送这个验证码的时候,就这个验证密码的一个地址时候。
你看他后面有个叫R等于3244166,那么这个R呢代表就是一个id号,把这个值一改,改成这就是其他id的那个账号密码,然后这两个都是这几个都是截图,我们来看一下几个案例,几个案例呢全部是真实案例啊。
就关于这块漏洞点挖的那个思路。
即使SC环节的任意密码重置利用啊,看他怎么挖的,这是一个登录框,找这个忘记密码好,这里尝试去修改,来到这里呢,重置密码,这里呢写这个写这个账号啊,去输验证码,验证码呢账号点确定,点完确定之后呢。
这是发过去的值啊,发过去的值之后,那他是怎么做的啊,好这个是验证码是对的,验证成功啊,就是自己注册的好,自己注册,然后现在呢换一个手机号码,换个手机号码之后呢,去验证的时候就失败了,他就把它改啊。
就是修改状态嘛,把它进行修改啊,不不不是不是不是啊,说错了额,怎么个意思呢,就是他这个呢是我看下啊流程啊,他说这个先注册个账号啊,做账号之后呢填写个人信息,由于这里呢需要验证手机号码啊。
且不能在数据包里面呢去找到返回验证码,所以呢我就用自己手机号,意思就是说呀他想租这个手机,又不想用自己的手啊,又不想注册个用户,又不想用自己手机,但是他想在收数据包里面找验证码。
就想这个发给大家发的验证码,但是找不到,所以他呢只能用自己手机了,好苹果手机啊,他也注册了啊,刚拿到手机注册的时候啊,去验证发送,发现这个这个验证完之后呢,返回了一串id啊,留意一下这个id呢。
为什么要留一呢,这调号码,然后这里有个叫USCODE,还有个叫user id,我们都知道,这个id,就可能就是你的这个什么用户的一个凭据,用户的身份,有时候呢在编辑其他用户的时候。
或者说尝试对其他用户进行操作的时候,可能会用到这个字理解吧,然后呢这里呢是有手机验证码啊,填写确定之后啊,验证码是对的,就验证成功了,好他就回想起在填写账号这里啊,是否能够得到账号,是否已经注册了。
可以随便填一下,就随便填了个账号密码,填一下之后返回的是零,然后呢他就把这个值呢改成一啊就可以了,啥意思呢,就是说他在这里啊进行这个验证的时候,这不是有张真正的账号吗,如果这个账号不存在,返回的是零。
存在的就返回一,所以它可以根据这个提示呢来去猜测,有哪些账号被注册过,就是账号名,那这个时候啊他就用那个支点去跑,结果发现509长度的返回的是零是吧,然后呢返回一的就给他展出来,这就是返回一的。
所以他就拿返回一的这个账号,去尝试找这个账号,所以他的逻辑是怎么样的呢,因为我们都知道啊,你要重置别人的账号,你连对方的账号都不知道,你连他id也不知道,你怎么重置他呢,重置不了啊。
所以他就通过这个找回密码,这个逻辑先去找哪些用户注册过,他先找判断一个没有的用户开发的状态码,发挥的是哪,再用他自己注册账号码返回的是一,所以他就知道这个一代表这个用户名是存在的,那么你就能找这个用户。
因为它不存在怎么找的,租都没租车,是不是,所以他刚才就用字典跑跑了这几个用户名,是吧啊,说到这里的时候,我相信又有人说把字典发我一下,嘿嘿唉我真是花了啊,唉,之前就是啊讲案例说到字典下去。
就说哎把字典罚我一下,我真是拿他没办法,所以他就找到这个用户名啊,随便拿个用户名来做测试啊,他就尝试着对这个用户名呢进行这个什么啊,寻找这个用户,这个这个这个用户的密码,对不对,好发包之后呢,你看啊。
呃因为第二步呢需要验手机号码,然后直接那个啊,然后连接这个手机号码啊,这是对方的手机号码,对不对,对方手机号码,而且这里呢还会起造成信息泄漏,你看他在这里呢还造成信息泄露,他尝试去找这个人的用户密码时。
数据包的回血里面显露出了这个人的电话,所以说你在玩这种密码逻辑的时候呢,还找到了新线路,就说你尝试去找这个用户的时候,他的返回信息呢把这个人的电话号码显出来了,虽然在页面中显示的是这个打打新了,打麻了。
但是放回包里面呢也暴露,然后呢他把这个访问包里面的改成自己的,这是什么一个逻辑啊,这个逻辑是什么逻辑啊,这个逻辑就不是我们讲的哪一个逻辑呀。
从丁香啊。
是不是这个逻辑了呀,就是在这里呢他返回包里面呢,有尝试性向对方的这个号码里面的去发言者嘛,然后这个时候呢,就把对象目标的这个电话号码都改成自己的诶,那么就接收到自己验证码了。
然后呢就用自己得到验证码来充值了,甚至就挖到了这个账号的发了密码重置啊,然后一登录能进去哎呀,而且这个用户呢还有一些权限是吧,下了一些资料出来了,这个漏洞就挖到了呀,是不是,这个案例我们看了一下。
和我们今天讲的是我没有讲,还是说是吧,他很高深的,看了之后难不难啊,我把这个案例分析了一遍啊,大家觉得这个案例呀,我等下还给大家看个APP案例好吧,我们先把这个案例讲了啊,讲了啊,你能不能听懂没听懂。
我再给他过一遍,听懂了我就讲下一个那个案例,听没听懂啊,听懂了是吧,他的逻辑是先是吧,弦呢啊这个先自己注册个账号,然后呢在注册的时候呢走了一些逻辑,所以你可以看到挖漏洞的时候,特别像这种逻辑漏洞。
你先自己用自己的账号走一遍,逻辑,走一遍的逻辑,是能够帮助你了解它正常的一个流程的走法,包括里面的返回包,请求包值,这些东西都能便于你后期的进行操作是吧,然后呢他就是吧要尝试性重置别人的密码。
但是重置别人密码呢,他肯定连别人密码的用户名都不知道啊,你重置要给个对象啊,所以他就在想啊,怎么操作的,那么他就在这里呢去做了一个判断是吧,重置对象的时候,如果这个对象不存在,就会返回包呢。
就会返回的是零,就对象没有这个用户名,就是用户名不存在,那么重置就是不存在的,返回一呢就是用户名存在,所以重置才能正常进行,那么通过字典,包括找到了部分用户里面有这个用户名,然是针对这个叫陈涛的这个呃。
这个这个用户名呢作为操作,然后呢通过在请求包的时候啊,发送验证码的时候,这里有个手机号码,把这手机码呢强制性修改成自己的,也就是说修改重定向,然后这个验证把他发到自己手机上面来了。
然后重置了这个成套的这个用户。
登录进去之后提交SRC,这是过程啊,不说了,过了一遍,咱们再看下一个啊,这个呢和那个刚才的也差不多的,大家看一下啊,这个是一个SRC等一个SRZ画家,开局一个登录框嗯,你看今天的课程我们讲了啊。
好像都是在什么找回密码呀,重置密码那里登录框,这里呢思路来了以后,别人问你啊,登录框渗透思路,那今天讲的知识点那就是一个思路,所以说呀有些面试题呀,你学好东西之后呢,你做好总结之后呢。
很多东西都能套上去的,你想过的话,你就是压根这个东西你学了就没有提提升上去,这就属于登陆框的一种另外一种思路嘛,找这里呢有个忘记密码是吧,忘记密码这里有两个非法参数啊,即提交之后呢返回零。
那返回零呢就是说前端没有查到账号信息,他随便写了个账号为一呀,手机号码一返回的是零,他就没有查到这个账号信息是吧,嗯然后呢他将一改成R改成零啊,零改成一之后呢,就来到第二步,第二步呢就是进行安全验证。
就是输入个验证码啊,然后呢,你会发现他的验证码呢在这个前端有显示,那验证码在下一题这里显示,所以他就直接可以填入验证码,进入第三步,修改密码,再来就修改成功了,好这是他的一个测试的一个前期情况。
但是判断成功之后呢,他就尝试修改艾米,修艾米之后呢,提示成功了,但是一直登录时候呢提示失败,什么情况呢,后面他就想了个法子,想了个什么法子啊,就在这里面找到了这个用户名,也就是说。
其实之前他修改艾米那个艾米用户是不存在的,用户名是这种名字,所以他重新呢啊在这个其他接口里面啊,找到这个用户名,然后呢再重置这个用户名,然后后面呢再登录进去的,所以说他在测试的时候呢。
尝试修改艾德米提示成功了,但是艾德米呢登录上去,原因是因为没有enemy这个用户,后面他在app里面的数据里面啊,下到APK用APK呢,用工具扫一下,有人说哎呀,这工具是啥工具啊。
用工具扫一下这工具是啥工具啊,就是我们说的app for sk,你可能会问为什么知道你可以看一下啊,这个文章我在微信上面还看过,微信上面呢直接说了APP铺,那我看app扫描工具链接有吗,这个是什么呀。
那他说工具地址在这里呢,app运符sk app运符实干讲没讲过啊,我们讲没讲过,讲没讲过的,有人说哎呀,把那个工具给我罚一下呀,哎我没讲过吧,不过吧我记得讲过啊,我是讲过的啊,AB运是不是个啊。
我不记得别人哪里不记得哪里有了啊,但是绝对是讲过的,这些讲也讲过啊,那个某某sf都讲过AP什么,你不就不说了啊,谁说啊,你面对不同情况,下面是啊很多知识点的都要把它联动起来的啊,你不可能说掌握一哥啊。
有时呢就能玩了,因为你掌握一哥,那很简单道理,掌握一哥呢有时候碰到一些其他情况,那就不行了啊,这个呢他就用到了这个从app去提取数据,然后呢挖到这个信息里面呢,有这个什么管理员的一些信息,然后呢。
他才要从事这个管理员的这个对应身份啊,重置后面呢才登录进去的啊,那每次一问哎,你看下面也有人问,说a app加固有壳的话,那AP扫描工具就没法用了吧,一问是吧,别人就没有回复他了,好这个就不说了啊。
好我们现在来看一下啊,这是我们看的两个案例,案例呢全部分享完毕,我们呢给自己呢来是吧,打开app看一下啊,我们来看一下真实情况,下面那个情况,好我们来看一下啊。
先把包刷一下,你看啊,我们就拿这个简单的讲解啊。
我们各个的提一下思路有没有漏洞呢,不重要,思路先给他讲,来看一下这里啊,那打开这个叫距离,这个距离是什么呢,是这个擦边球的东西是吧,什么叫擦边球呢是吧,他也不是直接的折射,就是一个是吧,这个gay呀。
蛇蛇呀,这个历史啊,喜欢商的平台,什么叫那个呢,其实就是啊同心异性交友平台,加什么油呢,对不对,那就不知道了啊,好我登录进去之后啊,你看啊,他就是吧,我的名字呢取名叫小迪爱通是吧,还搞了个帅气的头像。
对不对,那你妹的是吧,直接就看个人信息是吧,个人信息,然后这个相册子啊,多点一下啊,还有诶是我星星都没有了好了,最近访客哎呀,这个老色批啊,你妹的,我他妈的刚注册,你就来访我的客,唉,还是个男的。
无语了,然后呢在前面呢是吧,就是一些这种是吧,那我真搞不明白,我这你妹的,我身份是男的,你怎么推荐都是些男的,你什么情况啊,查询一下新人好,这有女的了是吧,你看这个我们点进去是吧。
搞这种图像是不是还什么,你不主动,我们之间怎么有故事,都是gay呀,好我们看下这个数据包,好看数据包啊。
你看啊点了下,你看啊,来这个数据包里面就泄露不少,你看看这里写了个地址JPG,我看是个什么东西。
我打开看一下,那就是刚才看到那个人的一个图像。
那歇着了2000年0612,应该是他的出生年日哈,175175啊,高175WITHG64K啊,六十四六十四千克,username m叫浅,这是它的UI力CX为一,哎呀这是个一呀,哎呦恶心啊,真是恶心啊。
受不了啊,那这都是他的星系,对不对,那你看这里这有这么多星系了,你看这里还有user id是吧,那就各种各样的原理,这个叫bob是吧,1839 19公斤,哎呀你这太肥了呀,这顶不住啊,这这谁顶得住啊。
大家读一下啊。
哎呀这受不了受不了,这谁受得了啊,这,然后这里呢有很多这个这个这个那个是吧,你看啊这有很多信息啊,你看这里那就有些接口信息啊,我们看一下啊,再来看啊,你看这里这个我看有没有那个能看这个后面啊。
你看这里好,你看这个这个呢一个信息返回,你看他又返回了19920321是吧,这里有个地址IP,有个一个图片,然后这里呢你看啊,那176135436566,这不就是我那个注册信息吗是吧。
这就是我那个个人账号信息啊,然后这里有我的UCD,那也有了啊,你可能会问这什么情况呢,这有没有什么车法呢,还好我们继续看啊,看数据包里面啊,你看嗯,好我们就拿这个找回密码逻辑,这里测是吧。
来我们翻译一下这里,这里有个这个个人信息,然后这还有这个诶设置好,这里有个叫账号相关啊,换绑手机,比如说我在人家换绑手机是吧,我个人电话码了,是那135的吧,我我我换一下啊。
来换一下130换成其他手机吧,1012号下单好吧,换这个啊,然后我抓个包,哦这是我那个宝马,对不对,好把它进行一个替换啊,先替换包改好改好,这是这也不知道啥情况,放出去吧,放再放。
它提示什么提示这个验证码是吧,验证码好,我朋友随便输,这明显这个既方法都不是我的,我怎么可能有人验证码呢,对不对,所以我就把随便写四个一好,我来记录一下啊,返回这个错误哎。
我就把刚才那个成功的错误把它拿过来嘛,啊刚才那个呢都是零零的零全部零的,应该就是那个正确的哈,就这种呢就是正确的哈,我要替换一下啊,对不替换,看这里哈,诶绑定成功,那就换绑了吧是吧,换绑对不对。
换绑了呀,换成另外一个手机号码呀,是不是,其他的我们就不看了啊,其实说实话他这里呢还有一些这种,还有这种叫什么呀,还有那个新鞋楼啊。
我这边点了一下啊,就是你会发现呢他这里泄露很多信息,然后呢你可以根据这个值啊进修改,你看这里有什么页面是吧,你把它改一下呢,显示十个是吧,东西呢都可以尝试性的把不用改掉的好哎,再返回那个他不弄。
这直接返回啊,这个第二页还不如行呀,第一页还可以返回信息里面,嗯各种各样的一些信息啊,然后这里面有一些不同信息啊,嗯你就自己呢就是看这包啊,然后呢有参数值的,那你就把它进行修改,啊有参与指证九块行修改。
然后呢这里呢泄露一些人的一些id值啊,包括他的user id啊,还有一些信息,有些的话可能会泄露电号码,那你可以在这里翻啊,那我们可以看一下这面的正面那个匹配呢,这是匹配到电话号码的。
然后这是匹配到个人信息的,那我们就不细看了啊,因为这里呢我也不想打码了啊,打码到时候又要把视频重新打码,重新编辑一遍码,麻烦这个涉及到敏感信息的时候啊。
这个要打麻唉算了,我就不搞了啊,你有兴趣你下去自己测吧,我们就不测了啊,我就拿这个案例给他简单说一下,说其实就是说说白了啊,这个业务逻辑的所有东西啊,都是通过数据包的一些操作。
数据包的请求包和反响应报,就是你在上面看啊,宝宝坐下来,另外包里面呢还会有一些各种各样的一些纸啊。
你不要只看那个页面显示东西,因为显示它只会显示一部分,但是有时候呢它的数据呢是要大于数据包的,回忆线里面是要大于这个显示的,因为我们都知道啊,业务实现逻辑,你在你自己写程序的时候啊。
你自己呢去写了个功能功能的返回了很多数据,但是你要显示的话,你可以自己选择性的显示,但数据其实它是有很多数据的,所以有时候呢,他的数据呢会在回信包里面都存在,但是它只显示部分。
像我们经常看到玩一些什么信息泄露啊,都是网上的是吧,浏览器上面看就就就几个。
但实际上呢返回包里面呢泄露一些诶。
他就挖到了嗯好今天就讲这么多了啊。
下节课呢我们就来说一下这个验证的一些,接口的一些事情啊。
啊下节课我们就讲那个东西了啊,这节课呢我们就不说这些了啊。
好就讲这么多啊,大家有问题的话就问,没问题就瞎了啊,app叫什么名字,app叫我都忘记了啊,我都不知道那是从哪里下过下的了,嗯我呢喜欢模拟器,上面有好几个那种app,叫个什么名字啊,我刚才看一下啊。
给大家看一下,看网上能不能下载到,应该网上能下载到啊,我现在打开看一下是叫什么名字。
因为有些这种擦边的这种app网上商店下不到,所以很正常啊。
他要往上看能不能下载项目名字,距离这名字取的还是漂亮啊是吧。
距离,有水平呀。
哦有了距离。
这样子就这个东西嘛呢。
好就说这么多了啊,我们今天就讲这么多了。