PublicCMS开源CMS系统的部署与安全测试
文章目录前言IDEA部署前言为了进一步学习源码审计、提升代码能力,在 Gitee 上找了一个开源的 CMS 项目:PublicCMS ,该项目的知名度还是挺可以的(实际上我在项目中还遇到了客户用该系统的……):官方给出了公网演示站点可直接进行项目体验:演示站点:https://www.publiccms.com/;后台演示:https://cms.publiccms.com/admin/(演示账号
前言
为了进一步学习源码审计、提升代码能力,在 Gitee 上找了一个开源的 CMS 项目:PublicCMS ,该项目的知名度还是挺可以的(实际上我在项目中还遇到了客户用该系统的……):
官方给出了公网演示站点可直接进行项目体验:
- 演示站点:https://www.publiccms.com/;
- 后台演示:https://cms.publiccms.com/admin/(演示账号/密码 test/test)。
Public CMS 的架构图如下所示:
本文将下载项目源码进行 IDEA 本地部署搭建,尝试进行源码审计、黑盒测试的方式,对该项目的安全性进行评估测试。
IDEA部署
PC 端需要提前安装好 Java(jdk1.8及以上)、IDEA、MySQL等环境。关于 PublicCMS 的部署、使用,其官网给出了指导手册:www.publiccms.com,下面来实际部署一遍。
导入源代码
1、从 Gitee 或 Github 下载项目源码,IDEA 并 open 选择导入 PublicCMS\publiccms-parent 路劲下的 pom.xml 文件:
2、随后 IDEA 将自动依据 pom.xml 下载项目依赖包,进一步在 run/Debug Configurations 将 war 包部署到 Tomcat 中:
3、运行启动项目:
浏览器自动弹出安装引导页面:
4、点击下一步,需要配置 Mysql 数据库信息(安装配置 Mysql 数据库请参见:MySQL数据库安装与配置详解 和 windows下MySQL忘记密码重置root密码),如下图所示:
创建数据库
1、接下来需要先创建、配置 Mysql 数据库,找到 publiccms-parent/publiccms-core/src/main/resources/initialization/sql,点击配置:
2、此时并未创建数据库,还需要手动创建数据库,如下图所示:
3、此时 publiccms 数据库为空,需要运行 initDatabase.sql 文件创建数据库表才行,CMD 进入 Mysql 然后执行命令source sql文件的路径即可:
成功 publiccms 数据库创建的表:
4、此时返回 IDEA 连接刚才设置的数据库,便能成功连接数据库并看到对应的表信息:
5、创建完数据库,返回浏览器继续进行 PublicCMS 安装引导流程(我猜测创建表格无需刚才手动操作……只需手动创建数据库名称并选择“初始化数据库”即可):
既然我已经手动创建数据库表了,那就勾选“直接启动”吧……
6、成功搭建本地 PublicCMS 系统:
点击访问后台,依据默认密码 admin/admin 进行登录:
然而登录后发现显示存在乱码:
7、原因是 MySQL 数据库默认的字符是 latin1,需要修改 Mysql 数据库的编码格式(参见mysql8.0设置字符编码_MySQL 8.0 版本修改字符编码),改为 UTF-8,重建数据库重新运行程序,如下图所示:
安全测试
未完待续……
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐

所有评论(0)