Linux Kernelに複数の脆弱性(CVE-2017-15126, CVE-2017-15127, CVE-2017-15128) — | サイオスOSS | サイオステクノロジー

Linux Kernelに複数の脆弱性(CVE-2017-15126, CVE-2017-15127, CVE-2017-15128)

01/15/2018にLinux Kernelに複数の脆弱性情報(CVE-2017-15126, CVE-2017-15127, CVE-2017-15128)が公開されています。今回はこの脆弱性の概要と、各ディストリビューションの対応について簡単にまとめてみます。

こんにちは。SIOS OSSエバンジェリスト/セキュリティ担当の面 和毅です。

01/15/2018にLinux Kernelに複数の脆弱性情報(CVE-2017-15126, CVE-2017-15127, CVE-2017-15128)が公開されています。今回はこの脆弱性の概要と、各ディストリビューションの対応について簡単にまとめてみます。



Priority

Moderate(CVE-2017-15126,CVE-2017-15128)/Low(CVE-2017-15127)

修正方法

各ディストリビューションの情報を確認してください。

CVE概要(詳細はCVEのサイトをご確認ください)

  • http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-15126
    • use-after-freeの脆弱性

    • 重要度 – Moderate

    • Linux Kernel 4.13.6以前のfs/userfaultfd.c中にイベントメッセージを扱った際でforkが失敗した際にuse-after-freeが起きる可能性がある脆弱性が見つかりました。

      userfaultfd_event_wait_completion()関数、userfaultfd_ctx_read()関数に修正が加わっています。

      変更部分はkernelのコミット情報を参照してください。

  • http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-15127
    • ローカルユーザによるDoSの可能性

    • 重要度 – Low

    • Linux Kernel 4.13以前では、mm/hugetlb.cでのhugetlb_mcopy_atomic_pte()関数で、VM_SHARED hugetlbfsマッピングに対する過剰なページunlock操作がDoSを引き起こす可能性が有ります。

      この部分の修正は下記になります。

      diff --git a/mm/hugetlb.c b/mm/hugetlb.c
      index a1a0ac0..31e207c 100644
      --- a/mm/hugetlb.c
      +++ b/mm/hugetlb.c
      @@ -4062,9 +4062,9 @@ out:
      return ret;
      out_release_unlock:
      spin_unlock(ptl);
      -out_release_nounlock:
      if (vm_shared)
      unlock_page(page);
      +out_release_nounlock:
      put_page(page);
      goto out;
      }
      
    • http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-15127
      • DoSの可能性

      • 重要度 – Moderate

      • Linux Kernel 4.13.12以前では、mm/hugetlb.cでのhugetlb_mcopy_atomic_pte()関数でサイズのチェックが不足していました。これにより、DoSが引き起こされる可能性が有ります。

        hugetlb_mcopy_atomic_pte()関数に修正が加わっています。

        変更部分はkernelのコミット情報を参照してください。


主なディストリビューションの対応方法

詳細は、各ディストリビューションの提供元にご確認ください


対処方法

各ディストリビューションの案内に従い、アップデートを行ってください。全てのRed Hat製品でパッチが行き渡っているかを確認するには、Red Hat Satelliteを使うと管理が便利でしょう。

Red Hat Satelliteを用いた一般的なErattaの適用は、『Red Hat Satellite 6でerrataを適用してみる』
参考にして下さい。

また、OSの再起動が発生しますので、pacemakerなどOSSのクラスタ製品LifeKeeperなどの商用のクラスタリング製品を使うとサービス断の時間を最小限にすることが出来ます。

[参考]

http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-15126

http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-15127

http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-15128

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=384632e67e0829deb8015ee6ad916b180049d252

https://github.com/torvalds/linux/commit/5af10dfd0afc559bb4b0f7e3e8227a1578333995

https://github.com/torvalds/linux/commit/1e3921471354244f70fe268586ff94a97a6dd4df

セキュリティ系連載案内


セミナー情報

著者が所属しているOSSセキュリティ技術の会では、02/23/(金)に「3コマ連続 [セキュリティトラック] OSSと脆弱性管理」と題して、OSSの利用と脆弱性管理に関しての、パネルディスカッションを含めたセッションを行います。

https://www.ospn.jp/osc2018-spring/modules/eguide/event.php?eid=49がプログラム内容の詳細になりますので、是非お申し込み下さい。

—–

タイトルとURLをコピーしました