小白也能上手的高危漏洞:越权漏洞挖掘全攻略 建议收藏学习

📅 2026/6/26 7:26:49
小白也能上手的高危漏洞:越权漏洞挖掘全攻略 建议收藏学习
小白也能上手的高危漏洞越权漏洞挖掘全攻略 建议收藏学习本文面向网络安全小白与程序员讲解逻辑漏洞中的核心越权漏洞对比传统代码缺陷漏洞说明其无需高深技术、依托业务逻辑缺陷的特点详细介绍越权的定义、分类、原理、挖掘方法与高危场景附带辅助工具助力新手快速掌握漏洞挖掘技巧。免责声明本文只做学术研究使用不可对真实未授权网站使用如若非法他用与平台和本文作者无关需自行负责前言提起漏洞很多人第一反应是SQL注入、XSS、文件上传、命令执行等这些漏洞都有一个共同点利用的是代码缺陷需要很强的技术性而逻辑漏洞不同不需要你掌握Webshell免杀、SQL以及XSS如何绕过等各种专业性的技术只需要你有较强的思维即可技术性漏洞不仅需要各种专业性的技术而且容易被WAF、防火墙拦截现在安全产品越来越成熟绕过的方法也越来越少逻辑漏洞只需要较强的思维细心不放过任何一个小细节即可当然需要提前理解业务WAF无法识别是否为真实攻击比如逻辑漏洞之越权漏洞uid100我们只需要修改100为1就能获得其他用户的数据甚至接管整个后台现在安全行业已经越来越成熟根据近几年各大SRC、洞众测平台、高危漏洞榜单中越权漏洞始终占据重要位置。为什么会出现这个现象因为逻辑漏洞不需要太多的技术哪怕你是小白照样可以进行逻辑漏洞挖掘而且一旦出现越权漏洞有可能造成数据泄露、金钱方面的风险很多企业花费数百万建设安全体系WAF、防火墙、态感、堡垒机等防住了SQL注入、命令执行、XSS但却防不住?uid100什么是逻辑漏洞举个现实中的例子网购买手机正常流程选择商品–提交订单–商家发货–收货完成异常流程选择商品–提交订单在此阶段我可以把商品金额修改为0.1此时付款成功相当于零元购–商家发货–收货完成那么造成零元购的原因是什么呢业务逻辑设计错误导致攻击者可以绕过正常业务规则获得非预期收益或者权限那么问题来了上述的攻击中是否涉及到技术就简单修改个数据包然后就挖到了逻辑漏洞传统漏洞SQL注入等与逻辑漏洞最大的区别传统漏洞利用的是代码缺陷而逻辑漏洞利用的是业务缺陷那么逻辑漏洞都有哪些呢这里只写部分越权漏洞访问不属于自己的资源支付漏洞绕过支付/零元购审批漏洞跳过审批流程优惠券漏洞重复使用优惠券注册漏洞批量薅新用户奖励验证码漏洞爆破验证码工作流漏洞跳过业务节点那么怎么跟业务挂钩呢毕竟逻辑漏洞其实就是业务逻辑漏洞所以我们测试前需要先了解下系统掌握系统目前有哪些模块然后再根据这些模块去测试登录模块注册模块密码找回模块验证码模块越权严格意义不属于模块业务办理模块支付模块其他模块那么知道了这些模块是否可以根据这些模块去进行针对性测试呢这些后续会一一讲解本篇文章只讲越权那么逻辑逻辑为什么难以被发现上面提到了技术漏洞如SQL注入、XSS等属于代码缺陷可以被扫描器发现可以被安全产品拦截但逻辑漏洞跟业务挂钩那么它必定依赖于业务规则而业务规则扫描器却发现不了也无法被拦截可以想一下如果拦截逻辑漏洞也就是拦截业务规则那么怎么判断业务规则是否是正常流程例如电商订单、支付、物流OA请假、审批、报销银行转账、风控、审核每个系统的逻辑都不同我们人工了解业务都需要一定的时间更别说让自动化工具去了解业务并发现逻辑漏洞了什么是越权漏洞先从日常生活中理解越权假设住酒店前台给了你一张房卡房卡为1001正常情况下房卡只能打开1001但如果有一天你的房卡打开了1002、1003、1004等其他房间那么这就造成了越权接下来再说互联网中的越权假设网站存在接口GET /api/order?id10001返回{ user:张三, order:手机}开发认为用户已经登录所以安全如果攻击者修改接口GET /api/order?id10002返回{ user:李四, order:电脑}攻击者成功查看李四订单越权成立那么越权为什么会危险因为攻击者获取的不是系统权限而是用户的真实数据如果真实数据泄露那么后果可想而知谁又敢使用你家的产品呢用户姓名手机号码身份证地址订单记录聊天记录企业数据大多数重大数据泄露事件本质上都是越权那么看到这里是否真正的了解了什么是越权呢越权的本质用户突破系统权限边界访问本不属于自己权限范围内的资源或功能换句话说系统规定你只能访问A结果你访问B那么越权就产生了越权漏洞核心原理为什么学了越权依旧不会挖原因只有一个不理解权限控制原理一个经典的误区用户登录成功用户有权限这是错误的正确的逻辑应该是登录成功权限校验允许访问举个例子你登录了银行APP是否代表可以查看全国所有人的银行卡余额显然是不行的登录只是证明你是谁并没有证明你能做什么权限控制模型任何系统都离不开两个概念主体、客体主体Subject谁发起访问例如普通用户、管理员、游客客体Object被访问资源例如订单、工资单、文件、用户资料而访问控制的本质是主体访问客体那么系统最后肯定是要进行判断的允许还是拒绝权限边界权限边界是理解越权的关键例如用户A订单1001用户B订单1002系统规定A–1001B–1002这就是权限边界如果A–1002成功边界被突破越权也就产生了为什么会出现越权看一段代码错误写法def get_order(id): return db.query(id)开发只校验是否登录没有校验订单是否属于当前用户正确写法def get_order(id,user): return db.query( idid, owneruser.id )这里多了一步资源归属校验这也是绝大多数越权漏洞产生的根本原因其实产生越权漏洞还有一种原因视角不同所以导致存在漏洞开发者视角用户已经登录攻击者视角资源是谁的开发者关注认证攻击者关注授权而授权漏洞恰恰发生在授权环节看到这里你应该明白越权漏洞不是因为攻击者太厉害而是因为系统没有正确验证“当前用户是否有权访问当前资源”。很多人认为越权 改ID实际上改ID只是利用方式权限边界失效才是漏洞本质认证、授权、审计AAA模型开始之前先留下一个问题开发明明做了登录功能为什么还会出现越权答案其实藏在三个词里面认证Authentication授权Authorization审计Accounting这三个概念看似简单但实际上却是整个权限系统的基石其实很多越权漏洞的根源就是开发人员把认证和授权混为一谈为什么要学习AAA模型很多安全新人测试越权时看到接口GET /api/order/1001直接改GET /api/order/1002如果成功提交漏洞结束如果没成功不存在漏洞但真正的高手会从底层业务去分析系统为什么会出现越权在进行越权测试时你是否思考过这个问题而回答这个问题必须理解AAA模型AAA模型什么是认证Authentication认证解决的问题你是谁例如登录微信输入账号密码系统验证账号正确、密码正确认证成功常见的认证方式类型示例用户名密码最常见手机验证码短信登录TokenAPP认证JWTAPI认证OAuth2第三方登录人脸识别生物认证认证后获得身份例如{ uid:1001, username:zhangsan}注意认证成功仅代表张三已经登录并不代表张三拥有所有权限什么是授权Authorization授权解决的问题你能干什么例如张三登录成功系统继续判断张三能否查看订单1002如果允许授权成功如果拒绝授权失败什么是审计Accounting审计解决的问题你做过什么例如日志记录2025-01-01 admin 删除用户IP为1.1.1.1发生安全事件时审计日志用于追溯审计日志示例时间用户操作10:00admin删除用户10:05user1导出订单10:10user2修改密码为什么越权发生在授权阶段多数开发只做认证不做授权/授权不严格例如if login: return data正确逻辑if login: if owner current_user: return data区别就在于资源归属验证这也是越权漏洞产生的根源越权漏洞分类详解未授权访问什么是未授权访问无需登录即可访问资源例如正常情况GET /login登录后GET /api/user/info攻击者直接访问GET /api/user/info返回成功漏洞成立危害最高因为攻击门槛 0水平越权什么是水平越权同级用户访问彼此资源例如用户Auid1001用户Buid1002请求GET /api/user/1001改GET /api/user/1002如果成功代表存在水平越权本质自己–别人同级别最常出现的位置模块风险用户中心高订单系统高文件系统高消息系统高OA系统高垂直越权什么是垂直越权低权限访问高权限功能例如普通用户roleuser管理员roleadmin攻击者使用普通用户直接访问管理员接口POST /admin/deleteUser如果成功漏洞成立常见场景后台管理/admin用户管理/deleteUser角色管理/role/update交叉越权并非只有管理员、普通用户两种角色主要出现在大型企业系统以部门为权限边界技术部、财务部、运营部、审计部例如技术部访问财务工资表属于交叉越权租户越权例如某SaaS平台客户腾讯、阿里、字节都使用同一个系统但是腾讯不能看到阿里的数据阿里不能看到字节的数据这种隔离机制叫租户隔离简单的说就是同一个系统下存在不同的公司例如SaaS系统存在公司A和公司B正常情况{ tenant:A}修改{ tenant:B}如果A直接获取B公司数据那么漏洞成立危害极高因为普通水平越权影响的是一个用户而租户越权影响的是一个企业而很多企业数据基本都是几万甚至上百万条数据如果全部泄露影响很大参数风险tenantId严重orgId严重companyId严重enterpriseId严重workspaceId高projectId高字段级越权大多数人基本不会测出高危的概率高那么什么是字段级越权很多开发会校验用户是否登录也会校验用户是否有权限访问接口但是却忘记校验用户是否有权限修改某个字段正常{ nickname:test}尝试增加隐藏字段{ nickname:test, role:admin}如果成功权限提升越权成功字段风险role严重idAdmin严重permission严重level高tenantId严重departmentId高status高balance严重工作流越权也可以叫高级越权很多企业系统都有审批例如请假、报销、采购、合同审批正常审批系统提交申请–经理审批–财务审批–完成漏洞产生原因开发认为用户会按流程走攻击者直接调用POST /approve绕过经理、财务直接完成审批场景风险OA审批严重合同审批严重财务报销严重采购审批严重工单审批高哪种越权最值钱很多新人会问哪个越权等级最高其实等级高低取决于数据价值以及数据数量一个只能获取100条数据并且是无关紧要的数据而另一个能获取百万条数据并且为用户的所有信息姓名、身份证、手机、家庭住址等那肯定是后者更值钱如果只根据风险评级参考不考虑数据价值以及数据数量类型风险未授权访问严重水平越权高垂直越权严重租户越权严重字段级越权严重工作流越权高~严重越权漏洞挖掘方法在开始前请先思考你挖掘时是不是只会改ID发现没有没成功那就不存在漏洞继续下一个系统但真正的高手测试越权时首先思考的不是ID能不能改而是这个系统的权限模型是什么这是两种完全不同的思维而正是这种思维的差距导致出现一个现象有的人一年挖不到一个高危而有的一个月拿十几个高危那么都有哪些权限模型呢RBAC权限模型、ABAC权限模型、PBAC权限模型、AAA模型什么是RBAC权限模型Role Based Access Control基于角色的访问控制用户–角色–权限–资源例如张三用户角色是管理员权限是删除资源是用户整体就是张三管理员可以删除用户当然RBAC有缺陷容易出现权限继承错误、角色配置错误、角色残留等问题什么是ABAC权限模型Attribute Based Access Control基于属性的访问控制除了角色还看部门、时间、地点、设备、IP等例如部门经理只有在工作时间并且在公司网络才能访问什么是PBAC权限模型Policy Based Access Contorl基于策略的访问控制将授权决策从业务代码中剥离通过独立的策略引擎进行动态评估。核心组件策略执行点(PEP) → 策略决策点(PDP) → 策略信息点(PIP)例如员工小李在工作日9:00-18:00从公司办公电脑访问薪资系统策略引擎评估通过允许访问若小李在晚上22:00从个人手机访问策略引擎拒绝访问。什么是AAA模型Authentication、Authorization、Accounting/Auditing认证、授权、审计/计费安全管理的三大核心环节。认证你是谁→ 授权你能做什么→ 审计你做了什么例如用户登录系统时输入密码完成认证系统检查该用户是否有权限访问“用户管理”页面完成授权用户的所有操作登录时间、访问的页面、修改的数据被记录到日志完成审计。双账号测试法最经典的方法也是所有越权测试的基础为什么要两个账号因为越权的本质是访问别人的资源所以必须有账号A、账号B举个小例子账号Auid1001账号Buid1002账号A抓包GET /api/user/1001响应{ uid:1001, name:张三}修改GET /api/user/1002之后发送如果返回以下内容代表漏洞成立{ uid:1002, name:李四}参数替代法很多越权不一定是ID参数风险等级id高uid高userId高uuid高tenantId严重deptId高groupId中orderId高fileId高roleId严重Token替代法当资源ID不可更改后那我们可以尝试进行Token替换举例账号AToken_A账号BToken_B请求GET /api/user/infoAuthorization:Token_A替换Authorization:Token_B观察返回如果返回账号B的资源代表越权成功未授权访问测试这个方法比较简单粗暴举例抓包GET /api/user/info删除CookieTokenAuthorization之后重放如果成功代表存在未授权访问高危接口接口类型风险导出接口高下载接口高用户信息高后台接口严重文件接口高接口遍历法适合OA、CRM、ERP、SaaS等系统例如发现接口/api/order/10001测试/api/order/10002/api/order/10003/api/order/10004观察状态码、返回长度、返回内容是否发生变化越权漏洞挖掘思路第一步分析角色不要急着抓包先看系统系统有哪些角色游客普通用户VIP客服运营管理员第二步分析资源资源有哪些订单文件消息工资审批单日志资源越敏感价值越高资源价值用户资料高手机号高身份证严重工资单严重审批单高企业数据严重第三步建立权限矩阵高级测试人员必做的事情资源用户经理管理员订单自己部门全部工资x部门全部用户资料自己部门全部第四步寻找边界越权挖掘核心正常用户A–订单A边界用户A–订单B突破边界如果成功访问代表漏洞成立越权漏洞挖掘思维多数人思维看到GET /user?id1001直接改ID没成功那就没有漏洞高手思维第一步分析角色第二步分析资源第三步分析业务流程第四步寻找权限边界第五步验证边界真正的SRC思维高手看到GET /api/order?id1001想的不是能不能改ID而是订单属于谁谁可以看谁可以修改谁可以删除是否存在导出是否存在审批越权高危挖掘点用户中心订单系统文件系统审批系统后台管理导出接口下载接口相关工具及项目https://github.com/youmulijiang/AuthKithttps://github.com/smxiazi/xia_Yuehttps://github.com/VVeakee/auth-analyzer-plushttps://github.com/ZFYy1x/auth_analyzer_modifyhttps://github.com/F3ank/ApiScanPlus需要注意工具只是辅助而且有误报更多的还是人工去测试比较我们挖掘的是逻辑漏洞有可能只是一次脑洞就拿下一个高危最后附上一张图互动话题如果你对网络攻防技术感兴趣想学习更多网安方面的知识和工具可以看看以下题外话题外话黑客/网络安全学习路线今天只要你给我的文章点赞我私藏的网安学习资料一样免费共享给你们来看看有哪些东西。网络安全学习资源分享:下面给大家分享一份2026最新版的网络安全学习路线资料帮助新人小白更系统、更快速的学习黑客技术一、2026最新网络安全学习路线一个明确的学习路线可以帮助新人了解从哪里开始按照什么顺序学习以及需要掌握哪些知识点。对于从来没有接触过网络安全的同学我们帮你准备了详细的学习成长路线图学习规划。可以说是最科学最系统的学习路线大家跟着这个大的方向学习准没问题。**读者福利 |***CSDN大礼包《网络安全入门进阶学习资源包》免费分享 *安全链接放心点击我们把学习路线分成L1到L4四个阶段一步步带你从入门到进阶从理论到实战。L1级别:网络安全的基础入门L1阶段我们会去了解计算机网络的基础知识以及网络安全在行业的应用和分析学习理解安全基础的核心原理关键技术以及PHP编程基础通过证书考试可以获得NISP/CISP。可就业安全运维工程师、等保测评工程师。L2级别网络安全的技术进阶L2阶段我们会去学习渗透测试包括情报收集、弱口令与口令爆破以及各大类型漏洞还有漏洞挖掘和安全检查项目可参加CISP-PTE证书考试。L3级别网络安全的高阶提升L3阶段我们会去学习反序列漏洞、RCE漏洞也会学习到内网渗透实战、靶场实战和技术提取技术系统学习Python编程和实战。参加CISP-PTE考试。L4级别网络安全的项目实战L4阶段我们会更加深入进行实战训练包括代码审计、应急响应、红蓝对抗以及SRC的挖掘技术。并学习CTF夺旗赛的要点和刷题整个网络安全学习路线L1主要是对计算机网络安全的理论基础的一个学习掌握而L3 L4更多的是通过项目实战来掌握核心技术针对以上网安的学习路线我们也整理了对应的学习视频教程和配套的学习资料。二、技术文档和经典PDF书籍书籍和学习文档资料是学习网络安全过程中必不可少的我自己整理技术文档包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点电子书也有200多本书籍含电子版PDF三、网络安全视频教程对于很多自学或者没有基础的同学来说书籍这些纯文字类的学习教材会觉得比较晦涩难以理解因此我们提供了丰富的网安视频教程以动态、形象的方式展示技术概念帮助你更快、更轻松地掌握核心知识。网上虽然也有很多的学习资源但基本上都残缺不全的这是我自己录的网安视频教程上面路线图的每一个知识点我都有配套的视频讲解。四、网络安全护网行动/CTF比赛学以致用当你的理论知识积累到一定程度就需要通过项目实战在实际操作中检验和巩固你所学到的知识同时为你找工作和职业发展打下坚实的基础。五、网络安全工具包、面试题和源码“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等感兴趣的同学不容错过。面试不仅是技术的较量更需要充分的准备。在你已经掌握了技术之后就需要开始准备面试我们将提供精心整理的网安面试题库涵盖当前面试中可能遇到的各种技术问题让你在面试中游刃有余。如果你是要找网安方面的工作它们绝对能帮你大忙。这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的如果大家有好的题目或者好的见解欢迎分享。参考解析深信服官网、奇安信官网、Freebuf、csdn等内容特点条理清晰含图像化表示更加易懂。内容概要包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…**读者福利 |***CSDN大礼包《网络安全入门进阶学习资源包》免费分享 *安全链接放心点击文章来自网上侵权请联系博主