spamscanner/spamscanner

Spam Scanner is a Node.js anti-spam, email filtering, and phishing prevention tool and service. Built for @ladjs, @forwardemail, @cabinjs, @breejs, and @lassjs.

解決する課題

Node.js、コマンドラインインターフェース、およびメールサーバー向けの包括的なスパムフィルターを提供します。多言語にわたるスパム、フィッシング、詐欺、マルウェアから保護し、すべての分類決定に対して透明性の高い説明を提供します。

仕組み

このシステムは、脅威を検出するために多層的なアプローチを採用しています:

  • 多言語分類器: Unicodeルールを使用して単語をセグメント化し、類似文字や不可視文字をクリーニングすることで、さまざまな言語(中国語、日本語、タイ語など)を処理する分類器です。
  • フィッシングおよび添付ファイルチェック: 類似ドメイン、欺瞞的なリンク、および悪意のある添付ファイル(PDFに偽装された実行ファイルやZIPファイル内のものを含む)をスキャンします。
  • プロトコルチェック: SPF、DKIM、DMARC、ARCを検証し、DNSブロックリストを確認します。
  • LLM統合: 「判断が難しいケース」に対して、ローカルまたはリモートの言語モデル(Ollama、Claude、ChatGPT、Geminiなど)にクエリを送信し、確率に基づいた判定を取得できます。
  • 説明可能性: SpamAssassinと同様に、すべての結果に対して実行された特定のテストとその関連ポイントがリスト化されます。

対象ユーザー

Node.jsアプリケーションやメールサーバー(Postfix、Sendmail、Exim、Haraka)にスパムフィルタリングを統合する必要がある開発者やシステム管理者、またはスタンドアロンのCLIツールとして使用したい方に最適です。

ハイライト

  • 幅広い互換性: Node.jsライブラリ、CLI、HTTP API、TCPサーバー、またはメールサーバーのmilterとして動作します。
  • LLMによる意思決定の強化: 曖昧なケースでLLMを活用でき、リモートプロバイダーに送信する前に個人データを削除します。
  • 詳細な検査: punycodeや右から左へ記述されるファイル名トリックなど、複雑なフィッシング手法を検出します。
  • トレーニング可能: カスタムのmboxファイル、Maildirs、またはデータセットを使用したトレーニングをサポートしています。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト