我是一名前端工程师,想要转行渗透测试,以写日记的形式记录每天学习结果,逐步完善渗透测试整个体系。
昨天学习了越权漏洞,比如在一个商城网站里,修改我的收获地址,用抓包工具抓获请求,发现 address_id = 101,每条收获地址都有一个id,把 address_id 改成其他数字(可能是别人的收货地址的 id),放行请求,如果接口返回 200 说明把别人的收货地址给改掉了,同样的,可以查看别人的收货地址(收货地址里可能包含住址,电话号码等隐私信息),删除别人的收获地址,这中就叫做越权漏洞。
还有个越权漏洞的场景是优惠券,比如某app上可以领取一张2元优惠券,抓包数据,发现优惠券 id 也是数值,比如 id = 88,那么说明数据库里前面可能还有 87 种优惠券,只不过页面上当前没有显示出来。把 id 换成 1....87 依次发请求,如果存在越权漏洞,可以领取页面上没有显示出来的其他优惠券,这种也越权了。
诸如此类,所有 id 是递增性数值的都有可能存在越权漏洞。
造成越权漏洞的原因是后端开发人员没有对 id 做权限控制,解决的方法最简单的就是后端开发人员不要用递增型数值做id,所有 id 都用 uuid 这种形式就好了。当然如果就想用递增行数值做 id,在接收参数的时候需要校验这个 id 能做事情的权限。
更新体系树
|-- 信息收集
|-- 目录扫描
|-- dirsearch
|-- 指纹识别
|-- whatruns, wappalyzer
|-- 谷歌搜索
|-- inurl, intext, filetype
|-- 越权漏洞
|-- 收获地址, 优惠券, 个人信息等
标签:优惠券,漏洞,渗透,之路,--,地址,id,越权
From: https://www.cnblogs.com/dkvirus/p/17871189.html