HDLC(High-Level Data Link Control)は、モデムやX.25、フレームリレー、ISDNなどの、今ではほとんど使われないネットワーク技術で使用されているプロトコルだ。
ロシア企業Positive Technologiesの若手Linux開発者であるAlexander Popov氏は、Linuxカーネルのこのプロトコルを処理するモジュールに存在するセキュリティホールを発見し、修正した。このバグは、2009年6月からLinuxカーネルに潜んでいたという。
具体的に言えば、Popov氏はLinuxカーネル4.10.1以降のn_hdlcドライバ(drivers/tty/n_hdlc.c)に競合状態が発生する脆弱性を発見した(CVE-2017-2636)。このモジュールはTTY/Serialドライバ開発ツリーの一部だ。このセキュリティホールを悪用すると、ローカルの特権を持たないユーザーが高い特権を獲得したり、サービス妨害(DoS)攻撃を引き起こしたりすることが可能になる。
この脆弱性のCVSS基本評価基準のスコアは7.8で、深刻度は「重要」となっている。この脆弱性の悪用は比較的容易で、標的システムに特別なハードウェアや周辺機器は必要としない。
全体的に見れば、管理者はできるだけ早くこの問題にパッチを適用すべきだ。すでにカーネル自体のパッチは用意されており、多くのLinuxディストリビューションでアップデートが準備されつつある。
Red Hatによれば、「Red Hat Enterprise Linux」(RHEL)の6と7、およびリアルタイムOSである「RHEL MRG 2」のカーネルパッケージにこの問題が存在するという。同社はまもなくセキュリティアップデートをリリースする予定だ。
「Ubuntu」の開発を行っているCanonicalは、すでにいくつかのバージョンのUbuntu向けにパッチをリリースした。SUSEはまだパッチを準備中だが、こちらも間もなく公開されると思われる。
読者の中には、「どうして2017年にもなってモデムドライバの心配をする必要があるのか」と思う人もいるだろう。今ではこのモジュールが使われることはほとんどないが、ほとんどのLinuxカーネルに含まれている。通常はこれがロードされることはないが、Popov氏の説明では、「特権を持たないユーザーが疑似端末(PTY)をオープンして、TIOCSETDのioctl(入出力制御)を呼び出してライン制御をN_HDLCに設定すると、自動的にこのモジュールがロードされる」という。
利用しているディストリビューションでパッチがリリースされていない場合も、このモジュールのロードを禁止することで、問題を回避することができる。
この記事は海外CBS Interactive発の記事を朝日インタラクティブが日本向けに編集したものです。