某小众CMS漏洞挖掘与实战
概述
在前段时间实战攻防演练中发现很多医院都使用同一个管理系统,网站后台都是同一路径:/adm/index.php,但是我从未见过,且页面没有任何Banner信息,如图:
通过许久的搜索终于找到了一些极其相似的源码,但都没有源码来源,其中有一套来自网软志成医院科室诊所门诊部网站系统源码,现在也下架了。还好我有备份:点击下载
环境搭建
运行环境使用Windows Server 2008 R2 64位和phpstudy进行搭建。部分源码已使用Zend加密,因此使用Zend解密工具进行解密,如图:
在安装过程中发现第二步需要填写信息获取试用授权,如图:
但填写之后程序仍然无法获取试用授权,可能是因为太旧了吧。因此需要修改代码将第二步绕过,以便安装成功进行学习。将www\install\install.php
第二步代码直接改为$donext = TRUE;
,如图:
此外程序还将检测授权,因此需要将程序中涉及检测授权的代码删除或注释,在www\includes\func\common.inc.php
文件找到授权检测函数,如图:
将所有php文件中调用此函数的部分注释或删除即可。由于解密后的部分源码不完整,导致验证码无法显示。将www\adm\codeimg.php
中缺少的部分代码补充如下:
然后将www目录中的文件放到网站根目录,访问网站即可开始安装:
安装完之后即可开始审计代码、挖掘漏洞并测试了,如图:
代码审计
使用RIPS仅扫描源码根目录发现存在代码执行、文件泄露、文件包含、SQL注入等漏洞,如图:
查看SQL注入漏洞,直接将变量的值进行字符串拼接,如图:
由于此处没有将错误信息输出页面,因此无法利用该注入点进行SQL注入,此外RIPS能扫描的文件数量较少,因此使用Seay扫描所有文件,如图:
发现大量文件包含漏洞、SQL注入漏洞、任意文件读取/删除漏洞和代码执行漏洞等。先看看SQL注入类的,发现基本都是没有错误回显的,无论手工注入还是使用sqlmap都未成功,然后查看登录文件adm/admin.php
,如图:
在adm/func/adm.inc.php
文件发现存在SQL注入漏洞,但是同样没有错误回显,且验证码校验仅仅是将Cookie中的SYSIMG参数的值逆序后加一,如图:
不得不说代码很。。。怪不得使用Zend加密。虽然不能利用SQL注入获取数据库中的数据和Getshell,但是可以利用SQL注入绕过登录进入后台。
实战
使用Payload:a'or'1'='1' or'1
。在用户名输入框输入该payload,然后随便输入密码,填写验证码即可绕过登录进入后台。
成功登录后台,如图:
编写Goby Poc
查询规则就根据验证码那里查询,如图:
检测规则加入必要的请求头,指定SYSIMG的值,提交的验证码为该值倒序加一即可,然后将Payload填入Post数据,如图:
测试响应部分将响应值设置为window.location='main.php'
即可,如图:
测试Poc,如图:
虽然单IP扫描通过了,但是在实际扫描中发现Goby并不能识别HTTP请求头中的SYSIMG参数,因此无法扫描到该漏洞。
修改之后就可以扫描到了,如图:
防护建议
1、修改所有存在漏洞的代码
2、使用D盾、安全狗等安全软件
某小众CMS漏洞挖掘与实战相关推荐
- 【PHP代码审计】站帮主CMS漏洞挖掘
文章目录 任意文件删除 SQL注入漏洞 任意文件删除 这里随便挑了一个cnvd上最新发布的cms漏洞 查找unlink函数,任意文件删除常见函数 看到一个return unlink($path);感觉 ...
- 如何入门漏洞挖掘,以及提高自己的挖掘能力
0x01:前言 大家好我是米斯特团队的一员,我的id香瓜,我们团队在这次i春秋第二次漏洞挖掘大赛中,包揽了前五名,我key表哥一不小心拿了一个第一,导致很多人来加他好友问他,如何修炼漏洞挖掘能力,我今 ...
- 【封神台】漏洞挖掘XXE wp
前言 掌控安全里面的靶场漏洞挖掘XXE实体注入,学习一下! 做XXE题目之前我们先了解一下XXE实体注入的原理和利用方法 XXE基础知识 XML用于标记电子文件使其具有结构性的标记语言,可以用来标记数 ...
- SRC漏洞挖掘之偏门资产收集篇
写这篇文章的目得,就是跟大家分享一下平时我挖src漏洞的一些经验,当自己挖到某个站点的漏洞时,往往就会欣喜若狂的往src平台上提交,得到的结果却是 "漏洞已重复,感谢提交" ,其实 ...
- Web漏洞挖掘(一)登录认证模块的暴力破解实例
Web漏洞挖掘(一)登录认证模块的暴力破解实例 暴力破解的定义 暴力破解的分类 暴力破解的威胁 涉及的基础知识模块 相关硬件(高速GPU推荐) 基于Burp Suite的暴力破解实例 暴力破解的定义 ...
- 企业网站制作网站安全评估技术与漏洞挖掘技术
近些年在信息技术的作用下, 人们的生活方式.生活质量发生了翻天覆地的变化, 而这一切都得益于对网络技术的应用与使用.当然与之对应的是在网络技术的不断应用过程中, 网络安全问题渐渐成为了人们必须重视的问 ...
- 攻防比赛中系统层漏洞挖掘-身份隐藏解决方案
系统层漏洞挖掘 系统层漏洞的挖掘需要很多相对高级的漏洞挖掘方法.从实战角 度看,以下6种挖掘方法最为实用:代码跟踪.动态调试.Fuzzing技 术.补丁对比.软件逆向静态分析.系统安全机制分析. 1) ...
- 漏洞挖掘所需能力梳理,查漏补缺(更新中~)
简单地梳理一下想靠漏洞挖掘工作地岗位,需要哪些工作能力 基础能力 web漏洞利用 由于web系统是大多数公司业务系统或对外服务系统的架构形式,所以Web是推荐先掌握的能力 在漏洞挖掘中常用的漏洞形式包 ...
- CMS漏洞复现小结--沙窝李的王
今天学习了CMS漏洞复现,先搭建好环境了 搭建环境: dedeCMS (CNVD-2018-01221): DeDeCMS官网:http://www.dedecms.com 网站源代码版本:DeDeC ...
最新文章
- 表的垂直拆分和水平拆分
- 一篇带你搞透回溯算法
- 07.敏捷项目管理——推测阶段笔记
- java错误switch找不到符号,Java使用StringBuilder时--找不到符号
- C#的变迁史10 - C# 5.0 之其他增强篇
- (王道408考研操作系统)第一章计算机系统概述-第一节4:中断和异常
- 中兴通讯午后复牌:A股涨停 港股盘中涨逾53%
- 【Flink】Flink 写入 Clickhouse 大对象直接进入老年代 导致OOM
- Effective Java 学习笔记(第53条:接口优先于反射机制)
- 负频率与双边频谱(信号与系统的基本概念)
- spring报“Could not resolve placeholder”错误
- 6个实例电路,详解雷击浪涌的防护
- 手机tim邮箱服务器密码错误,qq邮箱登录失败显示session timeout解决方法
- Unity 3D中实现敌人追踪
- xshell xftp下载
- php unshift,PHP Ds\Vector unshift()用法及代码示例
- 公司邮箱怎么注册?公司企业邮箱怎么登录?
- 怀念—伤心者,不痛不痒,冷暖自知
- jieba中文分词组件
- UC Berkeley AI Project -MindsDB 学习