【ブックレビュー】情報セキュリティの敗北史
僕は業務ではセキュリティを担当しているため、セキュリティに関する様々な知識を勉強してきました。しかしそのセキュリティの概念、標準、技術がどのような経緯で生まれたかについては知りませんでした。この本はコンピュータにセキュリティ脆弱性が生まれたその瞬間と、コンピュータ+インターネットの歴史に伴いどんどん複雑・難解になっていったセキュリティにどう対峙してきたかを歴史を紐解きます。学生時代一番好きな科目が「歴史」だった僕には神本です。セキュリティ担当者でなくても、昨年の尼崎市のUSBメモリ紛失や半田病院のランサムウェアなど、今や我々の身近なニュースとして聞く情報セキュリティリスクについて豊富な比喩をもとに分かりやすく解説しており、読みやすいです。訳者のあとがきも僕の書評よりよほどちゃんとまとまっています(笑)
コンピュータを用いてアメリカの軍戦略研究を目的としたランド研究所からすべてが始まります。当初ユーザ:コンピュータは1:1で対峙していました。人が考え、命令を入力するとコンピュータが計算を行う。しかし人が考えている時間はコンピュータの高価なリソースは働いておらず無駄になります。効率化を図るためにタイムシェアリング型のコンピュータが生まれましたが、これがセキュリティリスクの萌芽となりました。つまり「複数のユーザが同時に1つのコンピュータにアクセスできるようになったため、互いのプログラムを妨害したり、観てはいけない機密データが見れるようになってしまった」と。 さらにランド研究所では、研究所のコンピュータが機密業務を行っていない場合は民間にレンタルすることでコストを回収する案が生まれました。しかしそうなると今まで以上に権限の分類・機密性の確保が必要になります。CISSPの勉強でも、”MAC(強制アクセス制御)”は特にCIAのC(機密性)を守るために軍で生まれたセキュリティ施策だと学びましたが、MACの概念はランド研究所で生まれました。その一方で数学者の考えたMACを実現する”ベルーラパドューラモデル”(これもCISSPではお約束ですね)は軍人など規律を守り、命令服従、機密性が高い情報を取り扱うユーザを対象としており、民間でコンピュータを利用する一般人とはギャップがあります。一般人はそのルールが現実に即していないと受け入れてくれません。機密情報を軍関係者ほど取り扱わない民間では情報セキュリティで重視するのはCではなくI(完全性:データが改ざんされないこと)であり、せっかく政府が作った機密がかっちりしたコンピュータを保証する”オレンジブック”の条件を満たしてくれないのです。
そしてインターネットの登場はさらなるコンピュータの可能性とセキュリティ脆弱性を生み出すこととなります。世界で初めてスパムメールを送った人や世界で初めてコンピュータウィルスをばらまいた人が知られているとは。その汎用性から爆発的に普及したUNIXも、セキュリティ脆弱性については重視していませんでした。セキュリティは「正常に動かなかった場合、本来の想定とは異なる使い方をされた場合」に顕在化するものであり、非要件定義であることからどうしても優先度が下がってしまいます。ドットコム・ブームによるバブルの熱狂はさらにセキュリティの優先度を下げ、脆弱性のあるOS、ソフトウェアやブラウザを送り出してしまいます。それは消費者のニーズでしたし、企業がビジネスで成功を収めるのには必須でした。しかしブラウザ戦争やWindows95の大ヒットによりMicrosoftが天下をとり、Microsoft製品が社会のインフラの根幹を担うようになると、Microsoft製品のセキュリティ脆弱性とそれによる損害、対策にかかるコストは大きな問題となります。その結果、2022年1月15日にビル・ゲイツが全社員宛に送ったメモ「信頼できるコンピューティング」にて
「.NETを信頼できるコンピューティングのプラットフォームとして位置付けることが、あらゆる仕事よりも重要であることが明らかになった。」 「もし今、昨日の追加とセキュリティ問題の解決の選択を迫れられることがあるなら、私たちはセキュリティ問題のほうを選択しなければならない」
とセキュリティの重要性と新しいアプローチを求めることとなりました。今から20年前の記事ですが、ITmediaにちゃんと残っていました
セキュリティ界隈で名が挙げられる”静的解析”・”ファジングテスト”や”SDL(セキュリティ開発ライフサイクル)”はこのマイクロソフトの信頼できるコンピューティング・イニシアチブの成果だったとは。こうした取り組みによりソフトウェアはセキュアになり、ハッカーやスクリプトキディには攻撃が難しくなってきました。勝った勝った!
・・・とはなりませんでした。現代ではセキュリティのもっとも重要かつ弱点は「人」であることは知られています。私たちはどうしても簡単なユーザビリティを望みますが、セキュリティを向上させるにはシステムを簡単に使えないようにする必要があります。ハッカーにとってマイクロソフトの一流エンジニアと一般市民、どっちと戦うほうが得かは言うまでもありません。その結果生まれたのが皆さんにも身近な”フィッシング(詐欺)メール”。今から20年前の2003年に存在が言及されました。あるいはこちらも皆さん耳にタコなパスワード問題(弱いパスワード、パスワードの使いまわし)です。これまでユーザブルセキュリティ研究者はパスワードの代替手段を提示できませんでしたが、僕はパスキーの普及に期待しています。2023年は各Webサイトにどんどんパスキーが実装されてほしいです。
iOS・Androidも対応「パスキー」とはなにか? パスワード時代の終焉
エクスプロイトやそれによる国家間のハッキング戦争についての記述もあります。この本は歴史の流れを綴っている本なので詳細については「サイバー戦争」のほうが詳しいです。エクスプロイトを高額で売買する仲介を行う企業は”死の商人”と批判されるのも分かります。ただしかつては脆弱性スキャナーも”子供に銃を与えるようなもの”と言われましたし、脆弱性を見つけて通知するハッカーは”倫理に劣る”と軽蔑されました。すべての物事に対する批判は一面的であり、裏返しの部分があることは認識しないといけません。事実エクスプロイトをセキュリティ企業や国家が買い取ることでエクスプロイトが世間に知られる前にバグにはパッチが当てられ、平和な世界が取り戻されつつあります。しかしその結果、ロマンや知的快楽を得る場所を失ったハッカーたちは「スタントハッキング」という注目を浴びるようなハッキングを行い承認要求を満たすようになります。電車や自動車のような交通手段から、医療機器までがハッキングの対象となりました。それはスキルが必要とはいえ、やっていることは炎上系Youtuberと大差ありません。悲観的な気持ちになります。 またスタックスネットがどのようなプログラムだったかについてはこの本のほうが分かりやすく説明しています。スタックスネットはワームであると同時にAPT攻撃だったのですね。巨大な資本、資金を持つ国家が行うハッキングの破壊力はあまりに暴力的です。もはや普通の情報セキュリティ対策では防御できません。 余談ですが本の中で紹介されていた”割れ窓の寓話”のエピソードはSNS上の詭弁でよく使われる技法なので知っておいたほうが良いと思いました。
さて、ここまで情報セキュリティの歴史ー敗北史を学んだところで、僕らは歴史から学ぶことはあるのでしょうか。テクノロジーの世界の進歩はあまりに早く、問題を解決したかと思うと新たな問題が生まれます。社会の根幹を担うコンピュータにはあまりに多くの分野と交差しており、過去の行いをバッサリと切り捨てることはできません。そして”今現在安全(であるように見える)”ことは”もしかしたら安全でない場所があるかもしれない”(これはセキュリティ担当者が常に心の中で持っている不安です)と同義であり、セキュアを証明するのは困難ですし、リスクを挙げていけば終わりはありません。この本で主張する「セキュリティベンダーやセキュリティ機関が正しい情報を発信していない」という点も注目に値します。僕はセキュリティ担当であり、彼らを当然信頼したいのですが、インターネットラジオ『セキュリティのアレ』で度々言及されるように、彼らも利益を得る必要があり、物事を必要以上に大きく、不安にさせるように見せたりすることはあります。 歴史から得られたことは賢者の石も銀の弾丸もないという地味でまっとうな回答です。情報セキュリティの分野だけでなくあらゆることに言えることですが、それまでの積み重ねの結果問題が生まれた以上、一気に解決することはできませんし、仮にそれを強引に超法規的な方法で行ってしまうと、大きな犠牲と苦痛を伴う上に同じ理屈で揺り戻しが起きうると僕は思います。
最後に本書の示す解決策は以下になります。 ・セキュリティ脆弱性を排除するよう設計されたプログラミング言語を使う ・エンドユーザに判断させない(=自動でセキュリティパッチを当てるようにするなど) ・ユーザはダブルチェックを行う ・前線で戦うセキュリティ担当者や、非専門家に役立つ学術論文を分かりやすくリスト化するポータルサイトの提供