通过TleChat插件一键Getshell

TleChat网站插件是一个发布到wordpress,typecho和emlog社区上的站长聊天插件,站长聊天室插件为站长和用户提供聊天室功能,让站长与用户之间的联系更加友爱,支持文本、长文本、语音聊天、图片传输及站长之间的QQ、微信、支付宝打赏,共同建立一个友爱的联盟。

emmm,聊天

插件下载

看了看 emlog 论坛上的状况,发现一名作者开发了一款站长聊天的插件,小东之前写过一款简单的聊天应用“Anychat”,体验地址:http://chat.top15.cn ,感觉写着还是比较麻烦的,感觉插件不错,下载的人也那么多,也下载下来瞅瞅,学习。

学习快乐

一般来说,一个聊天程序,容易存在XS,SQL注入的漏洞,看了一遍源码,对于参数都使用了addslashes()函数进行转义。

0x01 上传安装插件

发现还不错,界面设计,支持按住说话(上传声音文件吧),上传文件

tlechat

既然支持上传文件,那么就很有可能存在“文件上传”相关的漏洞


0x02 挖掘漏洞

小东的本地配置了Emlog的环境,所以就下载了 emlog 版本的插件

下载地址: http://www.emlog.net/plugin/333

content/plugins/TleChat/chat/upload.php, 一看文件名就知道是上传文件的,打开瞅瞅

文件上传

主要代码:

<?php
header("Content-type: text/html; charset=utf-8");
require_once '../../../../init.php';
date_default_timezone_set("Etc/GMT-8");

$action = isset($_POST['action']) ? addslashes(trim($_POST['action'])) : '';
var_dump($action);
if($action=="ip"){
    echo client_ip(0,true);
}else if($action=="audio"){
    $mp3Name = isset($_POST['mp3Name']) ? addslashes(trim($_POST['mp3Name'])) : '';
    move_uploaded_file(@$_FILES['file']['tmp_name'], dirname(__FILE__)."/upload/audio/".$mp3Name);
    echo BLOG_URL."content/plugins/TleChat/chat/upload/audio/".$mp3Name;
}

可以看到,虽然都做了addslashes()函数的转义,但是文件操作使用了move_uploaded_file(),重要的一点是

并没有判断文件后缀 !!!

所以,任意文件上传漏洞是存在的!


0x03 验证漏洞 + exploit

因为只是任意文件上传,所以小东简单写了一个利用网页(文末可下载),直接利用吧!

利用工具

选择自己的 shell.php小马文件,大马文件都可以,然后填写上传到存在漏洞服务器上的文件名,然后上传

返回如下结果:

string(5) "audio" http://www.test.com/content/plugins/TleChat/chat/upload/audio/dyboy.php

访问链接,OK,成功上传~

phpinfo


0x04 总结

作者的插件写的很棒,安全问题也不可小觑,产品上线之前,一定要安全测试!!!最近一直在忙学校学习,以及一些创新创业的比赛,也在忙一些开发项目,小程序定制开发可联系小东!QQ:1099718640


0x05 附件下载

插件+Exploit:https://www.lanzous.com/i3roowf

发表评论 / Comment

用心评论~

金玉良言 / Appraise
依辰网络LV 1
2020-03-19 21:07
虽然只是通过友联路过,但大哥我佩服你的技术!!!
http://www.43vb.com/LV 1
2019-11-21 15:34
新魔界服务端_骑士服务端_烈焰服务端_破天服务端_决战服务端|美丽世界服务端_乱勇OL服务端_倚天2服务端_完美世界服务端_征服服务端|天堂服务端_传世服务端_真封神服务端_劲舞团服务端_天上碑服务端|永恒之塔服务端_仙境RO服务端_诛仙服务端_神泣服务端_石器服务端|冒险岛服务端_惊天动地服务端_热血江湖服务端_问道服务端_密传服务端|火线任务(Heat Project)服务端_飞飞OL服务端_洛汗服务端_天之炼狱服务端|丝路传说服务端_大话西游服务端_蜀门服务端_机战服务端_剑侠情缘服务端|绝对女神服务端_传说OL服务端_刀剑服务端_弹弹堂服务端_科洛斯服务端|魔力宝贝服务端_武林外传服务端_网页游戏服务端_页游服务端_希望OL服务端|成吉思汗服务端_剑侠世界服务端_全民奇迹服务端_挑战OL服务端|红月服务端_十二之天(江湖OL)服务端_倚天服务端_dnf服务端}传奇3sf一条龙开服40fp.comQQ1292124634
传奇sf一条龙服务端43vb.comQQ1325876192 http://www.43vb.com/
http://www.49uv.com/LV 1
2019-11-16 12:20
永恒之塔私服制作_仙境RO私服制作_诛仙私服制作_神泣私服制作_石器私服制作传奇sf一条龙302gm.comQQ2488130950
乱OL开服一条龙制作49uv.comQQ1124999543 http://www.49uv.com/
MrxnLV 2
2019-04-25 23:15
妈耶。。。别人的插件 用之前都会读一遍 哈哈
头像
DYBOY站长已认证
2019-04-29 00:19
@Mrxn:安全第一!

看来得给评论加个表情,纯文字还是没办法完全表达感情【手动滑稽】
思源LV 2
2019-04-14 23:18
东哥的文章走心 技术一流受教了
头像
DYBOY站长已认证
2019-04-16 22:01
@思源:哈哈,谬赞了,一起学习进步

Warning: Cannot modify header information - headers already sent by (output started at /www/wwwroot/blog.dyboy.cn/content/templates/dyblog/footer.php:56) in /www/wwwroot/blog.dyboy.cn/include/lib/view.php on line 23