【php代码审计】熊海cms1.0
0x01 环境安装
1. 熊海cms1.0 (http://js.down.chinaz.com/201503/xhcms_v1.0.rar)
2.seay代码审计工具
3. phpstudy (php版本不能太高)
0x02 审计之旅
直接拉到工具中,可以看到可能存在大概34个漏洞,我们一一来看吧。

0x03 文件包含
文件是index.php,一眼就看出来了这**不是文件包含嘛,什么都没过滤

include函数,关闭了错误提示。这里参数r没有任何过滤直接放到include()函数中了,但是这里include是在files目录下的,我们验证一下,在files目录下建立一个shell.php ,内容为<?php phpinfo();?>

接着,那就开始访问呗,成功触发。嘻嘻嘻!!

0x04 sql注入
首先肯定要看登陆页面了,如果能够爆出用户名和密码就完美了。
查看login.php,入眼的就是一段令人激动的代码


这里user和password是直接获取POST传来的参数,并没有进行任何过滤,很容易想到万能密码的使用,但是继续看代码我们发现,这里是先进行user的查询,如果user在数据库中存在,那么就进行password的比较,是将我们输入的password进行md5哈希一下,然后与数据库中的进行比对,所以说万能密码在这里是没有用的,但是我们却可以用报错注入得到用户名和密码
得到数据库 seacms,


这边直接给出payload, 在manage表中含有账号和密码
user=123' or extractvalue(1,concat((select concat(password,0x7e) from manage)))#&password=

但是这里有一点比较坑的是,这里注出来的password最多只有27位,但是数据库存的是password的MD5值,有32位,所以说得到的md5是不对的,需要进行两次注入才能得到完整的密码,以extractvalue()函数为例,payload需要这样写

拼接一下,得到密码:123456 账号admin
0x05 sql注入2
我们跟进去 newlink.php文件,这也太舒服了吧,有太多POST传参的变量,都没进行过滤。但是一般都是看到的select 查询语句,今天第一次遇到 insert values 插入语句 ,好好学习。

这边我们就控制的是name变量,其余变量不能为空也没有过滤,我们就随便输入了,
payload:
123' or updatexml(1,concat((select concat(0x7e,password,0x7e) from manage)),0) or '


这是完整闭合的sql语句,这是为什么我们需要在语句的末尾还要加上一个 '

0x06 sql注入3
这次我们看到reply文件,直接跟着id, 都没过滤任何东西,那就直接搞了。。不不不,渗透测试,,我们可以控制的是id参数,


【php代码审计】熊海cms1.0的更多相关文章
- 熊海CMS_1.0 代码审计
熊海是一款小型的内容管理系统,1.0版本是多年前的版本了,所以漏洞还是比较多的,而且审计起来难度不大,非常适合入门,所以今天我进行这款cms的代码审计.程序安装后使用seay源代码审计系统打开,首先使 ...
- 熊海CMS xhcms v1.0代码审计
有空的时候就进行小型CMS的代码审计,这次审计的对象是熊海CMS v1.0 本地环境安装好了之后,可以看到提示安装了锁文件 说明重装漏洞应该不会存在了,这时候丢进seay代码审计系统的代码也出结果了, ...
- 熊海cms v1.0 完全代码审计
很久以前写的,写这个东西更多的是为了说明我自己的一个思路,即按照程序功能点进行代码审计, 这样经过一段时间训练,熟悉了某种功能的正确和错误实现方法,遇到类似的代码就可以很快看出是否有问题了 --- 0 ...
- 【代码审计】UKCMS_v1.1.0 文件上传漏洞分析
0x00 环境准备 ukcms官网:https://www.ukcms.com/ 程序源码下载:http://down.ukcms.com/down.php?v=1.1.0 测试网站首页: 0x0 ...
- 【代码审计】LaySNS_v2.2.0 前台XSS跨站脚本漏洞
0x00 环境准备 LaySNS官网:http://www.laysns.com/ 网站源码版本:LaySNS_v2.2.0 程序源码下载:https://pan.lanzou.com/i0l38 ...
- 【代码审计】LaySNS_v2.2.0 System.php页面存在代码执行漏洞分析.
0x00 环境准备 LaySNS官网:http://www.laysns.com/ 网站源码版本:LaySNS_v2.2.0 程序源码下载:https://pan.lanzou.com/i0l38 ...
- PHP代码审计理解(一)----Metinfo5.0变量覆盖
0x01 漏洞简介 这个漏洞是metinfo5.0变量覆盖漏洞,并且需要结合文件包含.我使用的cms版本是5.3,事实上已经修复了这个漏洞(5.0的cms源码已经找不到了哈),但是我们可以借他来学习理 ...
- JQUERY省、市、县城市联动选择
JQUERY 插件开发——CITYLINKAGE(省.市.县城市联动选择) 第一部分:背景 开发源于需求,本次城市联动选择插件算是我写插件的一个特例吧,不是我目前工作需要些的,算是兴趣驱使吧.之前 ...
- js实现省市区联动
先来看看效果图吧,嘻嘻~~~~~~~~~~~~~~~~~~~· 代码在下面: 示例一: html: <!DOCTYPE html> <html> <head> &l ...
随机推荐
- linux静态库
库文件可以理解为别人写好的现成的代码,但是看不见源码,只提供程序入口.库又分为动态库和静态库,静态库是在编译的时候将库编译进可执行程序中,运行时不再依赖库文件,而动态库是在运行时加载,运行时需要依赖库 ...
- Dapper原来还可以直接这样写SQL,很强大哦
网络上对Dapper的解释是这样的: Dapper是一个简单的.NET对象映射器,在速度方面具有"King of Micro ORM"的头衔,几乎与使用原始的ADO.NET数据读取 ...
- Property or method "previewUrl" is not defined on the instance but referenced during render. Make sure that this property is reactive, either in the data option, or for class-based components,
Property or method "previewUrl" is not defined on the instance but referenced during rende ...
- git commit前检测husky与pre-commit 提交钩子
git commit前检测husky与pre-commit git commit前检测husky与pre-commit - 简书 https://www.jianshu.com/p/f0d31f92b ...
- windows IOCP 实践
关于 windows IOCP 有人说 windows IOCP 是 windows 上最好的东西. IOCP 是真正的异步 IO,意味着每次发起一个 IO 请求,该调用本身则立即返回, 而包括 IO ...
- editplus 5.0 破解
先安装软件,安装步骤就不解释了,很傻瓜式的,一直下一步就行. 到了最重要的一步,请看仔细了!!! 在两个输入框中分别输入 注册名 Vovan 注册码 3AG46-JJ48E-CEACC-8E6 ...
- SpringBoot-文件系统-Excel,PDF,XML,CSV
SpringBoot-文件系统-Excel,PDF,XML,CSV 1.Excel文件管理 1.1 POI依赖 1.2 文件读取 1.3 文件创建 1.4 文件导出 1.5 文件导出接口 2.PDF文 ...
- Prometheus监控Kafka
Prometheus监控Kafka 1.Prometheus监控Kafka,Docker方式 Kafka监控优秀博文: 简书:whaike:[监控]Kafka - 详细指标 CSDN:GeekXuSh ...
- 单体架构、SOA架构、微服务架构
- Flink-v1.12官方网站翻译-P012-Stateful Stream Processing
有状态的流处理 什么是状态? 虽然数据流中的许多操作一次只看一个单独的事件(例如事件解析器),但有些操作会记住多个事件的信息(例如窗口操作符).这些操作被称为有状态操作.一些有状态操作的例子. - 当 ...