Security risk of vim swap files (seclists/oss-sec)

元スレッドURL http://seclists.org/oss-sec/2017/q4/145

※vimのdev listにも投げかけているらしい

 

まとめると

  • vimはファイルを編集開始すると同じファイル名に .swp とついたバックアップ用ファイルを作る
  • 正常終了すると削除されるが、クラッシュ時やKill時には削除されない(次に同ファイルを開こうとしたときに「前回クラッシュしなかったかい?」と出るやつ)
  • この.swpファイルについて、例えばWordpressのwp-config.phpを編集したときのファイル.wp-cnofig.php.swpができてそれが外部に公開されてしまうリスクがあるよ

という話。

 

なので、投稿者によるとvimの動きを変えて、.swpファイルは/tmpに保存すべき、パーミッションもセキュアにすべき、ファイル名も同ファイル名.swpでなくてもとファイル名がわからない名前にすべき、等といった提案をしている。しかし同スレッドではいまいち同意を得られていない様子。

 

いやそもそも/tmpじゃファイルが削除されちゃうこともあるからホームフォルダ ~/.vim 以下にすべきだとか、ドットから始まると気づかないで公開なりgitにアップロードしちゃったりすることがあるからドットつけないようにすればいいんじゃないのとか、色々な意見が出てきていて。でもWebサーバーがドットで始まるファイルを返さなければ良いっていうのが良いんじゃないかななんて思ったり。

あとは一般ユーザーでもlsは常に-aオプションがつけるようにしておく方が良いのかもね。見えすぎて困ることもそんなにないだろうし。簡単なのはaliasですね。

echo alias ls='"ls -a"' >> ~/.profile

しかし以下のようにGoogle検索してみるとけっこう出てくるので恐ろしい。自社ドメインくらいはチェックしておいたほうが良いかも。

filetype:swp inurl:wp-config

 

結論:Emacs最強