当前位置: 首页 > java >正文

OFCMS代码审计-freemaker注入sql注入xxexss文件上传

环境搭建

下载地址:https://gitee.com/oufu/ofcms/repository/archive/V1.1.2?format=zip

SSTI模板注入(freemaker)

FreeMarker模板注入实现远程命令执行 - Eleven_Liu - 博客园

在admin中找到这个

发现请求的是这个

找到他

<#assign value="freemarker.template.utility.ObjectConstructor"?new()>${value("java.lang.ProcessBuilder","calc.exe").start()}

这么输入然后保存

刷新

文件上传

查看源代码可以发现

这个是通过新建file来改文件的所以我们可以直接从后端来改

改成后门就可以造成文件上传漏洞

XSS

56:代码审计-JAVA项目Filter过滤器及XSS挖掘 - zhengna - 博客园

先看看

有没有xssfilter过滤器

发现都只存在与前端,那就相当于没有了

那直接随便找就可以找到xss了

sql注入

跟普通的sql注入不一样,他是直接执行sql语句,不是直接的参数传入

直接跟进到代码

int update(Config config, Connection conn, String sql, Object... paras) throws SQLException {PreparedStatement pst = conn.prepareStatement(sql);//做了预编译,但是没有传入参数所以没有用config.dialect.fillStatement(pst, paras);int result = pst.executeUpdate();//这里直接执行传入的sql语句DbKit.close(pst);return result;
}

注意这个是excuteupdata所以他只会执行这种update,insert,delete这种函数,而且不会有回显,就相当于直接执行sql语句

成功操作,由于没有回显所以我们得使用报错注入

INSERT INTO of_sys_user_site (user_role_id, role_id, site_id, status) VALUES (6, extractvalue(1,concat(0x7e,user(),0x7e,version(),0x7e)), 6,5);

XXE漏洞

JRXmlloader

首先先搜索jrxmlloader

看这些类之中有哪个实现这个代码的

这里有个小技巧:因为这些类都是导入的jar包内部的,这说明,不是每个类和方法都会被使用到;
与之不同的则是项目自己写的类和方法,一般都会被用到。
因此:我们可以先查找类中方法的调用,确定有没有使用到,没有使用到就不用管了,这样可以节省大量的时间。

发现到一个,而且被writeapi调用

可以看到,同类下的execute()方法对其有调用,但是通过查找execute()的调用,发现并没有被使用。因此,此处就不需要再往下进行了。

例如:

找到一个这个,find in usages

发现被这么调用

找到前端调用的接口、

先上传一个文件到这个目录下

写入xxe的文件

成功反弹

xmlreader

也是像上面的方法一样一起找

找到了这个类

但是找使用run的类发现有很多,但是不是由run传进来的,就不知这个方法的参数是否可以调用

发现是从这里调用的

博主累了,后面就先不分析了

http://www.xdnf.cn/news/5749.html

相关文章:

  • Qt元对象系统总结
  • .NET10 - 尝试一下Open Api的一些新特性
  • 吴恩达机器学习笔记:监督学习
  • 【Python】Python常用控制结构详解:条件判断、遍历与循环控制
  • 015枚举之滑动窗口——算法备赛
  • 纽约时报发稿刊登案例:海外新闻媒体宣传如何赢得美国决策者
  • 每日一题——樱桃分级优化问题:最小化标准差的动态规划与DFS解决方案
  • 物理:海市蜃楼是宇宙背景辐射吗?
  • 【速写】use_cache参数与decode再探讨
  • 计算机网络笔记(二十四)——4.6互联网的路由选择协议
  • 基于STM32、HAL库的BMP390L气压传感器 驱动程序设计
  • Costmap代价地图
  • IOT藍牙探測 C2 架構:社會工程/節點分離防追尋
  • 2.1 微积分基本想法
  • ABP-Book Store Application中文讲解 - Part 2: The Book List Page - TBD
  • 案例-流量统计
  • 网格图之bfs
  • 水平翻转 垂直翻转 颜色处理
  • 二、HAL库的命名规则详解
  • 【Python】Python 单例模式 8 大核心应用场景深度解析(2025 新版)
  • 前端vue+elementplus实现上传通用组件
  • 非结构化数据的智能化蜕变:从混沌到知识的进化之路
  • Python教程(四)参数提取pymysql
  • 直方图详解
  • Python | Dashboard制作 【待续】
  • 1.3.3 tinyalsa详细介绍
  • 14.three官方示例+编辑器+AI快速学习webgl_buffergeometry_instancing_interleaved
  • 【语法】C++的多态
  • 专题二:二叉树的深度优先搜索
  • AI+Java开发项目——石头迷阵游戏