Translated message

A translation of this page exists in English.

Warning message

This translation is outdated. For the most up-to-date information, please refer to the English version.

CVE-2008-4609 は Red Hat Enterprise Linux に影響しますか?

Solution Unverified - Updated -

Environment

  • Red Hat Enterprise Linux 3
  • Red Hat Enterprise Linux 4
  • Red Hat Enterprise Linux 5
  • Red Hat Enterprise MRG

Issue

TCP 接続に関するサービス拒否の不具合が、Rober E. Lee と Jack C. Louis (故人) によって開示されました (Outpost24 AB)。これらの不具合によって、攻撃者が TCP 接続を作成して受信者のシステムリソースを使い果たし、サービスを拒否されるようにすることができます。これらの不具合は、CVE-2008-4609 (Red Hat Bugzilla bug 465932) に割り当てられました。攻撃の詳細は CERT-FI advisory を参照してください。

これらの不具合を利用するには、ルーティング可能な IP アドレスを利用したサブネットへのアクセスが攻撃者に必要となります。この場合、攻撃者のマシンで使用される IP アドレスとは異なる IP アドレスが必要となります。攻撃するシステムは、他のホストと競合しない IP アドレスから送信する必要があり、ARP Poisoning が完全に実施されることを保証する必要があります。攻撃するシステムは 3 方向のハンドシェイクを生成するだけでなく、返信である送信 RST フレームを避けることもできる攻撃を作成する必要があります。

Red Hat 社は、これらの問題をご報告いただいた CERT-FIOutpost24AB に感謝致します。

Resolution

これらの攻撃は、TCP プロトコルの設計制限をターゲットとしています。アップデートをリリースしないという upstream の決定のため、Red Hat 社は、これらの問題を解決するためのアップデートをリリースする予定はありませんが、これらの攻撃の効果を削減することはできます。

次の iptables の例は、期間を定めて新しい接続の数を制限することを示しています。パケットが既存の接続または連携した接続の一部であるかどうか確認します。一部の場合は、パケットが許可されます。一部でない場合は、10 個の接続が 1 分以内に TCP ポートを受け取るように試みますが、失敗します。

\# The following rule accepts a packet that is associated with an established connection,
\# or that is starting a new connection that is associated with an existing connection:
iptables -A INPUT -p tcp -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
\# The following rule updates the recent list if the packet is from a new connection, and
\# drops the packet if it is above the limit:
iptables -A INPUT -p tcp -m recent --update --seconds 60 --hitcount 10 -j DROP
\# The following rule tracks and accepts the packet if it was a new connection and was not
\# above the limit set in the previous rule:
iptables -A INPUT -p tcp -m recent --set

この例は接続割合制限であり、同時接続数の制限ではありません。期間内の接続数が問題なので、既存の接続を閉じても、新しい接続を有効にするのに十分ではありません。この例を TCP の一致に拡大して、目的のポート別に制限を分散させることができます。これは、単なる一例です。軽減は、サイトバイサイトで処理される必要があります。

攻撃を受けていることが発覚したら、攻撃パケットに示されないように、IP アドレスやサブネットをブロックしてください。さらに、upstream のインターネットプロバイダに連絡し、入り口で IP addresses をブロックするようにしてください。

Red Hat Enterprise Linux 3 に含まれる iptables パッケージには libipt_recent モジュールがありません。したがって、上の iptables の例を使うことはできません。Red Hat Enterprise Linux 3 を使用している場合は、上で説明しているように upstream のインターネットプロバイダに連絡して、攻撃者の IP アドレスを入り口でブロックしてください。

注意: カーネルの connlimit に対するサポートが、Red Hat Security Advisory RHSA-2009:1243 を介して Red Hat Enterprise Linux 5 に追加されました。この (英語版の) 項目が書かれた時点では、bugconnlimit が動作を妨げます。このバグは、Red Hat Bug Fix Advisory RHBA-2009:1539 から Red Hat Enterprise Linux 5 で処理され、Red Hat Security Advisory RHSA-2009:1540 から Red Hat Enterprise MRG で処理されました。このバグは、現在もRed Hat Enterprise Linux 3 および 4 に存在します。

追加サポート

この問題を軽減するためのサポートが必要な場合は、Red Hat support にご連絡ください。

改訂履歴

2009 年 9 月 14 日更新: Mitigation セクションに iptables ルールの例の説明を追加しました。

2009 年 10 月 5 日更新: 混乱を避けるために、iptables ルールをより明確にしました (変更したルールは、前のルールと同じロジックを使用します) 。

2010 年 4 月 9 日更新: connlimit が正しく動かないようにするバグに対処する (Red Hat Enterprise Linux 5 および Red Hat Enterprise MRG に対する) エラータへのリンクを追加しました。

2010 年 5 月 21 日更新: iptables の例が Red Hat Enterprise Linux 3 で動作しないことの通知を追加しました。

2010 月 11 月 23 日更新: "追加サポート" セクションに、Red Hat サポートへの正しいリンクを追加しました。

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.

Comments