oasys系统代码审计

news/2024/12/26 0:49:23/文章来源:https://www.cnblogs.com/hetianlab/p/18530596

简述:

oasys是一个OA办公自动化系统,使用Maven进行项目管理,基于springboot框架开发的项目,mysql底层数据库,前端采用freemarker模板引擎,Bootstrap作为前端UI框架,集成了jpa、mybatis等框架。

下载地址:https://github.com/misstt123/oasys

此项目部署极为简单,我使用的是phpstudy的5.7版本mysql,修改application.properties配置,在IDEA导入oasys.sql数据后,就可以直接运行

并访问后台地址:http://localhost:8088/logins

注意别端口冲突

CSRF:

登录后台,在用户面板处,修改便签功能存在csrf漏洞。

点击修改,抓包,点击生成CSRF的Poc:

将生成Poc的URL复制到浏览器,访问:

访问后,发现已经按照Poc上内容进行了修改:

SQL注入:

代码分析:

在pom文件发现采用mybatis依赖:

全局搜索${

找到outtype参数,定位到xml文件:

符合sql注入条件,于是开始找对应接口,参数,全局搜索allDirector字段:

定位到接口层,于是找接口实现类,发现无,于是全局搜索该接口名称,找哪里引用了此接口:

发现AddController层引用该接口,并通过mapper进行数据库操作,在该controller层搜索原接口方法,定位到具体代码块:

可以看到该参数没有经过任何过滤,于是根据代码块注释进行漏洞复现:

在后台找到通讯录,找到外部通讯录,点击添加联系人:

抓包找到对应数据包:

将localhost换成自己对应的IP,放入sqlmap验证成功:

其实从最初的xml文件来看,其它几个参数也存在sql注入。

【----帮助网安学习,以下所有学习资料免费领!加vx:dctintin,备注 “博客园” 获取!】

 ① 网安学习成长路径思维导图
 ② 60+网安经典常用工具包
 ③ 100+SRC漏洞分析报告
 ④ 150+网安攻防实战技术电子书
 ⑤ 最权威CISSP 认证考试指南+题库
 ⑥ 超1800页CTF实战技巧手册
 ⑦ 最新网安大厂面试题合集(含答案)
 ⑧ APP客户端安全检测指南(安卓+IOS)

存储XSS:

登录后台后,用户处点击修改信息,插入xss代码造成弹窗。

根据提交保存的接口全局搜索:

找到相关信息,根据代码分析,无任何过滤直接存储,造成xss漏洞:

此后台很多地方也均无过滤,可以直接插入xss代码执行。

任意文件读取漏洞:

在控制层UserpanelController处,如下代码存在逻辑错误导致任意文件读取:

可以看出此代码块是用来处理图像请求,并将数据返回到http响应的代码。

这段代码我初看并没看懂,于是对代码进行详细分析:

红框代码逻辑很简单,先传入的f.getPath()值,再通过FileInputStream进行文件读取并返回到http响应。

关键就是f.getPath()的值怎么来的?

如上红框代码,f.getPath()的值来自于rootpath与path的拼接,而path的值则是,先通过request.getRequestURI()获取,再将/image替换为空得来。

但rootpath的值呢?

于是我在该类搜索rootpath找到其定义代码:

发现以@Value注解定义rootpath的值,而@Value注解的作用就是从项目配置文件中获取信息,于是转到配置文件,搜索关键字:rootpath

继续回到controller代码,此时找到rootpath的值,也明白了读取文件的逻辑,于是尝试构造多个/image..路径读取我D盘upload下的文件:

如下图,读取成功:

  

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/827746.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

科大讯飞离线lunix tts demo使用

项目中需要用到后台服务端用文本生成语音,网上大部分都是通过ai大模型推理出来的,还有写其他方式的,效果和生成时间都比较不理想,但是讯飞生成的只需要零点几秒,不愧是行业NO1,下面说下怎么使用。 1、下载官方demo。 2、在官方demo目录下,执行source 32bit_make.sh 或64…

高效数据集成:从旺店通到金蝶云

旺店通旗舰奇门数据集成到金蝶云星空:柏为销售出库单07.25 在现代企业的运营中,数据的高效流转和准确对接是确保业务顺畅运行的关键。本文将分享一个实际案例——如何通过轻易云数据集成平台,将旺店通旗舰奇门的数据无缝集成到金蝶云星空系统中。具体方案名称为“柏为销售出…

对比山海鲸报表和Tableau,哪款报表软件更好用?

在数据分析和报表制作的领域,企业往往面临着选择合适工具的难题。尤其是当市场上有很多功能强大的工具时,如何从中挑选出最适合自己需求的报表软件成为了一个关键问题。今天,我们将对比两款报表工具——山海鲸报表和Tableau,看看它们各自的特点和优势,帮助你做出明智的选择…

团子东子开奖了,这泼天的富贵!

秋招已经接近尾声了,最近各家公司的薪资也陆续公布了,今天在逛某客时,被一个 25 届 C9 硕的薪资羡慕到了,一起来感受下这泼天的富贵吧。 这个同学今年秋招总共拿到了 3 个 Offer,分别是:小米:28K*15,总包 45W,sp,北京。 美团:30K*15.5,总包 47W,sp,上海。 京东:…

odoo中对多条数据按条件进行分类汇总 read_group的用法总结并抽取出公式

今天在工作中遇到一个这样的问题。要求:做一个打印模板实现下面图中的分类汇总 py3o://for="o in object.delivery_containers_line.read_group(domain=[(delivery_order_id,=,object.id)], fields=[customer_id, delivery_order_id, sales_order_id, supplier_id,purcha…

百万年薪!2024 Salesforce高薪职位排行

随着Salesforce在全球的普及,这一平台不仅带来了新的职场机会,更为从业者提供了优渥的薪资待遇。 最近的Salesforce薪资调查显示,Salesforce生态系统中不同职位的薪资水平相当可观,尤其在美国市场,一些顶级岗位的年薪可达到令人惊叹的百万级别。今天我们就来细数2024年Sal…

初识AI大模型,ollama使用,llama factory大模型微调,lama.cpp模型转换guff

最近了解了下生成式AI对话,下面是自己的一些尝试记录。ollama 安装及使用1、安装我是在windows环境下安装的,很简单,访问:https://ollama.com/ ,下载windows安装包,打开安装就行了。cmd输入ollama -v检验是否安装成功。2、配置在环境变量的用户变量中加入如下几个:   …

zlibrary中文版入口及电子书客户端/app(2024更新)

Z-library是一个全球范围内庞大的数字图书馆之一,其藏书量非常丰富。截至最新数据,Z-library共收录了超过9,826,996册电子书以及84,837,646篇学术期刊文章。这个数字图书馆覆盖了从经典文学巨著到前沿理工学科,从人文艺术瑰宝到专业学术论文的广泛领域,几乎能够满足每一位求…

Playwright:掌握Web自动化测试的新利器

在快速迭代的互联网环境中,Web应用的测试工作日益繁重。传统的手动测试不仅耗时耗力,还难以保证测试的全面性和准确性。面对复杂多变的测试需求,你是否也曾感到力不从心? 别担心!本周四晚上八点,我们特别策划了一场关于Playwright的公开课,旨在帮助大家掌握这款Web自动化…

NOIP2024加赛2

NOIP2024加赛2 题目来源: 2023NOIP A层联测18\(T1\) HZTG5733. 新的阶乘 \(100pts\)预处理素数后直接对 \(1 \sim n\) 进行质因数分解因为有太多冗余枚举导致无法通过。考虑枚举最终形式。具体地,从质因数的角度入手,设当前枚举的质数为 \(p\) ,暴力求出 \(ip\) 中 \(p\) 的…

用处多多!信创PostgreSQL认证证书含金量

PostgreSQL是目前讨论比较多的数据库技术,国内很多大的企业都在开发基于PostgreSQL的数据库产品,比如腾讯云TDSQL-PG版、阿里云PolarDB-PG版、人大金仓等等,考取PostgreSQL数据库证书对个人在数据库领域的职业发展具有多方面的积极作用。以下是对其用处的详细分析: ​ 一、…

南沙C++信奥赛陈老师解一本通题 1225:金银岛

​【题目描述】某天KID利用飞行器飞到了一个金银岛上,上面有许多珍贵的金属,KID虽然更喜欢各种宝石的艺术品,可是也不拒绝这样珍贵的金属。但是他只带着一个口袋,口袋至多只能装重量为w的物品。岛上金属有ss个种类, 每种金属重量不同,分别为n1,n2,...,nsn1,n2,...,ns,同时…