web-dev-qa-db-ja.com

IPv6を無効にすると、サーバーはどのようにしてより安全になりますか?

私が読んでいたのは Linuxサーバーのセキュリティ強化に関するこの記事 で、#23の記事では次のように述べています。

#23:IPv6をオフにする

インターネットプロトコルバージョン6(IPv6)は、インターネットプロトコルバージョン4(IPv4)に代わるTCP/IPプロトコルスイートの新しいインターネット層を提供し、多くの利点を提供します。 IPv6を使用していない場合は、無効にしてください。

次に、IPv6を無効にする方法を説明するさまざまなWebサイトへのリンクを示します。ただし、記事もリンクも、なぜIPv6を使用しない場合は無効にする必要があるかを伝えていないようです。

この記事はLinuxサーバーのセキュリティ強化に関するものだったので、IPv6を無効にするとサーバーの安全性が高まります

91
vakus

ファイアウォールの観点からは、IPv4とIPv6(有効になっている場合)の両方がシステム上で構成されていることを認識することが重要ですが、常にそうであるとは限りません。

私の経験では、(内部の)ファイアウォールをバイパスすることができました。 1つのシナリオでは、Linuxマシンでiptablesが構成されていましたが、ip6tablesは構成されておらず、IPv4で利用できない(脆弱な)サービスが公開されていました。

ほとんどのサービスは0.0.0.0および[::]:[port](すべてのインターフェース)にバインドするため、これらのサービスはIPv6でも使用できます。

そのため、使用しない場合はIPv6を無効にすることを検討することが重要です。これを使用する場合、管理者は一般に(少なくともLinuxサーバーでは)追加のファイアウォール構成が必要であることを認識しておく必要があります。

そして、開始する前に、管理者がこれを認識している必要がありますが、あなたは完全に正しいです。ただし、経験から、システム管理者の間でIPv6に関する多くの知識が不足しています。

127
Jeroen

IPv6を無効にしても特に利点はありません。特に、IPv6はIPv4よりも脆弱ではなく、より安全であると思います(例:IPv6はIPSecのサポートを提案しています)。

重要なのは、オペレーティングシステムを強化する一方で、未使用のサービス/ツールをすべて削除することを推奨することです。これにより、O.S。をより適切に制御し、パフォーマンスを(一般的な方法で)改善し、攻撃者がソフトウェアのバグや構成の誤りを悪用してシステムの(部分的な)制御/アクセスを獲得する可能性を減らすことができます。したがって、未使用のIPv6を削除することは、強化を完了するための一般的に推奨されるアクションにすぎません。

39
flex

アドバイスは意味がありますが、時代遅れです。

IPv6は、IPv4よりもはるかに簡単に設定および管理できるように特別に設計されています。これには、ホストとネットワーク全体を自動構成したり、簡単に一元的に構成したりするための多くの機能があります。多くの場合、ネットワークエッジに到達するとすぐに、ネットワーク全体がインターネットへのIPv6接続を突然取得する可能性があり、一部の人々を驚かせる可能性があります。

このアドバイスは、IPv6機能に精通していない可能性があるため、歴史的には管理者自身と悪意のある攻撃者の両方から保護することを目的としていました。最終的にインターネットへのIPv6接続を取得すると、デバイスは自動構成を試み、場合によっては成功します。さらに、Windowsの特定のバージョンはIPv6 tunnelsをそのままインターネットに確立しようとしますが、これも一部のユーザーと管理者を驚かせます。 (余談ですが、これらのトンネルを特に無効にする必要がない限り、ほとんどの場合、これらのトンネルを無効にすることをお勧めします。)

そして、他の人が述べたように、5〜10年以上前のいくつかの古いファイアウォールは、IPv4に加えてIPv6をファイアウォールに設定していませんでした。これは今日の問題ほど大きくはありません。そのような古代のデバイスは、日を追うごとに珍しくなります。

最近では、グローバルなIPv6接続がなくても、ほとんどの人が実際にIPv6を使用しています。 Windows 8以降では、ホームネットワークでIPv6を幅広く使用しており、一部のWindows機能絶対に必要 IPv6です。

機能とセキュリティのバランスをとる観点からは、グローバルなIPv6接続がない場合でも、IPv4に対応してIPv6がファイアウォールで保護されるようにアドバイスすることをお勧めします。これにより、ユーザーがグローバルIPv6接続を取得したときにユーザーを保護しながら、既存のIPv6機能が保持されます。

24
Michael Hampton

短い回答:はい。ただし、最良の効果を得るには、IPv4も無効にする必要があります。

深刻な答え:プロトコルを積極的に使用せずにパケットを受け入れると、リスクが高まります。最も明白なことは、IPv6を使用して何もない場合でもパケットを処理する必要があるため、ネットワークスタックです。

しかし、実際のリスクは、実際にはIPv6を実際に使用していないということです。 IPv6は使用できませんが、一部のプログラムはIPv6(およびIPv4も同様)でリスニングソケットを開き、受信したパケットを処理します。ここでも複雑さが増しています(v6パケットをv4パケットと同じように扱いますか?)。優れたIPv4ファイアウォールを持っているが、とにかく使用していないと思ったv6の適切なルールを忘れていた.

もう1つ「使用していないことを確認してください」:積極的に使用していない可能性がありますが、ブラウザなどのプログラムが利用可能であれば使用します。たとえば、IPレベルで一部の追跡Webサイトをブロックした場合、それらはそれらのIPv6アドレスからロードされる可能性があり、ファイアウォールは対応するv6ルールを追加するまでこれから保護しません。

これを述べても、IPv6を無効にするべきではありません。インターネットをますます使用しているため、IPv6を無効にすると、最初にネットワークが遅くなり、遅かれ早かれ、特定のサービスにアクセスできなくなります。 IPv4のルールを追加する場合は、IPv6のファイアウォールも調整してください。

16
allo

多くのアプリケーションは、IPv6サポートを使用していなくても、IPv6サポートに依存しています。たとえば、IPv6ソケットを使用します。 ipv6カーネルモジュールを削除してIPv6を完全にオフにすると、問題が発生します。

他のIPv6アドレスが構成されていない場合でも、ローカルリンクにIPv6が常に存在することを考慮して、IPv6が適切にファイアウォールで保護されていることを確認することをお勧めします。最近のほとんどのLinuxディストリビューションでは、IPv4とIPv6の両方をフィルタリングする適切なファイアウォール(通常はufwまたはfirewalld)がデフォルトで有効になっています。

要するに、IPv6の存在を確認して管理/フィルタリングする方が、無視したり削除したりして他の問題を引き起こすよりも優れています。

5
Sander Steffann

正当な必要性がない場合、IPv6はエクスプロイトがネットワークに入り、データが検出されずに漏洩するための別のチャネルとしてのみ機能します。 セキュリティの一般的なルールは、不要なものを無効にすることです。

境界ファイアウォールでブロックしたとしても、攻撃者はIPv4を介して1つのホスト(おそらくDMZ?)を危険にさらし、内部からIPv6を介して拡散する可能性があります。

現在、ほとんどのファイアウォールおよびIDS製品はまともなIPv6サポートを備えているため、IPv6の監視が不十分であるという当初の懸念はほとんど時代遅れです。

いずれにせよ、機会を無効にすることで敵に機会を与えない方が良いでしょう。 無効にできない場合は、ローカルファイアウォールでIPv6を制限して、IPv6ソケットを必要とするアプリケーションのローカル/ループバック通信のみを許可します。

4
DoubleD

使用されていない機能を無効にすることは、一般的なセキュリティプリンシパルです。また、IPv6にはIPSecが組み込まれており、デフォルトではIPv4よりも優れたオプションである可能性があることを考慮してください。

1

これは基本的に言われていることと同じですが、次のように言いましょう。

オプション1:IPv6を使用し、IPv4と同じように構成および保護します。

オプション2:使用せず、無効にします。

どちらも完全に合理的であり、オプション3よりもはるかに良い位置にあります。IPv6を使用せず、ファイアウォールルールとサービス構成では無視して、完全に開いたままにしておきます。

言い換えれば、アドバイスは適切であり、特にIPv6を使用したい場合はIPv6を使用しないことをお勧めしませんが、IPv6を使用しない人には、無視するという落とし穴に対して警告し、 IPv4構成を行うのと同じ精査。それらの人々はそれを無効にした方が良いでしょう。

1
thomasrutter

セキュリティの観点からは、ソフトウェアとアプリケーションに関しては、少ないほど良いです。現在IPv6ネットワークを展開しているのでない限り、IPV6を無効にする必要があります。私の理解では、すべてのIPv4アドレスが配布され、IPv6が登場することを理解しておいてください。また、IPv6プロトコルを有効のままにしておくことを他の人に勧めています。同意しません!プロトコルが必要な場合は有効にします。アプリケーションとポートについても同様です。

0
SecurityDoctor

これには別の側面があります。

まず、純粋に統計的な観点から見ると、アクセスポイント/ドアを開くほど、システムの脆弱性が高まります。ただし、これはほとんどのサービスに当てはまります。

ただし、具体的には、IPv6はまだ十分に大規模に実装されておらず、脆弱性を完全に理解してパッチを当てることはまだできていません。最高のIPエキスパートでさえ、IPv6に関しては具体的なフィールド経験はほとんどありません。

その上、IPv6はIPv4とは根本的に異なる方法で特定の操作を処理し、これにより攻撃者に新しい機会が生まれました...たとえば、非常によく知られている脆弱性は、ルーターがIPv6アドバタイズメントを送信するさまざまな方法に起因します。 LANを非常に簡単なIPv6 DOSターゲットにします。 IPv6ルーターアドバタイズメントDOS を参照してください。

IPv6の脆弱性を悪用することを目的とした一連のツールは、インターネット全体で簡単に利用できます。

私は常にすべてのデバイスでIPv6が無効になっていることを確認しています。なぜ基本的に誰もまだ使用/サポートしていないもののために、なぜ不必要なリスクを取るのですか?

0
fuzzKitty