ロジックボム

あらかじめ決められた時間や条件がそろうまで息を潜めて待ち、突然作動する「デジタルの時限爆弾」です。

定義 特定の条件が満たされるまで密かに潜伏し、条件が成立した瞬間に作動する悪意あるプログラムコードです。普段は何事もなく正常に動作していますが、指定された日付になったり特定のデータが削除されたりした瞬間、システムを麻痺させたり重要なデータを消去したりします。

普段は静かに潜む時限爆弾

クローゼットの奥深くに隠された時限爆弾を思い浮かべてみてください。セットされた時計の針が特定の時刻を指すまでは、家の中は何の物音もせず、いつも通りの穏やかな日常が続いています。

コンピュータプログラムの中に潜むロジックボムも、まったく同じ仕組みで作動します。悪意を持った内部の開発者や外部の侵入者が、正常なソフトウェアコードの片隅にこっそり仕込むのです。普段は一般的なコードと同じように何食わぬ顔で動くため、セキュリティ検査をすり抜けてしまうことがほとんどです。

見た目には何の問題もない安全なプログラムとして毎日動いているため、一般の利用者はもちろん、専門のセキュリティ管理者でさえ異変に気づけません。事件が起きるまでは危険が存在することすら察知できない点が、ロジックボムの最大の脅威です。

この驚くべき隠密性により、ロジックボムは何ヶ月、何年もの間システムに何の影響も与えることなくサーバーの片隅に潜み、静かに「その時」を待ち続けることができます。

論理爆弾の仕組み図 1. 特定条件監視 13日の金曜日 2. 正常コードに潜伏 IF 日付==特定日 THEN悪意動作 3. 条件合致で爆発

どんな引き金(トリガー)で爆発するのか?

ロジックボムを目覚めさせる特定の条件のことを、ITの世界では「トリガー(引き金)」と呼びます。最もよく使われるトリガーは特定の日時です。例えば、攻撃者が指定した記念日や週末の深夜0時になると、突然会社の基幹データベースを一斉に削除する、といった具合です。

時間だけでなく、特定の人物の行動やシステム内部の変化もトリガーになります。会社に不満を持つ従業員が「人事システムのリストから自分の社員番号が消えたら」という条件を設定することもあります。自分が解雇された瞬間に自動でシステムを破壊する報復装置を仕掛けておくのです。

逆に、「特定の管理者アカウントで毎月ログインし続けないと」爆発するように仕掛けるケースもあります。自分が会社に在籍してパスワードを入力し続けないとシステムが壊れるようにし、一種の脅迫手段として悪用する手口です。

このように、プログラマーが思いつくあらゆる条件分岐がトリガーになり得るため、事前にどんな形で潜んでいるかを見つけ出すのは極めて困難です。

もう少し詳しく:他のマルウェアとは何が違う?

ロジックボムを、ネットワークを通じて勝手に拡散する一般的なコンピュータウイルスと同じものだと混同されることがよくあります。しかし、ロジックボムには自分自身を他のコンピュータへ複製して感染を広げる自己増殖能力はありません。

ネットワーク上を広がるというよりは、特定のシステムやソフトウェアの内部にじっと居座り、条件に従って動作する条件付き実行コードに近い存在です。そのため、正体不明の外部攻撃者よりも、システムの構造や権限を知り尽くした内部関係者の不正によって仕込まれるケースが圧倒的に多いのが特徴です。

ロジックボムの被害を防ぐには、単なるセキュリティソフトのスキャンだけに頼るのでは不十分です。1人が書いたコードを複数のエンジニアで念入りにチェックするコードレビューの徹底が欠かせません。

さらに、社員が退職や異動をする際には即座にアクセス権限を失効させるなど、徹底したアクセス権限管理を行って初めて、内部からの脅威を確実に防ぐことができます。

🤔 よくある誤解

✕ 誤解

ロジックボムは自分自身を他のコンピュータに感染させて広がるプログラムである。

✓ 事実

ロジックボムには自己複製や拡散能力はありません。特定のシステムやソフトウェア内に直接埋め込まれ、決められた条件が成立したときだけ実行されるコードです。

🧺 日常で出会う場面

1 退職した従業員があらかじめ仕組んでおき、自分の給与振込先データが削除された日に会社の全データを消去した事件
2 特定の記念日の午前0時を迎えた瞬間に、世界中でインストールされた端末のファイルを破壊する悪意あるスクリプト
💡 つまり ひとことで

特定の日時や条件が満たされるまで静かに潜伏し、条件成立とともにシステムを破壊する時限爆弾のような悪意あるコードです。