第八話 バックドアの攻防
墨田区にある栗栖の事務所『サイバー・アルケミスト』の空気は、サーバーの排熱で熱を帯びていた。
澪は、丸菱精密から持ち帰った「黒いデバイス」を解析する栗栖の隣で、自身の端末に流れる帝都中央銀行のトラフィックを凝視していた。
「……やっぱり、再起動のコマンドが撥ね返される。ランサムウェアがMBR――OSが起動するために最初に読み込む領域を書き換えてる。これじゃあ、バックアップを流し込んでも、起動した瞬間にまた暗号化が始まるわ」
澪の声には、焦燥と怒りが混じっていた。
システムが止まってから、すでに四十時間が経過している。タイムリミットは四十八時間。日曜の朝九時までに復旧させなければ、月曜朝の窓口業務、そして日本中を駆け巡る膨大な決済がすべて止まる。
それは、預金者たちの生活を根底から破壊することを意味していた。
「久保田さん。焦るな。システムを治したいなら、まずは『家主に化けている泥棒』を追い出すのが先決だ」
栗栖は淡々と言いながら、モニターに映るパケットの群れを指差した。
「見てごらん。この『Admin_Maint_09』というアカウントだ。君が保守に使っている特権IDだろう? 土曜の深夜だというのに、三秒に一回の頻度でメインフレームへアクセスを試みている。これは人間じゃない。犯人が仕掛けた自動プログラムだ。……僕たちが外から鍵を治そうとしても、内側から絶えず『拒絶』のコマンドを上書きし続けているんだ」
「なんてこと……。私たちの復旧作業と、犯人のプログラムが、サーバーの中で『デッドロック(膠着状態)』を起こしているっていうの?」
デッドロックとは、互いの処理が干渉し合い、どちらも進まなくなる状態だ。このままでは、時間だけが空費される。
「犯人は、あの丸菱精密に仕掛けたデバイスを中継地点にして、銀行の保守用回線へ『偽の命令』を送り続けている。……山田、準備はいいか」
「いつでもいけるっす、ボス!」
元ブラックハッカーの山田が、不敵な笑みを浮かべた。
「丸菱精密のデバイスを逆探知して、犯人が操作している端末のIPを特定しました。今からこの通信に『偽の応答』を返して、犯人のプログラムを迷路に閉じ込めます!」
「よし、やれ。久保田さん、君はその隙に銀行のマスター権限を強制的にオーバーライド(上書き)する『パッチ(修正プログラム)』を書いてくれ。僕が犯人の妨害を五分間だけ引き受ける」
「五分……? そんな短時間で、銀行のレガシーシステムの認証プロセスを書き換えるなんて……」
「君ならできる。……感情論でシステムが動くなら、君は今ごろ神様になっているはずだ。だろう?」
栗栖が、澪の口癖を引いて微かに微笑んだ。その眼鏡の奥にある瞳は、彼女の技術を微塵も疑っていない。
「……やってやるわよ。コンパイルが通らなかったら、一晩中呪ってやるから!」
澪は、愛用の『静電容量無接点方式』のキーボードに指を置いた。
栗栖がキーボードを叩き始めると同時に、事務所内のルーターが激しく点滅を開始する。犯人側も、自分たちの「裏口」が特定されたことに気づき、猛烈なDDoS(大量のパケットによる攻撃)を仕掛けてきたのだ。
「久保田さん、あと三分!」
栗栖の叫び声。画面には、赤い「アクセス拒否」の文字が並んでいる。
澪の脳内には、銀行の複雑怪奇なシステム構成図が完璧に描かれていた。どこにバックドアが植えられ、どの認証サーバーが乗っ取られているか。長年、現場で泥を啜りながらメンテナンスを続けてきた彼女にしかわからない「バグの癖」があった。
「……見つけた! 暗号鍵の生成プロセスをバイパスして、管理権限を強制取得する
……お願い、走って!」
澪がエンターキーを叩きつけた。
画面上のプログレスバーが、九〇、九五、……一〇〇パーセントに到達する。
次の瞬間、それまで狂ったように点滅していたエラーログが、ピタリと止まった。
「……ログイン成功。保守用アカウントの奪還、完了よ」
澪が椅子に深く背を預け、大きく息を吐き出した。額からは汗が滴り、キーボードを濡らしていた。
モニターには、それまで拒絶されていた『システム復旧ウィザード』の画面が、静かに浮かび上がっていた。
「お見事。……泥棒を追い出し、鍵を取り戻した。これでようやく、本番の『治療』が始められる」
栗栖が、澪の肩を軽く叩いた。
だが、その安堵も束の間、山田が叫び声を上げた。
「ボス! 喜んでる暇ないっす! 犯人側、最後に『時限式のワイプ(データ消去)』コマンドを仕掛けてやがった! あと六時間以内にデータベースをクリーンにしないと、全預金データが消滅します!」
澪の顔から、再び血の気が引いた。
「復旧リミットまで、残り六時間……。まだ、勝負は終わっていないわね」
「ああ。……デバッグの時間は、これからが本番だ」
二人の技術者は、再びキーボードへと指を戻した。
日曜日の夜明けまで、秒刻みの戦いが続く。




