ファイアウォールの構成やルールセットに対してポリシー監査を実行したいと考えています。これは、構成管理システムとは独立して、理想的には実行中の構成を操作して実行する必要があります。私はCisco PIX/ASA/FWSMおよびJuniper NetScreen/JunOSデバイスの検査に最も関心がありますが、iptablesとWFP=も興味があります。これを行うためのテクニックは何ですか?
これには nipper をお勧めします。幅広いデバイスで実行され、構成管理ではなくファイアウォール監査を対象としています。
私の経験では、仕事を始めるのはとても簡単です。一般的に、あなたはそれに設定のコピーを与え、それを実行します:)
Solarwindsのファイアウォールブラウザ (旧称Athena Security)は、この種の分析を行う無料のツールです。
チェックポイントについては触れませんでしたが、チェックポイントユーザーグループ( [〜#〜] cpug [〜#〜] )には、そのようなツールについての議論があります。その多くはチェックポイント固有ではありません。
完全なファイアウォール構成監査の直接の要点ではありませんが、(MacOS 10.14 App Storeにある)「Network Mom ACL Analyzer」は、次のシスコプラットフォームのIPv4セキュリティACLを分析します。
次の機能があります。
「重複」ACL行は、上の行が下の行の厳密なスーパーセットである行です。これは、下の線が不要であることを意味する場合があります。また、上位ラインが「広すぎる」ことを意味する場合もあります。結局のところ、すべてのACLは「permit ip any any」の「複製」です。
ツールで「遊ぶ」ために、上記の4つのプラットフォーム用の「ランダムな」2000行のACLを生成するユーティリティもあります。
ASA構文の検証と重複する結果の例を次に示します。
入力:
access-list 101 extended permit bogus 1.0.0.0 255.255.255.0 2.0.0.0 255.255.255.0
access-list 101 extended permit tcp 1.0.0.1 255.255.255.0 2.0.0.0 255.255.255.0
access-list 101 extended permit tcp Host 1.0.0.1 Host 2.0.0.2
access-list 101 extended permit tcp Host 1.0.0.1 range 10 20 Host 2.0.0.2 lt 81
access-list 101 extended permit tcp Host 1.0.0.1 eq 10 Host 2.0.0.2 eq www
出力:
line 1: access-list 101 extended permit bogus 1.0.0.0 255.255.255.0 2.0.0.0 255.255.255.0
error line 1: invalid after action
line 2: access-list 101 extended permit tcp 1.0.0.1 255.255.255.0 2.0.0.0 255.255.255.0
warning line 2: Source IP not on netmask or bit boundary
warning Analyzed 4 Access Control Entries. ACL Name ["101"]
line 2: access-list 101 extended permit tcp 1.0.0.1 255.255.255.0 2.0.0.0 255.255.255.0
line 3: access-list 101 extended permit tcp Host 1.0.0.1 Host 2.0.0.2
line 4: access-list 101 extended permit tcp Host 1.0.0.1 range 10 20 Host 2.0.0.2 lt 81
line 5: access-list 101 extended permit tcp Host 1.0.0.1 eq 10 Host 2.0.0.2 eq www
line 3: access-list 101 extended permit tcp Host 1.0.0.1 Host 2.0.0.2
line 4: access-list 101 extended permit tcp Host 1.0.0.1 range 10 20 Host 2.0.0.2 lt 81
line 5: access-list 101 extended permit tcp Host 1.0.0.1 eq 10 Host 2.0.0.2 eq www
line 4: access-list 101 extended permit tcp Host 1.0.0.1 range 10 20 Host 2.0.0.2 lt 81
line 5: access-list 101 extended permit tcp Host 1.0.0.1 eq 10 Host 2.0.0.2 eq www
20秒未満で50,000行のACLの許可/拒否の一致を正常に検出します。
2,000行のACLの重複ACL検出には、約3秒かかります。 10,000行のACLは、25倍(数分)かかります。
上記のACLで、1.0.0.1ポート244から2.0.0.2ポート80のTCPソケットに一致する行を見つける例を次に示します。
notification Socket configured: tcp sourceIp 1.0.0.1 sourcePort 244 destinationIp 2.0.0.2 destinationPort 80
result line 2: FIRST MATCH access-list 101 extended permit tcp 1.0.0.1 255.255.255.0 2.0.0.0 255.255.255.0
result line 3: ALSO MATCH access-list 101 extended permit tcp Host 1.0.0.1 Host 2.0.0.2
ツールを使用する際の最も重要なトリックは、常に正しいデバイスタイプを設定することです。行の大部分が構文エラーである場合は、より適切に警告する必要があります。
ACLは非常に機密性が高いため、ツールはApple App Reviewを実行し、Appleのサンドボックスと強化されたランタイム機能を使用します。サンドボックス構成はnotでツールが開始または受信できるようにしますネットワーク接続(1つの副作用は、構成でDNSホスト名をサポートしないことです。ツールは実行間でACL情報を保存しません。ツールはユーザー指定のファイルのみを開くことができます。ファイルは読み取り専用で開かれます。
免責事項:ツールが完璧であると主張しているわけではないので、ツールがあなたに与える答えを常に検証してください。活発な開発が続いており、バグレポートとACLサンプル(特にオブジェクトグループまたはIPv6を使用)をテストに利用できます。