OFCMS代码审计-freemaker注入&sql注入&xxe&xss&文件上传

环境搭建

下载地址: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传进来的,就不知这个方法的参数是否可以调用

发现是从这里调用的

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

相关推荐
网安老伯1 天前
都2026年了,还在问网络安全怎么入门?看完这一篇你就懂了
运维·计算机网络·web安全·网络安全·wireshark·密码学·网络攻击模型
Bruce_Liuxiaowei2 天前
2026年9月第2周网络安全形势周报
网络·安全·web安全·网络安全·漏洞评级
三8442 天前
Java 模板注入(FreeMarker) · 02 · 模板引擎与 FreeMarker 语法
java·开发语言·web安全·freemarker
是逍遥子没错2 天前
一个斜杠,击穿整座网关:API网关路径前缀绕过认证实战
运维·服务器·web安全·网络安全·渗透测试·系统安全
网教盟人才服务平台2 天前
Spring4Shell 漏洞原理、利用手段与全场景防御方案
安全·web安全
小程序设计2 天前
网络安全漏洞综合实验场设计与开发
安全·web安全
持敬chijing3 天前
CentOS 从零搭建 LAMP 环境完整实战指南
linux·运维·web安全·网络安全·centos
Chengbei113 天前
红队新工具 ToShell 解析:自带 Web 控制台,AES+SM4 国密加密,载荷随机免杀,自主 Agent 自动完成渗透任务
人工智能·tcp/ip·安全·web安全·http·网络安全·系统安全
lisw053 天前
代理型人工智能与网络安全:目前的进展状况
人工智能·安全·web安全
白猫不黑4 天前
大学网安方向学习路线:零基础与有基础的学习顺序整理
学习·web安全·计算机·网络安全·信息安全·编程·src漏洞