『マトリックス』の脆弱性

マトリックスの実装の不備が、システムの安定性とセキュリティを脅かしています。

『マトリックス』3部作(『マトリックス』、『マトリックス リローデッド』、『マトリックス レボリューションズ』)は、メタバースの実装例を、メタバースという概念がメジャーになる前に描き出した作品群です。この仮想世界(むしろ、ニューラルインタラクティブのシミュレーションと呼ぶべきか)を作ったのは、過去に人類を打ち負かして奴隷状態に置いた、人工知能すなわちAIでした。その過程でバグがなかったかというと、そうではありませんでした。今回のテーマはそのバグ、つまりマトリックスの脆弱性です。

人間の登場人物が持つ情報は限られ、AIからは誤った情報が繰り返し提供される中、視聴者は、何が真実なのか、自分の見方がどれほど現実的なのか、どの瞬間においても正確に知ることができません。

しかし、私たちが注目するのは哲学的な真意ではなく、情報セキュリティです。ここでは、第3作の結末で事実と確定したことを基に、マトリックスのセキュリティについて考察します。

※以下、ネタバレがありますのでご注意ください

ザイオンをベースにするレジスタンスとの戦い

3部作の最後で、マトリックスに侵入したレジスタンスとの争いがすべて仕組まれたものだったと明らかになります。今回の反乱が成功するには、マトリックスに一定数の外敵が必要です。そのため、エージェントたちが本当にモーフィアス一味を捕らえようとしているのか、それとも大乱闘のまね事をしているだけなのか、確かなことは分かりません。サイバーセキュリティの観点で言えば、バグなのか仕様なのか、つまり、設計上の欠陥か意図的に(おそらくハニーポットのようなものとして)マトリックスに導入されたものか、不明瞭な状況です。

レジスタンスの船から放たれる非合法な信号

マトリックスに住んでいるのは、システムに接続された奴隷状態の人間のアバター、そして元々はコードの形で存在していたプログラムのアバターです。そもそも、どうしてシステム外部からの信号を中継する仕組みが実装されていて、第三者のアバターをアップロードできるようになっていたのか、はっきりしません。

このような異常は、誰かが何らかのデバッグをクローズし忘れた結果であることが普通です。ただ、この場合は開発者が人間ではないので、この説明では筋が通りません。何にせよ、リモート接続を意図的に実装したのだとしても(つまり、バグではなく仕様だったとしても)、自動プログラマーたちはなぜ非合法な信号をブロックするファイアウォールを実装しなかったのでしょうか?。

非合法アバター転送システム

マトリックス内部で非合法のアバターが姿を現したり消したりするのには、電話線が必要です(仮想現実の枠組みの中で携帯電話と固定電話がどう違うのか、説明はありませんが)。その上、原則としてエージェントは電話回線を無効化することが可能です。少なくとも、モーフィアスが捕らえられたときに電話線を切断していました。しかし、マトリックスへの出入りに電話線がそれほど重要なのであれば、エージェントはなぜ電話をオペレーションゾーン全体で禁止(少なくとも無効化)しないのでしょうか?

アドレス指定システムの不備

マトリックスには、仮想現実内の特定オブジェクトを指し示す正確な位置情報がありません。そうした情報の必要性は客観的に見て明らかなのですが。非合法のアバターは仮想空間内で自分の位置情報を隠せるのだと推測できますが、まだ接続したままのネオの足取りをエージェントがシステム内で追尾するには、追加の追跡用デバイスが必要でした。アドレス指定システムに不備があることは明らかです。

そうなると、例のモーフィアスの赤いカプセルについても疑問が湧いてきます。モーフィアスによると、これは「入出力のキャリア信号を妨害するように設計されているので、きみの居場所を正確に特定できる」とのことです。なぜマトリックスは、そうした異常を監視していないのでしょうか?この「救助隊」を妨害可能であることは、とても重要に思われるのですが。

エージェントに関する理論上の制約

マトリックスのエージェントは、システムに接続された人間のアバターに一時的に取って代わることができるAIです。エージェントは従来の物理法則を無視することができますが、ある程度までです。第2作に登場する双子のエージェントは、物理法則の制約からさらに自由になっています。であれば、そうした条件付きの制約を、犯人を捕らえるための作戦の中で、せめて一時的にでも解除できないものでしょうか?

もう少し付け加えると、どういうわけかエージェントは、イヤホンを取り外すだけでマトリックスの情報システムとの接続を解除することができます。まさにこれは脆弱性です。

ザイオンのメインフレームのコード

そもそも第1作で機械たちがモーフィアスを捕らえようとしたのは、ザイオンのメインフレームにアクセスするためのコードを入手するのが目的でした。アクセスコードは、船長なら誰でも知っています。そうなると、レジスタンスの重要インフラへのアクセスコードを知る人物がなぜマトリックスに入り込む人物でもあるのか、疑問がいくつも湧いてきます。

マトリックスに接続するインターフェイスを持たない人々も乗船していることを考えると、特に不自然です。重要な情報を彼らに託す方が間違いなく安全であり、これは、解放された人間たちによる明白なミスです。現実の世界に置き換えると、パスワードをメモした付箋をモニターに貼り付けておいて、それが背景に写り込んだ状態でテレビ取材を受けるようなものです。

はぐれ者ソフトウェア

どういうわけか、マトリックスは不要になったプログラムをきちんと取り除くことができていません。奥深くには、マトリックスが旧バージョンであったころから使われていたさまざまなプログラムが存在しています。情報をひそかに持ち出すプログラム、半物理的な戦闘員となるプログラム、自身の機能を「最も重要なものを守る」(情報セキュリティ企業のスローガンにありそうな言葉です)ことだと定義するセラフというプログラムなどです。

オラクルによると、このようなプログラムはすべて削除されるはずでした。しかしそうはならず、これらはシステムとの接続を解除して仮想現実内で自律的に生きることを選びました。管理されていない古いソフトウェアの存在は、現実世界の場合と同様、明らかな脆弱性です。これらはまさに、ハッカーたちがマトリックスを攻撃するのを助けます。

ソフトウェアのひそかな持ち込み

一部のプログラムは「機械世界」にしか存在しません。それでも、人間のアバターが住まう仮想世界であるマトリックスの内部へ、ひそかに持ち込むことはできます。このようなプログラムの持ち込みが可能であることから、セグメンテーションに関する深刻な問題が浮かび上がります。特に、分離したものとして設計された2つのセグメントの間に直接の通信経路が存在するなど、あってはならないことです。

バックドア

追放されたプログラム(エグザイル)の一つは、バックドアの鍵を作るプログラムである「キーメーカー」です。キーメーカーが実際にどの程度まで追放者なのかは分かりません。もしかすると、オラクルと同じように、「選ばれし者」を通じてレジスタンスを制御するためにシステムへ組み込まれた存在なのかもしれません。キーメーカーは、やすりと旋盤を使ってアクセス用の鍵を切り出すだけでなく、マトリックスのさまざまな場所、それこそコアネットワークからシステムの心臓部分であるソースに至るあちこちにアクセス可能なバックドアの存在を、ハッカーたちに知らせます。キーメーカーもバックドアも、システム全体にとって根本的なセキュリティ脅威をもたらします。システムが部外者からどのように保護されているのかを考えればなおさらです。

バックドアのセキュリティに関する主な問題は、これがなぜか仮想世界の概念上の法則に従って存在しており、エミュレートされた発電所(実際には発電しない)とそれらの仮想発電所にあるコンピューターに依存していることです。そしてご存じのとおり、マトリックス内の法則は簡単に破られます。バックドアにエージェントを1人配置する方がよほど効果的だと思われるのに、なぜそうしないのでしょうか?エージェントに支払うお金がないのでしょうか?

エージェント・スミスのクローンたち

エージェントは元々、線でつながれた人間のアバターコードに取って代わる機能を備えていました。しかし、エージェントは常に、独立した単体のコピーとして存在してきました。第1作のラストで、特異な能力を獲得したネオは、自分のアバターの一部コードがエージェントのコード内に転送される形でエージェント・スミスの中に侵入し、内側から破壊しようとします。その後スミスは暴走し、物理世界の法則と、1つのコピーにしか存在してはならないとする規則の双方を無視する能力を獲得します。言い換えれば、スミスは本格的なウイルスとなるのです。

見たところ、スミスはマトリックスにおける最初のウイルスのようです。そうでなければ、ソフトウェアの異常を追跡し、システムの安全を脅かす危険なプログラムを隔離して除去するウイルス対策ソリューションが存在しないことの説明がつきません。マトリックスから逃れて来た人々の大半がハッカーであることを考えると、とても不自然に見えます。

それはともかく、任意のアバターやプログラムに自分のコードをコピーできるようになったスミスの存在は、ネオがAIと交渉する際の論拠となります。最後には、ネオはマトリックスに物理的に接続し、スミスを自分のアバターに「感染」させ、「スミスネット」に接続し、スミスたちをすべて破壊します。

結果として、機械は休戦および人類根絶の停止に合意し、マトリックスに住むことを望まない人間の解放にも同意します。しかし、身も蓋もないことを言えば、そもそも最初から安全なオペレーティングシステムを構築するか、少なくともネットワークの異常を追跡できるEDRシステムと信頼できるセキュリティソリューションを組み合わせて使っていればよかったのではないでしょうか。

ヒント