pf:「変調状態」と「維持状態」の違い

pf:「変調状態」と「維持状態」の違い

パケットフィルタリング()ファイアウォールの「変調状態」と「保留状態」の違いは何ですかpf

私はMacOS X Catalina 10.15.5を使用しています。pfこのコンピュータにインストールされているバージョンを確認する方法がわかりません。\

ベストアンサー1

パケットフィルタ起源OpenBSDから:

PFの元のバージョンはDaniel Hartmeierによって書かれました。 2001年12月1日に発売されたOpenBSD 3.0に登場しました。

オープンBSD 3.0:

NAT機能とほとんどipf互換構文を備えた新しいパケットフィルタであるPFです。

これについて提出modulate stateこのバージョン(2001-08-25)より前のバージョンです。 PFを使用するすべてのMacOSバージョン(OS X 10.6以降)2008年modulate state利用可能です。


すべてはmodulate statevsについてです。keep stateOpenBSDに関するPF FAQ

状態

[...]

  • keep state– TCP、UDP、ICMP と連携します。このオプションは、すべてのフィルタルールのデフォルト値です。
  • modulate state- 以下にのみ適用されます。伝送制御プロトコル。 PFが生成されます強力な初期シーケンス番号(ISN)このルールに一致するパケット。

このオプションはTCPパケットにのみ適用されることを除いて、次のようにmodulate state機能します。keep state変調状態から発信される接続の初期シーケンス番号(ISN)はランダムです。これは次のような場合に便利です。 ISN選択パフォーマンスが低下した特定のオペレーティングシステムから開始された接続を保護します。。より単純なルールセットを許可するために、TCP以外のプロトコルを指定するルールで変調ステータスオプションを使用できます。この場合、保留状態とみなされます。

modulate state基本的な作業を行うkeep state場合も同様です。またセキュリティを強化するには、一部のTCPパケットを変更してください。

例:

pass out on egress proto { tcp, udp, icmp } from any to any modulate state

これはTCPを「変調」し、他のユーザーのために状態を維持します。


TCP内部構造とTCP ISNについてさらに詳しく知りたい場合は、RFCを参照してください。たとえば、次のようになります。

  • 伝送制御プロトコル

    所蔵番号 : 32ビット

    セグメント内の最初のデータオクテットのシーケンス番号(SYNがある場合を除く)。 SYNがある場合、シーケンス番号はISN(初期シーケンス番号)で、最初のデータオクテットはISN + 1です。

  • シリアル番号攻撃から防御

    残念ながら、[RFC0793]に記載されているISNジェネレータを使用すると、オフパス攻撃者はTCPが新しい接続に使用するISNを簡単に予測できるため、TCP接続へのさまざまな攻撃が可能になります。[CPNI-TCP]

おすすめ記事