The Linux Home Page at Linux Online

米国のセキュリティベンダー「Qualys」の研究者らは1月27日(米国時間)、「oss-security - Qualys Security Advisory CVE-2015-0235 - GHOST: glibc gethostbyname buffer overflow」において、Linuxで広く採用されている基本ライブラリGNU C Library (glibc)の__nss_hostname_digits_dots()関数にバッファオーバーフローの脆弱性が存在することを明らかにした。この脆弱性を悪用されると遠隔から任意のコードを実行される危険性があり、その際に認証情報などを必要しないため危険性が高いと認識されている。

Qualysの研究者らはこの脆弱性の動作を確認するため、32ビットおよび64ビットの双方のマシンにおいてEximメールサーバを立ち上げ、攻撃が可能であるかどうかを実証。どちらのマシンでも攻撃が可能だったと説明されている。この脆弱性は2000年にリリースされたGNU C Library glibc-2.2より存在しており、10年以上にわたって脆弱性が存在し続けたことになる。

この脆弱性には「GHOST」という名称が付けられている。バッファオーバーフローが発見された関数は__nss_hostname_digits_dots()だが、ユーザランドのソフトウェアからはgethostbyname()などの関数を呼び出すことでこの関数が実行される。このため、gethostbynameをGetHOSTbynameともじって「GHOST」と命名されている。

Qualysの研究者によると、2013年の時点でこの脆弱性を発見して、glibc-2.17とglibc-2.18の間において修正を行っているが、当時はセキュリティに関わるリスクとしては認識されていなかったため、長期サポートの対象となっているバージョンのLinuxディストリビューションではこの脆弱性が修正されることなく残り続けているという。

セキュリティ・アドバイザリでは、脆弱性を抱えるLinuxディストリビューションとしてDebian 7(wheezy)、Red Hat Enterprise Linux 6および7、CentOS 6および7、Ubuntu 12.04が挙げられている。

今回発表された脆弱性を突くには、メールサーバによる検証用にサーバで運用されているサービスに何らかのデータを送信して最終的に__nss_hostname_digits_dots()関数までたどりつけばよいため、簡単に乗っ取りが行われる可能性が高い。Linuxベンダーやプロジェクトから提供されるセキュリティ情報に注目するとともに、アップデートプログラムの提供が開始されたら迅速に適用することが推奨される。

2014年はOpenSSLの脆弱性「Heartbleed」やbashの脆弱性「ShellShock」など、広範囲にわたって影響を与える危険性の高い脆弱性が発見された年だった。そして、2015年も同様に、広範囲にわたって影響する脆弱性「GHOST」が発見され、昨年に引き続きセキュリティ情報の収集と適切な対応を継続に行っていく必要がある。