AI News HubLIVE
站内改写3 分で読了

Show HN: mitmproxyベースの出力WAFでAIエージェントやnpmマルウェアを制限

mitmwallは、iptablesとmitmproxyを組み合わせたUbuntu向け出力Webアプリケーションファイアウォール(WAF)です。明示的に許可されたHTTP(S)ルートのみアクセス可能にし、データ流出やバックドア接続などの脅威を防ぎます。リアルタイム監視、DNSフィルタリング、資格情報注入、Webインターフェースを備えています。

ソースHacker News AI著者: esamatti

mitmwallは、Ubuntu向けに設計された出力Webアプリケーションファイアウォール(WAF)です。iptablesとmitmproxyを巧みに組み合わせ、明示的に許可されたHTTP(S)ルートのみアクセス可能にします。許可リストに一致しないネットワーク接続はすべてブロックされ、データ流出やバックドア接続などのセキュリティ脅威を効果的に防止します。

mitmwallは、systemdサービスを介してmitmwebを起動し、透過HTTP(S)プロキシモードとDNSプロキシモードで動作します。iptablesルールは、送信TCP 80および443ポートのトラフィックをHTTP(S)プロキシにリダイレクトし、TCP/UDP 53ポートのトラフィックをDNSプロキシにリダイレクトします。同時に、rootユーザー、専用のmitmwallユーザー、systemd-resolve、およびインストールされた時刻同期サービスのユーザーのみが必要なアップストリーム接続を実行できるようにし、rootユーザーはホスト管理とトラブルシューティングのために制限されず、他のアプリケーションはプロキシをバイパスできません。

インストールは簡単で、curlコマンドまたはローカルインストールスクリプトを介して実行できます。インストーラは、システムユーザーの作成、mitmproxyのインストール、設定ファイルの生成、ルールディレクトリの作成、systemdサービスのインストールを行います。インストール後、systemctlコマンドを使用してサービスの起動、停止、再起動、およびログの表示が可能です。

許可リストはTOMLファイルとして/etc/mitmwall/rules.dに保存されます。各ファイルには複数の[[allow]]テーブルを含めることができ、リクエストのホスト名、HTTPメソッド、およびオプションのパス名パターンが少なくとも1つの許可ルールに一致しない限り、トラフィックはブロックされます。ルールファイルはファイル名のアルファベット順に読み込まれ、変更後はサービスを再起動する必要があります。

資格情報注入機能により、カスタムヘッダーをリクエストに透過的に追加でき、信頼できないユーザーに資格情報を公開するのを回避できます。典型的なワークフローは、まず資格情報を必要とするツールを構成し、mitmwebで資格情報の使用状況を確認し、資格情報ヘッダーを注入するマッチングルールを作成し、最後に実際の資格情報をダミー値に置き換えるというものです。

mitmwallはWebインターフェース(mitmweb)も提供し、ポート58081でリッスンし、トラフィックをリアルタイムで検査し、簡単にルールを作成できます。オプションインターフェースを介して追加されたルールは即座に適用され、永続化されます。

DNSフィルタリングは、通常のユーザーのTCP/UDP 53トラフィックをmitmproxyのローカルDNSリスナーにリダイレクトします。デフォルトでは、プロキシアドオンは同じルールファイルを適用してDNSクエリの許可を決定します。クエリのホスト名が許可リストにない場合、DNS REFUSEDが返されます。設定でアドオンレベルのDNSフィルタリングを無効にできます。

セキュリティ面では、mitmwallはLinuxユーザー権限に依存しています。rootとmitmwallユーザーのみがネットワークに自由にアクセスできます。攻撃者がmitmwallユーザーまたはrootに権限昇格できた場合、保護を迂回される可能性があります。DNSフィルタリングはDNSベースのデータ流出を防ぎますが、許可されたドメインは慎重に選択する必要があります。また、許可されたドメインは、特にPOST、PUTなどの書き込みメソッドが許可されている場合、資格情報のダンプに使用される可能性があります。デフォルトのメソッドポリシーはGETとHEADのみを許可し、リスクを低減します。通常の非rootプロセスはiptablesをバイパスする生のソケットを作成できません。

結論として、mitmwallは標的型攻撃から保護するものではなく、悪意のあるAIエージェントやnpmレジストリで最近見られる一般的な資格情報ダンプマルウェアから保護することを目的としています。実用的な出力制御ツールです。