0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【個人開発】PCの全通信を可視化・ブロックするオープンソースFW「Snitch」

0
Posted at

Windows / macOS / Linux で「どのアプリが、どこへ通信しているか」をリアルタイムに可視化し、ワンクリックでブロックできるオープンソースのアプリケーションファイアウォール「Snitch」を開発しました。Little Snitch (macOS) や LuLu に相当する機能を、クロスプラットフォーム・完全ローカル処理・AGPL-3.0 で提供します。

リポジトリ: https://github.com/aixisstudio/Snitch
サイト: https://aixisstudio.github.io/Snitch/

できること

  • 全通信の可視化:アウトバウンド接続をプロセス単位でリアルタイム表示(宛先ホスト・国・ASN・プロセス名、世界地図+ノードグラフ)
  • ワンクリック・ブロッキング:eBPF / NFQUEUE / nftables / Windows WFP によるプロセス単位のファイアウォール。初回接続時に許可を問い合わせるモードも搭載
  • 脅威検知:Sigma互換ルールエンジン、オフライン脅威インテリジェンス、DGAドメイン検出、ICMPトンネル・ビーコニング検知
  • 完全ローカル処理:パケットキャプチャは libpcap/Npcap。DNS、TLS SNI、GeoIP(DB-IP)の解析はすべてオンデバイス。APIは 127.0.0.1 のみでトークン認証。テレメトリなし、アカウント不要
  • 8言語対応:日本語を含む8言語のUI

demo

技術的なポイント

  • キャプチャは ctypes → libpcap(WindowsではNpcap)。ScapyはGPL-2.0-onlyのため採用せず、IPv4/IPv6/TCP/UDP/DNS/TLS-SNIの小型パーサーを自前実装(すべて長さ上限つき)
  • SNITCH_DEMO=1 で合成トラフィックを実パイプラインに流せるため、root権限なしで試せます
  • サーバー向けの軽量Rustエージェント、認証付きREST/WebSocket API、SIEM出力(ECS/CEF/JSON/Syslog)、Docker/Helm/Ansible/GPOデプロイ、宣言的 snitch.toml 設定にも対応

使い方

# macOS
brew install aixisstudio/tap/snitch

# その他: Windowsインストーラー、Docker、Electronはリリースページへ

フィードバック・Issue大歓迎です。⭐も励みになります。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?