linux 危険なglibcのセキュリティ対応 centos redhatの場合 (CVE-2015-7547)

2016/03/01 CentOS, Linux

linuxCVE-2015-7547
Linuxを利用している環境は多いと思います。クラウドやVPSなどでも手軽に利用できることから、以前より多くの環境に導入されています。そんなLinuxですが、今月に入り、大きなセキュリティホールが重要なライブラリであるglibcに見つかりました(CVE-2015-7547)。

対処レベルが「緊急」の為、早速、自社のサーバーに対して対応を行いました。まだ対応を行っていないサーバーも多いかと思いますので、glibcの脆弱性 CVE-2015-7547への具体的な対応方法を紹介していきます。

スポンサーリンク

1.脆弱性の内容

脆弱性の内容は詳細はJPCERTのCVE-2015-7547に関するページ「glibc ライブラリの脆弱性 (CVE-2015-7547) に関する注意喚起」によると

glibc ライブラリにはバッファオーバーフローの脆弱性 (CVE-2015-7547) があります。本脆弱性を使用された場合、遠隔の第三者によって、任意のコードを実行されたり、サービス運用妨害 (DoS) 攻撃が行われたりするなどの可能性があります

とのこと。
遠隔の第三者によって、任意のコードが実行されるという内容から、かなり危険な脆弱性と分かります。
脆弱性の対象となるglibcのバージョンは、2.9 から 2.22 まで。脆弱性の詳細については、JVNのサイト「JVNVU#97236594 glibc にバッファオーバーフローの脆弱性」に詳しく記載されていますが、ここ最近のLinuxディストリビューション殆どが合致しています。
具体的には、以下のディストリビューションとバージョンが脆弱性をもつglibcを利用しており、脆弱性に合致するようです。

– RedHat
– Red Hat Enterprise Linux Server EUS (v. 6.6)
– Red Hat Enterprise Linux Server AUS (v. 6.5)
– Red Hat Enterprise Linux Server AUS (v. 6.4)
– Red Hat Enterprise Linux Server AUS (v. 6.2)
– Red Hat Enterprise Linux Server EUS (v. 7.1)
– Red Hat Enterprise Linux version 6
– Red Hat Enterprise Linux version 7
– CentOS
– CentOS version 6
– CentOS version 7
– Debian
– squeeze
– wheezy
– jessie
– Ubuntu
– Ubuntu 15.10
– Ubuntu 14.04 LTS
– Ubuntu 12.04 LTS

本記事では、CentOSのversion 6/7を利用している環境を前提として、手順を記載していきます。
Redhatでもほぼ、同様の手順で対応が可能ですので、参考にして頂ければ幸いです。

2.対応したglibcのバージョン

CentOSのフォーラム「CVE-2015-7547 glibc fix」を見ると、CentOSで脆弱性 CVE-2015-7547へ対応するためには、glibc-2.12-1.166.el6_7.7.x86_64の適用が必要になるようです。(x84_64はOSが64bitの場合。)

3.glibcのバージョンアップ

ターゲットとなるバージョンが分かったところで、バージョンアップの具体的な手順について記載していきます。
CentOS、Redhatの場合、yumコマンドで実行します。yumコマンドでのアップデートはインターネットへ
接続している環境が前提となります。ここではyumコマンドが利用できる前提で進めていきます。
(Redhatは有償のディストリビューションのため、Redhat Networkの登録が行われていないと、yumコマンドが利用できません。「redhat networkをRHN ClassicからRed Hat Subscription Managementへ変更する」を参考に、redhat networkへ登録を行って下さい。)

3-1.現バージョンの確認

まず、現状のglibcパッケージのバージョン確認を行います。パッケージのバージョン確認はyumコマンド、もしくはrpmコマンドにて行います。
rpmコマンドの場合

yumコマンドの場合

上記の場合、glibcが名前に含まれるパッケージがシステムに4つインストールされており、全てのバージョンが 2.12-1.166.el6_7.3であることが分かります。対策済みのバージョンは glibc-2.12-1.166.el6_7.7 ですので、バージョンアップが必要なことが分かりました。

次に、yum check-updateコマンドで、glibcの2.12-1.166.el6_7.7がアップデート対象として表示されるかを確認します。

上記の結果から、2.12-1.166.el6_7.7がバージョンアップ後のバージョンであることが確認できました。

3-2.glibcのバージョンアップ

yumコマンドでパッケージのバージョンをアップデートするためには、システムの管理者 (root)へ移行する必要があります。suコマンドで、管理者へ移行します。

管理者へ移行するとプロンプトが$から#になります。
この状態で、yum updateコマンドを実行してglibcパッケージをアップデートします。
glibc以外のパッケージもアップデートしたい場合は yum updateだけ(パッケージ名の指定なし)を実行すると、全てのパッケージがアップデートされます。本記事ではglibcパッケージのみを対象としていますので、アップデートするパッケージとしてglibcを指定しています。

アップデートの情報が表示されます。内容を確認して問題が無ければ、yを入力してアップデートを実行します。

yを入力すると、パッケージのダウンロードとインストールが開始されます。

アップデートが完了すると、Complete!が表示されます。

3-3.アップデートの確認

glibcのアップデート後のバージョンを確認します。出力結果として、glibcパッケージ4つのバージョンが 2.12-1.166.el6_7.7になっていれば、完了です。

rpmコマンドでのバージョン確認

yumコマンドでのバージョン確認

4.サーバーの再起動

glibcについてはアップデートを行った後に、サーバーの再起動が必要になります。
タイミングをみて、rebootコマンドでサーバーを再起動します。syncコマンドはメモリ内にあるデータをHDDやストレージなどに同期するコマンドです。データベースなどメモリに大量のデータを保存するような環境では実行しておくことをお薦めします。

再起動後にログイン出来るようになったら、サービスを動作確認を行います。
以下のコマンドはオープンしているtcpポートをプロセス名で表示させます。

コマンドを実行し、サービスを行っているポートが全てオープンしていることが確認出来れば、アップデートは完了です。

5.まとめ

glibcについては、OSのシステムに関連する部分で、あまり更新を行っていない環境だと、かなりの数の依存関係アップデートでアップデート作業に時間がかかると思われます。
そのようなパッチを適用していない環境や、むやみにサーバーの停止ができない環境の場合は、バックアップを取得した上で、停止時間を調整(余裕をもって)の上、アップデートを実行することをお薦めします。OSレイヤーでの緊急レベル、セキュリティホールは数が少ないこともあり、見逃しがちですが、このような大きなものには是非、対処を行いたいですね。

システムでお困りのお客様

もし、貴社で、

  • サポート切れのサーバやネットワーク機器の入れ替えをしたいが、どうしたらよいかわからない
  • サーバやネットワークの管理を行う社員がいないため困っている
  • 業務に利用している機器のセキュリティが大丈夫か心配
  • 機器の障害で、業務への影響が発生している
  • 社内の要望に対して、どのようなシステムを導入したらよいか解らない

など、サーバーやネットワーク、セキュリティでお悩みの方、新規のシステム導入を検討中の方。
多くのシステム構築を行い、成功させてきた実績をもつ弊社が、その問題を解決します。
お気軽にお問い合わせ頂き、貴社の問題解決にお役立てください。

お問い合わせ・ご相談はこちらから

Facebookでのご購読が便利です。

Twitter・Feedlyでもご購読できます。

Twitterでフォローする Feedlyでフォローする

関連する情報

redhat-repositry

Redhat Enterprise Linux 6.4 (x64) でリポジトリを追加する

単純にphpの拡張機能でphp-mbstringをインストールしようとyumコマンドでsearc

redhat-subscription

redhat networkをRHN ClassicからRed Hat Subscription Management へ変更する

ここ最近のredhat enterprise Linuxを利用されている方なら気づいているかと思

centos-install

CentOS 7 インストール Linuxを始めるにはインストールからがお勧め

ここ最近、お客様と会話してみて思うのが、意外とLinux使ってないなーということ。 Linux

cron-time-setting

Linuxのcronを秒単位で設定・実行する方法

秒単位でcronを実行したいときって、思ったよりあるかと思います。先日、設定が必要になりましたの

wp-malware

wordpressのマルウェア対策 Linuxのmaldetectで実行する

wordpressを実行しているウェブサイト、多いですよね。 このウェブサイトでも利用していま

linux-output

Linux/Unixで設定ファイルのコメント行「以外」を抜き出したい時

システムの設定書を作成するときに、コメント行以外(先頭に#のついた行)を抜き出したいと思ったこと

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

  • スポンサーリンク