找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

2886

积分

1

好友

400

主题
发表于 7 小时前 | 查看: 1| 回复: 0

在银行、证券、金融等行业,普遍存在类似ERP、面向企业侧的各种管理、采购、供应商等系统。这类系统权限模型复杂、业务流程繁多,常因设计与逻辑疏忽导致严重的安全问题。本文基于实战经验,总结梳理了此类系统特有的12类常见高危漏洞,并提供详细的挖掘方法与案例,希望能为从事安全/渗透/逆向测试的朋友提供一份实战指南。

该类系统的常见功能与角色

典型的系统功能围绕企业注册与内部管理展开,其核心角色通常分为管理员、子管理员和员工,各自拥有不同的权限集。

企业管理类系统角色与权限思维导图

常见高危漏洞挖掘详解

1. 短信伪造

漏洞描述:常见于注册、添加员工、各类通知功能处。由于短信内容中包含企业名称、组织名称等用户可控字段,且可以指定任意手机号发送,导致攻击者可伪造官方通知或钓鱼信息。

挖掘方法:测试时,仔细观察短信内容中的可控字段(如用户名、项目名、组织名),尝试修改这些字段为恶意内容。

1.1 注册处伪造

在注册页面,将用户名填写为恶意内容(如“恭喜中奖领奖链接test.com”),然后填写目标手机号获取验证码。

用户注册表单界面

伪造的短信验证码内容

1.2 添加员工处伪造

先修改自己的个人用户名为恶意内容,然后在“新增用户”功能中,将手机号填写为受害者的。

用户管理界面添加恶意用户

1.3 各类通知短信处伪造

在项目管理、缴费通知等功能中,将可控的项目名称、组织名称等修改为恶意内容,再执行“发送短信”操作。

缴费人管理界面

伪造的缴费通知短信

2. 审核绕过

漏洞描述:系统开发为图方便,仅在登录时通过某个接口校验账号的审核状态,登录后未做二次校验;或在注册时存在隐藏的账号类型字段,可手动修改绕过企业资质审核。

2.1 前端状态校验绕过

登录后,页面提示“审核中”,功能被前端隐藏或跳转。
企业资质认证审核中提示

通过浏览器开发者工具分析JS,找到判断审核状态的接口,使用抓包工具(如Burp Suite)设置响应包替换规则,将审核状态改为“已通过”。
BurpSuite设置匹配替换规则

替换后刷新或重新登录,即可访问完整功能界面。
企业详情页面,显示已通过审核

2.2 注册账号类型绕过

提交注册时抓包,观察并修改statustypeaccountType等可能代表账号状态的参数值(例如从待审核的2改为已通过的1)。
注册请求包,修改status字段

登录后台查询,账号状态直接显示为“通过”。
企业审批列表,状态为通过

3. 实名认证接口爆破

漏洞描述:企业法人身份认证接口,需要正确匹配“姓名+身份证号”。若该接口未设置有效的验证码或频次控制,可被用于爆破公民身份信息,造成敏感信息泄露及第三方接口资源消耗。

身份认证失败提示

身份认证接口正常响应

挖掘方法:对实名认证接口进行高频请求测试,观察是否会触发锁定或返回不同的错误信息。

4. 垂直越权

漏洞描述:系统功能模块多,权限划分细,容易出现低权限账号(如普通员工)能访问高权限角色(如管理员)接口的情况。

挖掘方法:准备两个不同权限的账号A(低权)和B(高权)。用A账号登录并抓取访问某个功能的数据包,然后将数据包中的认证信息(如Cookie、Token)替换为B账号的,重放请求。如果成功返回数据,则存在越权。

5. 权限提升

漏洞描述:通过逻辑漏洞,低权限账号给自己或其他账号赋予更高权限。常见于账号信息修改、新增账号功能处。

挖掘方法:修改请求包中代表权限的字段,如roleroleIdaccount_typetypes等。

5.1 修改自身账号权限

登录一个子账号。
子账号信息界面

进入信息编辑页面,点击保存时抓包。修改数据包中account_type等字段的值(可事先用主账号操作一次观察其值)。
修改账号信息的请求包

再次登录,子账号已变为主账号权限。
账号列表显示权限已变更

5.2 新增高权限账号

以低权限子账号登录,进入“用户管理-添加账号”功能。
系统功能权限树状图

勾选一些可见的功能选项后保存抓包。观察数据包中权限ID的规律(如["2011", "2022"]),手动添加更多高权限ID(如通过Fuzz寻找1000-1200范围的ID)到数组中。
添加角色权限的请求包

用新添加的账号登录,发现已拥有远超创建者自身权限的功能。
拥有全部管理权限的菜单

6. 权限回收不及时/权限维持

漏洞描述:管理员对某个账号进行降权或禁用操作后,由于目标账号登录态(Session/Token)未及时失效,导致其仍能以旧权限操作系统,甚至重新给自己提权。

复现步骤

  1. 账号A(管理员)修改账号B(子管理员)的权限,取消其“企业管理”模块权限。
    角色管理列表
    取消角色权限勾选
  2. 此时账号B并未被强制下线,仍可正常访问“企业管理”功能。
  3. 账号B重新调用赋权接口,给自己重新加上被取消的权限,绕过管理员的降权操作。
    权限设置成功提示

漏洞利用:攻击者可定时请求权限同步或提权接口,实现权限维持。

7. 静态敏感文件遍历

漏洞描述:系统上传的身份证、合同等敏感文件,若使用自增ID、短日期等可预测的规则命名,可能导致未授权访问与信息泄露。

挖掘方法

  1. 在认证处上传一张身份证,记录返回的文件URL。
    身份证上传表单
    上传的身份证图片
  2. 分析URL命名规则,例如 https://example.com/upload/20250415/123456.jpg
  3. 遍历日期(20250415)和序号(123456),尝试访问其他用户的敏感文件。

8. 压缩包解压DoS(压缩炸弹)

漏洞描述:在支持ZIP文件预览的功能点,上传一个精心构造的“压缩炸弹”(体积很小但解压后体积极大的压缩包),可能导致服务器在解压时CPU和磁盘I/O过载,造成拒绝服务。

压缩炸弹原理示意图

复现案例:在新建代办事项功能处,上传一个压缩炸弹文件。
代办事项上传压缩文件
点击预览,触发服务器解压,消耗大量资源。
解压后占用2GB空间提示

9. 账号覆盖

漏洞描述:在注册、修改信息等环节,未正确校验企业信用代码、手机号等唯一键是否已存在,导致新数据覆盖老数据。有时,系统仅在前置查询接口校验,最终提交接口存在逻辑缺陷。

9.1 注册覆盖

在注册页面,输入一个已存在的企业信用代码,但手机号填写自己的。
企业查询注册界面
绕过或正常获取验证码后提交,可能成功注册并“覆盖”或“关联”了原企业,直接获得该企业下的账号权限。
注册成功提示
获得企业管理员权限界面

9.2 信息修改覆盖

在企业信息维护页面,点击保存时抓包,将企业信用代码修改为其他已存在的企业代码。
企业信息维护表单
修改企业信用代码的请求
提交后显示成功,此时目标企业的信息被篡改,甚至可能导致其账号无法登录。
登录失败提示
数据库查询异常错误

10. 任意手机号注册/占用

漏洞描述:在“添加员工”等功能中,只需输入手机号而无需该手机号的验证码(验证由员工后续完成),导致攻击者可将任意手机号添加到自己的企业下,造成受害者无法正常注册该系统。

复现步骤:在添加用户功能中,手机号字段填入任意目标手机号。
新增用户表单
提交后,该手机号即被系统占用,原机主可能无法自行注册或会收到莫名邀请。

总结

企业管理类系统业务逻辑复杂,是Web安全测试中的重点和富矿。上述漏洞多数源于业务流程设计缺陷与权限校验不严,在测试时需要深入理解系统业务,并善用抓包改包、并行测试、参数Fuzz等技巧。安全建设需要开发与测试共同努力,在功能迭代的同时筑牢安全防线。对这类话题感兴趣的开发者与安全从业者,也欢迎在云栈社区交流分享更多实战经验与防护方案。




上一篇:CES 2026观察:AI硬件产业全景与智能眼镜爆发前夜
下一篇:树莓派4安装RISC OS 5.30复古系统:我的配置体验与应用速览
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-1-27 18:26 , Processed in 0.248448 second(s), 40 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表