私は、私が関与しているネットワークから発信された虐待行為の詳細を記したかなりの数の電子メールを週に 1 通受け取ります。これらには通常、次のいずれかが含まれます。
a) 侵害されたとみなされる URL。
また
b) スパムと見なされる電子メールのコピー。
これらのほとんどは自動化されており、通常は ARF にうまく従いません。
必要なのは自動データ抽出ですが、メールの構造が変化して予測できない場合にどうすればよいか分からず、頭を悩ませています。
現時点で抽出しようとしているのは次のとおりです。
a) スパムの送信元メール サーバー (およびほとんどの Exim/Qmail 受信ヘッダーに表示される UID/ユーザー名)
b) ドメイン名
c) 侵害されたサイトの URL
d) メールアドレス
いくつかの正規表現やその他のがらくたを使用して汗をかかずにこれを行うことができますが、基本的に信頼性が低くなります。メール本文を解析すると、5 つの IP、3 つの URL、および 3 つのメール アドレスが得られる可能性があり、最適なものを自動的に選択する方法がわかりません。
正しいデータが何であるかについて最善の自動判断を行うために、何を調査/検索する必要があるかについて、何らかの方向性が必要です。過去のレポート メールは 100,000 件を超えているので、テスト データに不足はありません。この問題を解決するために、どのように開始し、何を調べればよいかを知る必要があります。
これを読んでくれてありがとう。何か見落としていたり、他に質問があれば教えてください :)
参考までに、私は次のことを検討しました。
分類されたこの送信者からの過去のいくつかの電子メールを挿入し、新しい電子メールに対して一連の違いを実行します。python セット + リストを使用していくつかのアルゴリズムをハードコーディングすることを除けば、これを行う最善の方法についてはわかりません。
以前のすべてのデータをさまざまな形式の ScatterPlot/Histogram にプロットします。次に、既存のデータに対して新しい各メールをテストし、グラフ内で最も普及していない詳細を選択することができます. 繰り返しますが、ここでどのライブラリを探すべきかわかりません。
サンプル データを使用して、以前に見た項目に重みを付けます。つまり、1000 の以前のサンプルのページを作成し、決して正しくない IP を「マークダウン」し、正しい可能性のある IP をマークアップするとします。
ホスト名を解決し、アイテムを一緒に一致させるためのソケット ルックアップを含むコードのもつれを記述します。これを実行すると負荷がかかることはわかっていますが、おそらく最良の結果が得られるでしょう。
乾杯!