Googleの研究者は、glibcライブラリ(
GNU Cライブラリ )に重大な脆弱性を
発見しました 。 ドメイン名の解析を行う
getaddrinfo()
関数では、バッファオーバーフローが発生します。エラーにより、攻撃者がリモートでコードを実行できます。
CVE-2015-7547と呼ばれる脆弱性の悪用は、脆弱なデバイスまたはアプリケーションがハッカーによって制御されるドメインおよびサーバーにリクエストを送信する場合、および中間者攻撃の場合に可能です。
すべてが非常に深刻です
Googleの研究者はブログで、特定のアドレスに何度も接続しようとしたときに使用したSSHクライアントでセグメンテーションエラーが発生し始めたときに脆弱性を発見したと書いています。 処理中に、障害はglibcのバッファオーバーフローが原因であり、このエラーがリモートコードの実行につながる可能性があることが判明しました。
glibcライブラリは、多くの一般的なLinuxアプリケーションで使用されています-研究者によると、wget、SSH、sudo、およびcurlユーティリティの脆弱性に関する情報はすでに確認されています。 脆弱なアプリケーションの総数は非常に多いため、完全なリストを作成することはできません。ArsTechnicaとの会話の中で、セキュリティ研究者のKen
White氏は、脆弱性はすべてのLinuxディストリビューションとPython、PHP、Ruby on Railsプログラミング言語に含まれていると述べました。 暗号通貨ビットコインを操作するためのほとんどのアプリケーションにエラーが含まれている
という報告があります。
研究者の驚いたことに、glibcのメンテナーは昨年
7月にエラーについて知っていたことが判明しました。 さらに、Googleの専門家と並行して、また彼らとは独立して、Red Hatの専門家もこの脆弱性を発見したことが判明しました-会社の製品も脆弱です(
リスト )。 その結果、2つのチームが協力してパッチを作成しました。
Githubでは、概念実証の
エクスプロイト実装も利用できます。
自分を守る方法
Glibcサポートスペシャリストは、すでにバグ修正
パッチをリリースしています。 場合によっては、インストールが非常に簡単ですが、脆弱なバージョンのglibcを使用してソフトウェアをコンパイルした場合は、新しいバージョンで再コンパイルする必要があります。
何らかの理由でパッチをインストールすることが不可能な場合、研究者は脆弱性を悪用する可能性を減らす方法を説明します。 まず、操作には大きなUDPまたはTCP応答パケット(2048バイト以上)が必要です。このようなパケットが1つずつ到着すると、スタックが上書きされます。 これは、ローカルDNSリゾルバーが受け入れる応答でパケットのサイズを制限することで対処できます。 これは、DNSMasqまたは同様のプログラムを使用して実行できます。 さらに、UDP応答のサイズを制限するDNSサーバーにのみDNSクエリが送信されるようにする必要があります。
Glibcのメンテナーは、脆弱性に対処する方法についても推奨しました。 これらには、512バイトを超えるUDP DNSパケットを拒否するファイアウォールの使用、AF_UNSPECの使用拒否、/ etc / resolv.confの「options edns0」、および「RES_USE_EDNS0」または「RES_USE_DNSSEC」が含まれます。
このエラーを含まないパッケージがあります-たとえば、Google AndroidモバイルOSでは、glibcの代わりにBionicライブラリが使用されます。 さらに、個人ユーザーが使用する多くのデバイス(ホームルーターなど)は、インストールされた代替glibcライブラリでも動作します。これについては現在、脆弱性に関する情報はありません。
glibcがリモートコード実行につながる可能性のある重大な脆弱性を検出したのはこれが初めてではありません。 そのため、2015年1月に、GHOSTと呼ばれる脆弱性
CVE-2015-0235が発見されました。 攻撃者がシステムをリモートで制御できるようにしました。 Debian 7(wheezy)、Red Hat Enterprise Linux 6&7、CentOS 6&7、Ubuntu 12.04、Zend Framework v2、Wordpress、その他の人気のあるアプリケーションのユーザーがヒットしました。
Positive Technologiesは、システムが脆弱である可能性があるすべてのユーザーと開発者に、できるだけ早くセキュリティ更新プログラムをインストールすることを推奨します。 さらに、glibcのメンテナーとGoogleの研究者の推奨事項を適用し、
MaxPatrolなどの特別な保護ツールを使用することにより、脆弱性を悪用するリスクを減らすことができます。