IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 关于新正方教务系统(湖北工程学院)的one day越权漏洞的说明 -> 正文阅读

[网络协议]关于新正方教务系统(湖北工程学院)的one day越权漏洞的说明

关于正方教务系统漏洞的说明

此漏洞基于湖北工程学院教务管理系统进行演示,漏洞覆盖新正方教务系统8.0以下版本,为本人一年前提交的漏洞,所以并非0day漏洞

此漏洞影响范围巨大,几乎涉及国内一半高校的教务系统,包含武汉大学、浙江工商大学等等

而且据本人推测,此漏洞难以完全修复,因为我怀疑在该程序的设计阶段,权限验证模块与真实功能模块耦合度过高,所以到目前如此多的功能,已经难以完全修复所有页面了

此漏洞仅供学习,请勿做任何违法的事情。

本人在发布漏洞前已和本校教务系统及公司提前沟通,并已修复了较为重要的功能模块。

漏洞原理

由于没有源代码,以下部分主要为本人猜想,实际以真实源代码为主。

在任何权限的用户登录进入系统以后,会获取相应的权限,用户的会话应该是保留在服务器的session里,然后用户每次进入一个功能页面,应该都会通过服务器上的session来查询用户的角色,并分配相应的权限

在写教务系统查成绩的爬虫的过程中,我发现url中的一个get参数:”gnmkdm“是一个不可缺少的参数,去掉以后任何操作页面都会显示无权限,并且页面标题栏会变为空,于是我猜想,gnmkdm是一个控制权限和标题的参数,为了进一步验证,于是我尝试将学生的某个功能页面(比如成绩查询)中的gnmkdm参数改为其他页面(比如个人信息维护)中的值(N100808),然后我们会发现,页面标题变成了《学生个人信息维护》,而功能却还是查询成绩页面的功能,并且发现出现了个人信息维护中的按钮(如图):

image-20221219113357973

于是我初步断定gnmkdm是控制功能按钮与标题的页面,于是我又尝试摸清楚gnmkdm代码的意思,于是去掉了N100808中最后两个08,结果出现了如下画面:

image-20221219113417428

于我断定,gnmkdm这个参数是由N+”两位模块代码“+”两位控制器代码“+“两位方法代码”组成的,后续也通过验证证实了猜想

继续的,我点开标题栏的html源代码进行分析,发现代码中竟然显性地存放着功能模块的地址:

image-20221219113426359

于是我断定程序是存在一个敏感目录泄露漏洞的,接着往下走,我通过尝试,获取到了用户管理页面的路径:

http://61.183.22.151:8080/jwglxt/xtgl/yhgl_cxYhxx.html

并将学生个人信息维护权限的gnmkdm代码放入url参数,结果发现可以正确进入,验证成功具有越权操作漏洞:

image-20221219113435667

搜索自己的账户,并点击修改,发现可以修改自己的权限(验证过后改回了自己的权限,防止自己的权限对系统造成问题):

image-20221219113444944

至此是漏洞的全过程

经过我的分析,漏洞产生原因是因为权限验证没有放在基本控制器中,而是放在了标题栏的功能模块进行验证,所以提供了越权操作的可能性

建议修复方法

1、在基本控制器中,对用户验证权限,即在基本控制器中对gnmkdm的代码和用户权限进行验证,并同时对gnmkdm参数和目录进行匹配验证,防止使用一个页面的权限取操作另一个页面

2、在增删改操作时,验证用户持有权限,即在model中进行控制

3、将敏感页面全部设置操作密码,防止越权以后能够进行操作

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-12-25 11:42:15  更:2022-12-25 11:42:21 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/7 4:54:51-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码