crack@redis.io

今日、redisに格納されているはずのデータが全て消え、crackit というキーが登録されていることを確認した。

該当キーのバリューを見ると、sshのキーと最後に crack@redis.io と、、、なんだこりゃ?

非常にまずいので調査してみると、redis 作者がセキュリティ問題としてあげていた。
http://antirez.com/news/96

恥ずかしいことに、他サーバからの接続試験で、結構前にIPアドレス制限を解放した時がある。
その後閉じてなかったようだ。

対処方法は2つある

① redis.conf の bind でIPを制限する(閉じる)
ローカルIPアドレスのみ接続できるように指定し、redisを再起動する
$ sudo vi /etc/redis/redis.conf
bind  127.0.0.1
$ sudo /etc/init.d/redis restart

② iptables でredisのポートを閉じる
redisのポートにアクセスできるIPアドレスのみ指定し、iptabelsを再起動する
$ sudo vi /etc/sysconfig/iptables
[IP帯域で許可する場合]
-A INPUT -p tcp -m tcp -s [接続させるIP帯域] –dport 6379 -j ACCEPT
[ポート閉塞する場合]
6397の行をコメントアウト(もしくは6379関連は記載しない)
$ sudo /etc/init.d/iptables restart

 

複数のサーバーから redis 接続を許可する場合 bind 設定を削除するか 0.0.0.0 と指定するが、この状態で iptables で制限をかけないとネット上で解放していることになる。(=redis を操作できてしまう)

今回は、iptables でIP帯域で制限しておきました。

しかし、恥ずかしい…
けど、気づかせてくれてありがとう。

2015/11/24追記
施行時の影響確認をこちらで検証しました