VIM, GNU Emacsの脆弱性( VIM: CVE-2017-1000382, GNU Emacs: CVE-2017-1000383 )
こんにちは。SIOS OSSエバンジェリスト/セキュリティ担当の面 和毅です。
10/31/2017にVIM, GNU Emacsの両方に、スワップファイルのパーミッションに関する脆弱性情報(VIM: CVE-2017-1000382, GNU Emacs: CVE-2017-1000383)が公開されました。今回はこの脆弱性の概要と、各ディストリビューションの対応について簡単にまとめてみます。
Priority
Medium/Moderate
修正方法
各ディストリビューションの情報を確認してください。
CVE概要(詳細はCVEのサイトをご確認ください)
ファイルへの意図しないアクセス権限の付与
重要度 – Medium/Moderate
VIM, GnuEmacsで、ファイルを編集している際に作成されるスワップファイルは、umaskで定めたファイル制限を無視した形で作成されます。VIM等がクラッシュした際にはファイルがそのディレクトリに残ってしまうため、意図しない形でアクセス権限が付与されたファイル(スワップファイル)が、ディレクトリ内に残っている状態になってしまいます。。
例として、Debian(unstable)でテストしてみました。
ディレクトリ(/var/tmp/vim_test)のumaskを0007にします。
sios@localhost:/var/tmp/vim_test$ umask 0007
/var/tmp/vim_test以下に”test1″というファイルを作成します。
sios@localhost:/var/tmp/vim_test$ touch test1 sios@localhost:/var/tmp/vim_test$ ls -la 合計 56 drwxr-xr-x 2 sios sios 4096 11月 1 07:38 . drwxrwxrwt 337 root root 49152 11月 1 07:36 .. -rw-rw---- 1 sios sios 0 11月 1 07:38 test1
test1ファイルのotherに”r”を付与します。
sios@localhost:/var/tmp/vim_test$ chmod o+r test1 sios@localhost:/var/tmp/vim_test$ ls -la 合計 56 drwxr-xr-x 2 sios sios 4096 11月 1 07:39 . drwxrwxrwt 337 root root 49152 11月 1 07:38 .. -rw-rw-r-- 1 sios sios 0 11月 1 07:38 test1
test1ファイルをvimで編集します。
sios@localhost:/var/tmp/vim_test$ vi test1
他のターミナルを開いて/var/tmp/vim_testディレクトリを見てみると、スワップファイルが”-rw-r-r–“で作成されていることがわかります。
sios@localhost:/var/tmp/vim_test$ ls -la 合計 60 drwxr-xr-x 2 sios sios 4096 11月 1 07:39 . drwxrwxrwt 337 root root 49152 11月 1 07:38 .. -rw-r--r-- 1 sios sios 4096 11月 1 07:39 .test1.swp -rw-rw-r-- 1 sios sios 0 11月 1 07:38 test1
umaskは”0007″になっているため、たとえtest1というファイルのotherに”r”が付いていたとしても、スワップファイルは新たに作成されたファイルであるためotherの”r”は取れて”-rw-r—–“になっていなければなりません。このスワップファイルには修正中のファイルの内容が含まれているため、万が一vimがクラッシュしてスワップファイルが残り、その後test1のパーミッションを”-rw-r—–“に書き直したとしても、otherに読み込みを許可しているスワップファイルが残留してしまうことになります。
主なディストリビューションの対応方法
詳細は、各ディストリビューションの提供元にご確認ください
Debian
https://security-tracker.debian.org/tracker/CVE-2017-1000382
https://security-tracker.debian.org/tracker/CVE-2017-1000383
Red Hat Enterprise Linux/CentOS
Ubuntu
https://people.canonical.com/~ubuntu-security/cve/2017/CVE-2017-1000382.html
https://people.canonical.com/~ubuntu-security/cve/2017/CVE-2017-1000383.html
SUSE/openSUSE
対処方法
各ディストリビューションの案内に従い、アップデートを行ってください。全てのRed Hat製品でパッチが行き渡っているかを確認するには、Red Hat Satelliteを使うと管理が便利でしょう。
Red Hat Satelliteを用いた一般的なErattaの適用は、『Red Hat Satellite 6でerrataを適用してみる』を
参考にして下さい。
[参考]
http://www.openwall.com/lists/oss-security/2017/10/31/15
セミナー情報
2017/11/29 19:00に、OSSセキュリティ技術の会 第二回勉強会を行います。
今回のテーマは新世代のOSS認証基盤です。
https://connpass.com/event/69314/がプログラム内容と申し込みの詳細になります。奮ってご参加下さい。
セキュリティ系連載案内
OSSセキュリティ技術の会による日経Linuxでの連載「IoT時代の最新SELinux入門」がITPro上で読めるようになりました。技術の会代表で第一人者である中村さん等による、最新のSELinuxの情報やコマンド類等も更新されているのでお薦めです。
OSSセキュリティ技術の会によるThinkITでの連載「開発者のためのセキュリティ実践講座」がThinkIT上で開始しました。技術の会の中の人間で、最新の代表的なOSSセキュリティ技術を紹介していきます。
OSSセキュリティ技術の会により、ThinkITでLinuxSecuritySummit 2017のレポートが紹介されています。