实战中的越权访问漏洞

VSole2021-09-17 13:06:06

NO.1前言

OWASP发表的 OWASP Top 10 2021

https://owasp.org/Top10/

想必是这个月安全圈较为火热的新闻话题。看到Broken Access Control 位居榜单首位,可以说这个结果是在情理之中意料之外。

无论是在我日常漏洞审核工作中还是在自身参加的众测项目中,因鉴权不当产生的漏洞问题越来越多。对于厂商来说,此类问题危害性极大,攻击者可以突破登录、身份验证等手段控制后台功能或越权到高权限身份,而对于白帽子来说,此类问题较容易挖掘,赏金极高。所以这篇文章我将站在白帽的角度去展开分享 - 实战中的越权访问漏洞。

NO.2 绕过访问控制检查

案例一

修改 response数据包状态码以达到绕过访问控制检查,当登录失败时,控制身份登录的状态码为 1

通过尝试后发现当状态码 "code":"0" 时,为登录成功的状态

总结:此类通过修改状态码进行伪造的,我将其分为三类: 

1.后端未作验证,直接修改状态码即可绕过访问控制检查。

2. 后端做了验证,但是会显示后台页面,暴露后台功能接口,但是没有数据和权限去操作。 

3. 后端做了校验,直接回跳到登录页面,重新登录。 

像第二种情况,如果后台可以去访问到所以的功能点,可以去交一个低危或中危。

案例二

漏洞详情

首先我们通过一个任意用户登录该系统

在登录时分析数据包,发现 roleld参数为身份控制参数

当 roleld参数值为 1 时为管理员身份

BurpSuite小Tips,如果每个页面都需要验证一次response状态码,我们可以在Burp里面进行配置,使其每个response数据包的 boy指定值自动替换

案例三

通过修改参数值以达到越权增删查改的横向越权漏洞

漏洞详情

通过查看预约二维码捕获数据包

通过测试发现 id为控制门票二维码,user_id为身份验证。由于没有对身份和对应的门票验证码做身份校验,导致攻击者可以通过未授权的情况下直接访问二维码(将user_id参数删除,遍历id即可)

未使用的已付款二维码

总结:对所以控制身份页面的数据包要格外关注,尤其在请求数据包中由固定参数去请求资源的情况。

NO.3 未授权访问后台功能

由于未对后台功能鉴权所导致的未授权访问漏洞 这类漏洞是需要一条攻击链去支撑的,比如:

1.众测项目甲方给了测试用户 

2. 通过口令爆破、弱口令登入后台 

3. 通过源码审计或JS泄露的路径去测试后台功能 

此类漏洞虽然需要前提支撑,但是回报颇大,一般都是成批出现

案例一

首先我们去拦截触发后台功能点的数据包,比如增删查改的数据包

通常是会带Cookie或token值去进行身份验证的,此类我们可以删除Cookie和token值去验证,删除后 是否还能触发功能

发现删除Cookie后依然可以触发后台功能 

再查看该条数据已经不存在

当然,这个除了删除接口,增加、修改、查看接口都可以进行未授权访问

案例二

点击获取后台中奖名单接口

发现删除token依然可以访问到敏感数据

案例三

通过目录扫描、FUZZ、猜解等方式获取到后台路径达到未授权访问后台功能

1.目录扫描极力推荐 Dirmap 

https://github.com/H4ckForJob/dirmap

(安装的时候一定要认真看 README.md的最后面已知缺陷那里,不然有些 PY库装不上)

2.FUZZ就是要看字典了,没什么好说的

3.猜解就要看运气了

一级目录为 casServer,通过目录扫描无果

通过猜解的方式,将 casServer修改为 fileServer,发现存在目录遍历,泄露文件上传点等等

NO.4 API接口未对敏感

HTTP请求方式做鉴权

现在还是有很多站点通过 HTTP请求方式,如 PUT、DELETE去控制站点添加和删除的功能,但在启用这 种方式时,若对API接口未作鉴权处理,将引发严重危害

案例

将HTTP请求方式修改为 OPTIONS查看允许的 HTTP请求方式,发现存在 DELETE方式

我们修改 HTTP请求方式为 DELETE,删除站点内现有的数据

首先访问 XX云,查看现有的文件

我们就选择这条文件进行删除

再次访问发现已经不存在,被删除掉了

NO.5 总结

在实战中挖掘越权漏洞,要尤为关注各个功能点对于身份鉴权的方式 

1. 若有注册功能的系统,注册两个账号,更换为账号B的 Cookie或 Token去测试账号 A的功能 

2. 要分析每个参数的功能意义,要多尝试去修改,比如 flase修改为 true或 success会发生什么 

3. 对后台的每一个功能数据包去测试,删除 Cookie或 Token后是否仍能触发功能效果

漏洞漏洞挖掘
本作品采用《CC 协议》,转载必须注明作者和本文链接
src漏洞挖掘浅谈
2023-02-20 11:22:13
信息收集就说到这里,信息收集的主要目的就是扩大可利用面,10000万个资产你可能碰到弱口令,但1个资产你肯定没有弱口令挖掘前篇前边已经讲了信息收集,在测试前为了能高效的挖掘src,就需要有数据进行测试,这个数据就是我们常说的字典,字典怎么来,整理,收集,经验,积累。金额,数量都是可以篡改的地方小结挖掘src漏洞最主要还是挖掘逻辑漏洞,无非就是耐心,细节,多留意数据包的可疑数据,数据包所实现的功能。
首先要上分那么一定是批量刷漏洞,不然不可能上得了分的,然后呢,既然要批量刷漏洞。两种思路:1.审计通用性漏洞2.用大佬已公布的漏洞思路1难度较大,耗时也较长。思路2难度适中,就是需要写脚本或者使用别人已经写好的脚本。这是泛微继与微信企业号合作后,又一个社交化管理平台的落地成果。简单的说,一般比较大的企业都会用这个平台来做一些钉钉或者微信接口对接泛微OA的功能。
关于漏洞的基础知识
2022-07-20 09:44:23
黑客可以通过修改事件完成的顺序来改变应用的行为。所以,进行有效的验证是安全处理文件的重要保证。这种类型的漏洞有可能是编程人员在编写程序时,因为程序的逻辑设计不合理或者错误而造成的程序逻辑漏洞。这种类型的漏洞最典型的是缓冲区溢出漏洞,它也是被黑客利用得最多的一种类型的漏洞
网络安全漏洞(以下简称“漏洞”)作为信息通信网络中在硬件、软件、协议的具体实现或系统安全策略上存在的缺陷,随着经济社会信息化、网络化、数字化和智能化程度的加深,对国家网络安全的影响也日益加剧。世界各主要国家和组织为了切实提升国家网络安全防护能力,围绕漏洞的研究、收集和利用,纷纷建立国家级漏洞通报平台或漏洞数据库。日本于2003年开始建设“日本漏洞通报”(JVN)平台;美国于 2005 年开始建设“
细说从0开始挖掘cms-
2022-08-17 16:26:57
确立目标挖洞的第一步首先是确立一个目标,也就是找个cms来挖,这里可以通过github,gitee或者谷歌百度直接去搜cms。或者cnvd查看相应的信息,通过查看相应的信息可以提高我们挖洞的效率,我们从中可以知道该项目已经存在漏洞,我们到时候挖就可以看看相应的地方会不会还存在漏洞或者避免挖到别人挖过的漏洞。本次挖掘漏洞是ofcms,首先先下载一下源码,然后解压丢一边,回到网页来看一下项目文档。
最后对响应的匹配,使用正则识别id命令之后的结果。成功扫描出CVE-2022-1388F5 BIG-IP API Unauthenticated RCE漏洞漏洞的请求也变异无误,最后的响应中也是执行了id命令。案例二:利用Scalpel工具挖掘多个0day漏洞Scalpel工具使用较为灵活,通过对检测目标变异响应的check,可以发现检测目标中未知的安全问题。同时发现某Apache开源项目的CVE漏洞,报告被该团队接受并正在修复,尚未披露。
攻击者可在无需认证的情况下,通过构造特殊的请求,触发反序列化,从而执行任意代码,接管运行ForgeRock AM的服务器。本文从漏洞挖掘的角度分析其中的技术细节,也将公开一些其他的反序列化点。
对于公益SRC来说,想要冲榜就不能在一个站上浪费大量时间,公益SRC对洞的质量要求不高,所以只要 花时间,还是可以上榜的。在对某站点进行测试SQL注入的时候,先通过一些方式测试是否可能存在漏洞,然后可以直接sqlmap一把梭,也可以手工测试,然后提交漏洞。任意注册算是低危漏洞,不过也有两分。不管是进行SRC漏洞挖掘,还是做项目进行渗透测试,又或者是打红蓝对抗,一定要做好信息收集。
VSole
网络安全专家