【あーるしーいー】

RCE(リモートコード実行) とは?

💡 遠隔操作でターゲットのサーバーを自分のキーボードで動かせてしまう
📌 このページのポイント
RCEの攻撃チェーン 攻撃者 Attacker 脆弱なサーバー OSコマンド実行 バッファオーバーフロー デシリアライゼーション 悪意あるリクエスト データ窃取 機密情報が流出 マルウェア設置 バックドア・ランサムウェア 横展開 内部ネットワークへ侵入 CVSSスコア10.0になることもある最も危険度の高い脆弱性クラス
ネットワーク越しにサーバーで任意のコードを実行できる最も危険な脆弱性
ひよこ ひよこ

RCEって何の略なの?

ペンギン先生 ペンギン先生

Remote Code Execution、つまりリモートコード実行だよ。攻撃者がネットワーク越しにターゲットのサーバーで任意のコードを実行できる脆弱性のことで、サーバーを「乗っ取った」のと同じ状態になるんだ。CVSSスコアが10.0満点になることもある最凶クラスの脆弱性だよ。

ひよこ ひよこ

どうやってRCEを成功させるの?

ペンギン先生 ペンギン先生

入り口はいろいろあるよ。バッファオーバーフロー・安全でないデシリアライゼーション・テンプレートインジェクション・OSコマンドインジェクションなど、アプリの実装ミスや外部ライブラリ脆弱性が起点になることが多いんだ。

ひよこ ひよこ

RCEに成功したら攻撃者は何をするの?

ペンギン先生 ペンギン先生

マルウェアの設置・データの窃取・ランサムウェアの展開・内部ネットワークへの横展開など、やりたい放題になるよ。権限昇格と組み合わせればサーバーだけでなくシステム全体を掌握されることもあるんだよ。

ひよこ ひよこ

有名なRCEの事例ってあるの?

ペンギン先生 ペンギン先生

Log4Shell(2021年、CVE-2021-44228)が特に有名だね。Javaのログライブラリ「Log4j」の脆弱性で、ほぼすべてのJava製サービスが影響を受けたんだ。翌年のSpringShell(CVE-2022-22965)もSpring Framework脆弱性で大きな騒ぎになったよ。

ひよこ ひよこ

RCEへの対策はどうすればいいの?

ペンギン先生 ペンギン先生

依存ライブラリの定期的なアップデートが最重要だよ。それに加えてWAFによる攻撃パターンの遮断・コンテナのサンドボックス化・最小権限の原則でプロセスの権限を絞る、という多層防御が大切なんだ。一か所で防げなくても次の層で止められる構造を作ることが重要だよ。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「RCE」って出てきたら「ネットワーク越しに任意のコードを実行できる最凶の脆弱性」と思えればだいたいOK!
📖 おまけ:英語の意味
「Remote Code Execution」 = リモートコード実行
💬 remote(遠隔)+code execution(コード実行)の略で、物理的にサーバーに触れなくても任意のコードを実行できる状態を表しているんだよ。
← 用語集にもどる