BREACH 攻撃
BREACH 攻撃 とは何ですか?
BREACH 攻撃2013 年に公表されたサイドチャネル攻撃で、HTTP レベルの圧縮を悪用して攻撃者が制御するリクエストの応答長を観測し、HTTPS で保護された秘密を復元する。
BREACH(Browser Reconnaissance and Exfiltration via Adaptive Compression of Hypertext)は 2013 年の Black Hat USA で Gluck、Harris、Prado によって発表されました。攻撃者制御の入力と CSRF トークンなどの秘密を同じ HTTP 応答に含み、それを gzip で圧縮する Web アプリケーションが標的です。攻撃者が候補文字列を注入して暗号化応答の長さを測定することで、TLS 自体に問題がなくても 1 バイトずつ秘密を抽出できる圧縮率オラクルを構築できます。CRIME と異なり HTTP ボディ圧縮を狙うため、TLS 圧縮の無効化では防げません。対策はリクエストごとのトークンマスク、秘密の分離、レート制限、長さのランダム化などです。
● 例
- 01
ユーザー入力とトークンを同じページに反映する画面から CSRF トークンを抽出する。
- 02
圧縮された HTTPS 応答から OAuth の state パラメータを復元する。
● よくある質問
BREACH 攻撃 とは何ですか?
2013 年に公表されたサイドチャネル攻撃で、HTTP レベルの圧縮を悪用して攻撃者が制御するリクエストの応答長を観測し、HTTPS で保護された秘密を復元する。 サイバーセキュリティの 攻撃と脅威 カテゴリに属します。
BREACH 攻撃 とはどういう意味ですか?
2013 年に公表されたサイドチャネル攻撃で、HTTP レベルの圧縮を悪用して攻撃者が制御するリクエストの応答長を観測し、HTTPS で保護された秘密を復元する。
BREACH 攻撃 はどのように機能しますか?
BREACH(Browser Reconnaissance and Exfiltration via Adaptive Compression of Hypertext)は 2013 年の Black Hat USA で Gluck、Harris、Prado によって発表されました。攻撃者制御の入力と CSRF トークンなどの秘密を同じ HTTP 応答に含み、それを gzip で圧縮する Web アプリケーションが標的です。攻撃者が候補文字列を注入して暗号化応答の長さを測定することで、TLS 自体に問題がなくても 1 バイトずつ秘密を抽出できる圧縮率オラクルを構築できます。CRIME と異なり HTTP ボディ圧縮を狙うため、TLS 圧縮の無効化では防げません。対策はリクエストごとのトークンマスク、秘密の分離、レート制限、長さのランダム化などです。
BREACH 攻撃 からどのように防御しますか?
BREACH 攻撃 に対する防御は通常、上記の定義で述べたとおり、技術的統制と運用上の実践を組み合わせます。
BREACH 攻撃 の別名は何ですか?
一般的な別名: BREACH。
● 関連用語
- attacks№ 235
CRIME 攻撃
2012 年に Rizzo と Duong が公表したサイドチャネル攻撃で、TLS レベルの圧縮を悪用し暗号文長を観測することで HTTPS セッションクッキーを復元する。
- vulnerabilities№ 1038
サイドチャネル攻撃
論理的欠陥ではなく、時間・消費電力・電磁波・キャッシュ・音響など、システムの物理的または実装上の特徴を観測することで秘密情報を回復する攻撃。
- network-security№ 1159
TLS(トランスポート層セキュリティ)
IETF が標準化した暗号プロトコルで、ネットワーク上の 2 つのアプリケーション間の通信に機密性・完全性・認証を提供する。
- attacks№ 786
パディングオラクル攻撃
2002 年に Vaudenay が公表した暗号攻撃。改変メッセージの PKCS#7 パディングが正しいかをサーバが漏えいすると CBC 暗号文を復号できる。