spamassassinにメッセージ本文の一番上の行をより強くスコアリングさせる方法はありますか?


9

大量のスパムがメールサーバーのフィルターを通過しています。最初の数行の(信じられないほど明白な)減量やその他の詐欺テキストから始めて、プログラミングドキュメントからのより大きなテキスト本文が続くという比較的単純なトリックで実行しています。 —または、何よりも悪いこととして、Stack Exchangeからスクレイピングされたテキスト。SpamassassinはせいぜいこれをBAYES_50と見なし、残りのメッセージは他のトリガーにヒットしないように注意深く作成されています。(たとえば、ヘッダーは最小限で正しいものです。)多くの場合、含まれている抜粋は私の正当な関心と十分に一致しており、非常にスパムの多いトークンがsysadminの問題解決のジューシーなナゲットに圧倒されているためです。

上部は明らかにスパム性高く(実際、以前に受信してスパムメッセージとしてトレーニングされたものと非常によく似ている傾向があります)、その通り抜けに驚いていますが、明らかにそうです。メッセージの上位25行程度を獲得し、問題を大幅に解決することを重視した別のパスのようです。これを行う方法はありますか?


数人がカスタム正規表現を書くことを提案しています。これは絶え間ない敗北の戦いなので、これには入りたくありません。これは、ベイジアンスパムソーティングが普及する前に人々が行ったことであり、一般にひどいものでした。人間は追いつけない。これは、各スパムメッセージの削除キーを押すだけの場合よりも効果的ではなく、さらに多くの作業が必要になります。

ベイジアンスパムフィルタリングが機能します。「スクロールせずに見える範囲」の部分を分割し、その部分を分析するだけで、おとり/チャフを削除して、このスパムでも機能します。問題は、どうすればスパマサシンにそれを行わせることができるのでしょうか?


ベイジアンフィルターは有効ですか?
Kondybas 2014

@kondybasはい。そしてこれは問題の一部です。パディングテキストがスパムの部分よりもはるかに多いためです。
mattdm 2014

どのMTAを使いましたか?
Kondybas 2014

これらのスパムに対してベイジアントレーニングをどのくらい行っていますか?私はベイジアンアルゴリズムがやがてそれを解決することを期待します。
mc0e 2014

@ mc0eできません。それは魔法のように賢くはありません。もっと洗練された機械学習システムでおそらくそれが可能ですが、私がここで求めている「1つの簡単なトリック」も可能だと思います。
mattdm 2014

回答:


1

私は(少し)鮮やかなアンチスパム戦闘機です。そして、あなたが遭遇する多くの問題のために、私は何年も前に自分で汚いことをすることになりました。

これは、特定の質問に対する回答ではなく、特定の問題に対する回答です。したがって、このために反対投票しないでください。

私がこの問題を解決した方法は、XMailサーバーが使用するsa_filter-post.plスクリプトを変更して、電子メールファイルでspamcを呼び出し、そこで軽微な処理を行って、ファイル全体ではなく特定の部分を処理することでした。いくつかの特定のルール(私がハードコード化)。はい、正規表現ですが、今のところそれらは私のために機能します(私はこのスクリプトの前後に他のスクリプトをたくさん持っているので、役割を果たすことができます)

たとえば、電話番号を検索する正規表現があります。スパマーはそれを完全に残したので、ファイルの真ん中の400文字のみを処理することになりました(試行錯誤で400になり、実際には200から始まりました)。ファイルの内容と比較して、表示されているものの真ん中を見つけるのはかなり難しいことに注意してください。

「製品」、ダミーヘッダー、および使用できないフッターを含むhtmlテーブルと同じ構造を持つ別のものがあります。そのため、それらを削除し、「製品」コメント列を削除してから、それをspamcに渡します。

そして、あなたは写真を手に入れます。

しかし、すべてのルールが完璧なわけではないので、ここでは少しの魔法をかけて、各ルールにプライベートスコアを割り当て、ルールの動作に基づいてハードコードし、必要に応じて調整します(そして、ルールをまとめて削除することもあります)。 )。次に、プライベートスコアでSAスコアを変更します。私がこれを行った理由は、何らかの理由でSAが4のようなスコアしか与えなかったからです。そのため、5.0に移行するために少し後押しし、他の変数(電子メールのソース、電子メールのターゲット、ヘッダーの構造など)を考慮に入れるいくつかの後処理スクリプトを組み合わせて、多かれ少なかれスパムを殺していますアウト。

これはあなたが望んでいたものではないことに気づきましたが、私の場合、スキャンされるものに対して非常に多くの力を与えてくれます。それは、手動でセットアップし、それから今は少しタッチするだけです。値/正規表現の上昇。

しかし、あなたの場合、spamcの代わりにMXによって呼び出される単純なbashスクリプトを使用し、そのスクリプトでheadコマンドを使用して、必要なバイト数だけを最初に取得し、その一時ファイルをspamcに渡します。

スクリプトの内容はメールサーバーによって多少異なりますが、理解するのは難しくありません。

(ここでは、このオプションの可能性を確認できるように、設定の多くだけを話しました)

PS:私は個人的に(プログラミング関連のグッズが含まれた)この種のスパムメールを受信したことがないので、誰かに腹を立てていないか、今は標的にされているのだろうか。それは特別に細工された電子メールを説明するでしょう。私がこの可能性について考える理由は、何年も前に、さまざまなITフォーラムやグループで非常に活発だったときに、何人かの人々を怒らせ、今では、電子メールスパムを含む、サーバーにさまざまな種類の攻撃を行っていたからです。 。しかし、当時の馬鹿はそれほど賢くはありませんでした:)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.