SHA-1ハッシュの衝突を現実的な時間で生成する攻撃「Shatterd」

2017年2月26日 11:35

オランダ・CWI AmsterdamとGoogleの研究チームは23日、SHA-1ハッシュ値の衝突を現実的な時間で生成する攻撃手法「Shattered (SHAtterd)」を発表した(CWIのニュース記事Google Security Blogの記事Phoronixの記事Ars Technicaの記事論文: PDF)。 Shattered攻撃は多数の暗号解析技術を組み合わせたもので、同じSHA-1ハッシュ値を持ち、内容の異なる2つのPDFファイルの生成などが可能だ。高速といっても263回の試行が必要となり、攻撃の第1フェーズは6,500 CPUで1年間、第2フェーズは110 GPUで1年間を要する。それでもブルートフォース攻撃と比較すると10万倍以上高速だという。shatterd.ioではPoCとして、同じSHA-1ハッシュ値で内容の異なる2つのPDFファイル (PDF 1/PDF 2)を公開している。また、Shattered攻撃で使われているPDFかどうかを確認するテスター機能もWebページ上で提供される。研究チームではShattered攻撃がきっかけとなってSHA-1の危険性に対する認知度を高め、より安全なSHA-256などへの移行が進むことを期待しているとのこと。 SHA-1の危険性は何年も前から指摘されており、現在も文書の署名やHTTPS証明書、バージョン管理システムなど幅広く使われている。ただし、SHA-1のHTTPS証明書に関しては、CA/Browser Forumが2016年1月1日以降発行を禁じている。Googleでは2014年リリースのChrom 39からSHA-1証明書の廃止を進め、今年1月リリースのChrome 56でSHA-1のサポートを終了した。Firefox 51も昨年11月のリリース以降、SHA-1証明書を無効化するユーザーを徐々に増やしていたが、24日で移行を終了したそうだ。Firefox 52ではデフォルトで無効化される。一方、MicrosoftはInternet Explorer 11/Microsoft EdgeでSHA-1証明書を使用するWebサイトをブロックする計画だったが、2017年半ばまで延期する方針を22日に発表している。 なお、ShatterdのソースコードはGoogleの脆弱性公表ポリシーに従って90日後にリリースされるが、既に影響が出ているようだ。WebKitのリポジトリはPoCのPDFファイル2本がアップロードされたことで障害が発生したという。Apache SVNは重複ファイルの検出にSHA-1を使うため、正常に動作しなくなったようだ。

関連記事

最新記事