glibc の脆弱性 CVE-2017-12132 は glibc の脆弱性ではない
しゅーとです。
8/1 、glibcの開発者は、glibcにいわゆるアイコラ攻撃の脆弱性が存在するとして修正を行ったとのことです。
その脆弱性のCVE番号は CVE-2017-12132 で、下記に概要が載っています。
また、日本語で概要が載っているページもあります。(※任意のコード実行の可能性との記載がありますが、これは間違いです。)
修正までの経緯
glibcの脆弱性報告から修正まで、下記のページで行われました。
要約すると、「glibcはEDNS0のbufsizeが最大の65536byte(※正しくは65535byte)に設定してあり、アイコラ攻撃に脆弱である。bufsizeを1200に変更すればこの攻撃を防げる。」ということです。
開発者はこの報告を受け、「現在のglibcはアイコラ攻撃に脆弱である」とし、ソースコードを修正し、CVE番号を発行しました。
修正したソースコードについては以下を参照してください。
sourceware.org Git - glibc.git/commitdiff
なにがマズいのか
アイコラ攻撃はDNS(さらに言えば、IPとUDP)のプロトコル上の問題(脆弱性)を突いたものであり、glibc の実装を突くものではありません。
glibc の脆弱性ではないのに、なぜおせっかいをするのでしょう。さらに、これはプロトコルの脆弱性なので、実装をもって脆弱性を修正することはできません。修正できるということは、それは仕様を逸脱するということです(実装依存除く)。
RFC3226では、EDNS0 の bufsize を 4000 にすべき(SHOULD)としていますが、CVE-2017-12132 の修正()を行ったことで仕様を逸脱していませんか?
あと、bufsize を 1200 にしても MTU によってはフラグメントすることがあるのですが、本当にアイコラ攻撃に脆弱ではなくなったんですか?