ダウングレード攻撃

読み:だうんぐれーどこうげき / 英語表記:downgrade attack

暗号化通信を確立するときの交渉に割り込み、古いバージョンのプロトコルや弱い暗号スイートを使うように仕向けて、解読しやすい暗号化通信を行わせる攻撃。

イマシルちゃんの解説

ダウングレード攻撃は、通信相手同士が使う方式を決めるやり取りに介入し、本来より弱い方式を選ばせる攻撃だよ。
例えばTLSの接続に失敗すると、互換性のために古いバージョンで接続し直す実装があるんだ。
攻撃者は最初の接続をわざと失敗させ、この動作を悪用することがあるよ。
古い方式に弱点が残っていれば、通信内容を盗み見られる危険が高まるの。
暗号を使っているだけでは安心できないんだね。
弱い方式を使えない設定にしたり、不適切な切替えを検知して接続を止めたりすることが大切だよ。

より深い解説

定義

ダウングレード攻撃は、通信の当事者が、本来は安全なバージョンや方式を使えるにもかかわらず、中間者が交渉の内容を改ざんしたり、交渉を妨害して失敗させたりすることで、安全性の低い方式を選ばせる攻撃である。SSL/TLSのほか、無線LANやメールのSTARTTLSなど、暗号の方式を交渉で決めるプロトコルが狙われる。

暗号スイート

TLSで使う暗号の組合せを、暗号スイートという。ハンドシェイクで、クライアントが使える一覧を示し、サーバが1つを選ぶ。

要素例
鍵交換ECDHE、RSA
認証(署名)RSA、ECDSA
共通鍵暗号と利用モードAES-128-GCM、ChaCha20-Poly1305、(古いもの:RC4、3DES)
ハッシュ関数SHA-256、SHA-384

主な手口と事例

手口内容
暗号スイートの書換えクライアントの一覧から強い暗号を取り除き、弱い暗号(輸出用の短い鍵など)だけを残す
バージョンのロールバック交渉をわざと失敗させ、クライアントが古いバージョンで接続し直す動作(フォールバック)を悪用する。POODLE攻撃は、SSL 3.0 に戻させて、その弱点を突いた
STARTTLSの除去メールの通信で、サーバの「STARTTLSが使える」という応答を消し、暗号化せずに通信させる

対策

似た攻撃との区別

攻撃内容
ダウングレード攻撃交渉に介入して、弱い方式を使わせる
総当たり攻撃暗号化された通信を記録し、鍵の候補を総当たりで試して解読する
SSLストリッピングHTTPSへの移動を妨げ、利用者にHTTPのまま通信させる

実際の試験ではここに出る!全2問

ネットワークスペシャリスト

午前Ⅱ
↑