FreeBSD-SA-06:07.pf "IP fragment handling panic in pf(4)"

The FreeBSD Project よりセキュリティ勧告が出ました。私の認識を以下にまとめます。

  • 危険度中
  • 特定のルールのあるpfを使用しているシステムに脆弱性があります。
  • この脆弱性により攻撃者はリモートからシステムをクラッシュさせる事ができるためDoSが可能となります。


セキュリティ勧告は ftp://ftp.freebsd.org/pub/FreeBSD/CERT/advisories/FreeBSD-SA-06:07.pf.asc にあります。
以下は上記のセキュリティ勧告の一部とその訳文です。ただし品質は保証致しません。

I. 背景 - Background

pf is an Internet Protocol packet filter originally written for OpenBSD. In addition to filtering packets, it also has packet normalization capabilities.
pfは元々OpenBSD向けに書かれたインターネットプロトコルパケットフィルタです。さらにパケットのフィルタリングに加え、パケットを正規化する機能もあります。

II. 問題の詳細 - Problem Description

A logic bug in pf's IP fragment cache may result in a packet fragment being inserted twice, violating a kernel invariant.
pfのIPフラグメントキャッシュにフラグメントパケットを2度挿入する論理的なバグがカーネルの安定性を破壊します。

III. 影響範囲 - Impact

By sending carefully crafted sequence of IP packet fragments, a remote attacker can cause a system running pf with a ruleset containing a 'scrub fragment crop' or 'scrub fragment drop-ovl' rule to crash.
巧妙に細工したIPフラグメントパケットの順序で送る事によりリモートの攻撃者は、「scrub fragment crop」または「scrub fragment drop-ovl」ルールを含むルールセットを持つpfの実行されているシステムをクラッシュさせる事が出来ます。

IV. 回避方法 - Workaround

Do not use 'scrub fragment crop' or 'scrub fragment drop-ovl' rules on systems running pf. In most cases, such rules can be replaced by 'scrub fragment reassemble' rules; see the pf.conf(5) manual page for more details.
pfの動いているシステムで「scrub fragment crop」もしくは「scrub fragment drop-ovl」を使用しないで下さい。それらのルールは「scrub fragment reassemble」ルールに置き換える事が出来ます。詳細はpf.conf(5)マニュアルページを参照して下さい。
Systems which do not use pf, or use pf but do not use the aforementioned rules, are not affected by this issue.
pfを使用していないか、使用していても前記のルールを使用していなければ、この件の影響を受けません。