Linux KernelにeBPF周りの複数の脆弱性 (CVE-2017-16995, CVE-2017-16996, CVE-2017-17852, CVE-2017-17853, CVE-2017-17854, CVE-2017-17855, CVE-2017-17856, CVE-2017-17857)
こんにちは。SIOS OSSエバンジェリスト/セキュリティ担当の面 和毅です。
12/23/2017にLinux KernelにeBPF周りの複数の脆弱性情報(CVE-2017-16995, CVE-2017-16996, CVE-2017-17852, CVE-2017-17853, CVE-2017-17854, CVE-2017-17855, CVE-2017-17856, CVE-2017-17857)が公開されています。今回はこの脆弱性の概要と、各ディストリビューションの対応について簡単にまとめてみます。
Priority
Important
修正方法
各ディストリビューションの情報を確認してください。
CVE概要(詳細はCVEのサイトをご確認ください)
- http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-16995
ローカルユーザによるDoS(メモリ破壊)の可能性
重要度 – Important
Linux Kernel 4.14.8以前のkernel/bpf/verifier.c中のcheck_alu_op()関数では、符号の拡張に問題が有り、ローカルユーザがDoS(メモリ破壊)を引き起こす事が出来る可能性があります。
- http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-16996
ローカルユーザによるDoS(メモリ破壊)の可能性
重要度 – Important
Linux Kernel 4.14.8以前では、kernel/bpf/verifier.c でレジスタTrncationの誤った取扱が有り、ローカルユーザがDoS(メモリ破壊)を引き起こす事が出来る>可能性があります。
- http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-17852
ローカルユーザによるDoS(メモリ破壊)の可能性
Linux Kernel 4.14.8以前では、kernel/bpf/verifier.c で32bitのALUレジスタopsの誤った取扱が有り、ローカルユーザがDoS(メモリ破壊)を引き起こす事が出来る>可能性があります。
- http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-17853
ローカルユーザによるDoS(メモリ破壊)の可能性
Linux Kernel 4.14.8以前では、kernel/bpf/verifier.c でBPF_RSHの符号付き境界値の計算の扱いに問題が有り、ローカルユーザがDoS(メモリ破壊)を引き起こす事が出来る>可能性があります。
- http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-17854
ローカルユーザによるDoS(メモリ破壊)の可能性
Linux Kernel 4.14.8以前では、kernel/bpf/verifier.c でポインタ計算の整数値に制限を設けていなかったため、ローカルユーザがDoS(メモリ破壊)を引き起こす事が出来る>可能性があります。
- http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-17855
ローカルユーザによるDoS(メモリ破壊)の可能性
Linux Kernel 4.14.8以前では、kernel/bpf/verifier.c でスカラー値の代わりに不適切なポインタを使用していたため、ローカルユーザがDoS(メモリ破壊)を引き起こす事が出来る>可能性があります。
- http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-17856
ローカルユーザによるDoS(メモリ破壊)の可能性
Linux Kernel 4.14.8以前では、kernel/bpf/verifier.c でスタックポインタアライメントの強制が不充分だったため、ローカルユーザがDoS(メモリ破壊)を引き起こす事が出来る>可能性があります。
- http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-17857
ローカルユーザによるDoS(メモリ破壊)の可能性
Linux Kernel 4.14.8以前では、kernel/bpf/verifier.c のcheck_stack_boundary()関数では、変数のスタック読み込み操作の誤った取扱があったため、ローカルユーザがDoS(メモリ破壊)を引き起こす事が出来る>可能性があります。
主なディストリビューションの対応方法
詳細は、各ディストリビューションの提供元にご確認ください
Debian
https://security-tracker.debian.org/tracker/CVE-2017-16995
https://security-tracker.debian.org/tracker/CVE-2017-16996
https://security-tracker.debian.org/tracker/CVE-2017-17852
https://security-tracker.debian.org/tracker/CVE-2017-17853
https://security-tracker.debian.org/tracker/CVE-2017-17854
https://security-tracker.debian.org/tracker/CVE-2017-17855
Red Hat Enterprise Linux/CentOS
Ubuntu
https://people.canonical.com/~ubuntu-security/cve/2017/CVE-2017-16995.html
https://people.canonical.com/~ubuntu-security/cve/2017/CVE-2017-16996.html
SUSE/openSUSE
https://www.suse.com/security/cve/CVE-2017-16995.html
https://www.suse.com/security/cve/CVE-2017-16996.html
https://www.suse.com/security/cve/CVE-2017-17852.html
https://www.suse.com/security/cve/CVE-2017-17853.html
https://www.suse.com/security/cve/CVE-2017-17854.html
https://www.suse.com/security/cve/CVE-2017-17855.html
対処方法
各ディストリビューションの案内に従い、アップデートを行ってください。全てのRed Hat製品でパッチが行き渡っているかを確認するには、Red Hat Satelliteを使うと管理が便利でしょう。
Red Hat Satelliteを用いた一般的なErattaの適用は、『Red Hat Satellite 6でerrataを適用してみる』を
参考にして下さい。
また、OSの再起動が発生しますので、pacemakerなどOSSのクラスタ製品やLifeKeeperなどの商用のクラスタリング製品を使うとサービス断の時間を最小限にすることが出来ます。
[参考]
https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.14.8
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-16995
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-16996
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-17852
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-17853
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-17854
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-17855
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-17856
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-17857
セキュリティ系連載案内
OSSセキュリティ技術の会による日経Linuxでの連載「IoT時代の最新SELinux入門」がITPro上で読めるようになりました。技術の会代表で第一人者である中村さん等による、最新のSELinuxの情報やコマンド類等も更新されているのでお薦めです。
OSSセキュリティ技術の会によるThinkITでの連載「開発者のためのセキュリティ実践講座」がThinkIT上で開始しました。技術の会の中の人間で、最新の代表的なOSSセキュリティ技術を紹介していきます。
OSSセキュリティ技術の会により、ThinkITでLinuxSecuritySummit 2017のレポートが紹介されています。