開発者がセキュリティについて考えていないと批判されることはしばしばある。しかしLinuxカーネルの生みの親であるLinus Torvalds氏は、開発者やエンドユーザーのことを気に掛けないセキュリティ関係者の存在に嫌気がさしているようだ。
同氏は米国時間11月17日、Linuxカーネルのメーリングリストにおいて、カーネルのセキュリティ強化という名目で開発プロセスをないがしろにしようとした一部の開発者らを強く批判した。その後同氏は21日に別の投稿で、近視眼的にセキュリティを追求する彼らの行為に対する自らのフラストレーションについて、より落ち着いた論調で説明した。
Linus Torvalds氏
提供:Aalto University/YouTube
Torvalds氏は、カーネル内でセキュリティを多層化するのは良い考えだという点には同意しつつも、ある種の実装方法は好ましいものではなく、特にプロセスに悪影響を与えてユーザーのマシンを停止させたり、カーネルのコアの部分を破壊したりしてユーザーや開発者に迷惑を掛けてしまうのは良くないとしている。同氏は、詰まるところユーザーが存在しなければ、極めてセキュアなカーネルを実現する意味などないと主張している。
Torvalds氏はセキュリティ開発者らに対して、「セキュリティ強化を目指すにあたっては、『害をなすなかれ』をモットーとすべきだ」と同投稿で述べ、大局的な視点からものごとを見るよう釘をさした。
ことの起こりは、「Google Pixel」の開発に従事するあるセキュリティ技術者が17日に、カーネルの堅牢化を主眼に置いて作成したパッチのプルリクエストを出したことだった。Torvalds氏はこれに対して、同パッチが厳密なテストを経ていない点に憤慨するとともに、このようなプルリクエストが出される背後には「その他のことを置き去りにしてもよいほどセキュリティが重要だ」という態度があるのではないかと推測している。
同氏は、セキュリティ技術者が不正なアクセスを発見した際において、さまざまなものの見方が存在するという点を指摘している。セキュリティ技術者にとってはそれで作業が終わるかもしれないが、開発者にとっては「まずい(不正な)アクセスは単なる症状でしかないため、バグを本当の意味で除去するうえで報告、デバッグ、修正という一連の手順を経る必要がある」という。
同氏は「私は開発者として、まず報告を受けたいのだ。しかし、あなた方がプロセス内においてユーザーのプログラムを動作不能にする場合、私のところに実際に報告が寄せられることは*あまり*ないだろう。というのも、目立たないアクセスというものはたいていの場合、非常にまれで嫌らしいケースであり、さもなければ既に発見されているはずだ。カーネル内では、ドライバなどにこういったものが存在することが多いだろう」と述べている。
「これはカーネルであるため、そしてドライバであるため、バグを除去してしまうことで、保持されているさまざまなロックに悪影響が及ぶ可能性が高い。あるいは、割り込み中に影響が発生した場合、非常に重要なロックが保持されているため、運が悪ければマシン全体が停止する可能性もある」(Torvalds氏)
少なくとも著名なセキュリティ研究者1名がTorvalds氏の見方を支持しているようだ。
セキュリティ研究者Dino Dai Zovi氏はTorvalds氏の見方を支持している。
提供:Dino Dai Zovi/Twitter
この記事は海外CBS Interactive発の記事を朝日インタラクティブが日本向けに編集したものです。