Bir mesaj gövdesinin en üst satırlarını daha yoğun bir şekilde puanlamak için spamassassin almanın bir yolu var mı?


9

Bir sürü spam (inanılmaz derecede belirgin) kilo kaybı veya üstte diğer aldatmaca metin birkaç satır başlayarak nispeten basit bir hile ile çalıştırmak posta sunucusundaki filtre geçiyor, ardından programlama belgeleri daha büyük bir metin gövdesi - veya en kötüsü, Stack Exchange'den alınan metin . En iyi ihtimalle, Spamassassin bunu BAYES_50 olarak kabul eder ve iletilerin geri kalanı diğer tetikleyicilere vurmayacak kadar dikkatli bir şekilde yapılandırılır. (Örneğin, başlıklar minimal ve doğrudur.) Genellikle, dahil edilen alıntılar, mesajın genel olarak BAYES_00 olarak puanlandığı meşru menfaatlerimle yeterince yakındır, çünkü çok spamlı jetonlar, sysadmin problem çözmenin sulu külçeleri tarafından boğulmuş durumdadır.

Üst kısım o kadar spam ki (ve aslında daha önce alınan ve spam mesajlar olarak eğitilenlere çok benziyor), bu durumun üstesinden gelmesine şaşırıyorum - ama açıkça öyle. Mesajın ilk 25 (ya da öylesine) satırını atan ve problemi ağır bir şekilde çözecek şekilde tartan ayrı bir geçiş gibi görünüyor. Bunu yapmanın bir yolu var mı?


Birkaç kişi özel düzenli ifadeler yazmayı önerdi. Buna girmek istemiyorum, çünkü bu sürekli bir kaybetme savaşı. İnsanların Bayes istenmeyen posta sıralaması yaygın kullanıma girmeden önce yaptığı şeydi ve genellikle korkunçtu. Hiçbir insan ayakta kalamaz . Her spam mesajı için silme tuşuna basmaktan çok daha etkili değildir ve benim açımdan çok daha fazla iş.

Bayes istenmeyen posta filtreleme çalışır. Eğer " katlamanın üstünde " bölümünü ayırırsam ve sadece bu parçayı analiz edersem , bu spam üzerinde bile çalışır . Soru şu: Spamassassin'i bunu nasıl yapabilirim?


Bayes filtresi etkin mi?
Kondybas

@kondybas Evet. Dolgu metni spamlı kısımdan çok daha fazla olduğundan, bu sorunun bir parçasıdır.
mattdm

Hangi MTA'yı kullandınız?
Kondybas

Bu spam'lar hakkında ne kadar Bayes eğitimi yaptınız? Bayesian algoritmasının çok geçmeden çalışmasını beklerdim.
mc0e

@ mc0e Yapamaz. O kadar sihirli değil. Daha sofistike bir makine öğrenme sistemi muhtemelen bunu yapabilirdi, ama bence, burada istediğim "basit bir numara" da olurdu.
mattdm

Yanıtlar:


1

Kendim (az) canlı bir anti-spam savaşçısıyım. Ve karşılaştığınız birçok problem yüzünden, yıllar önce kirli şeyleri kendim yaptım.

Şimdi, bu sizin özel sorunuzun değil, sizin özel sorununun cevabıdır. Bu yüzden lütfen bu nedenle aşağı inmeyin.

Bu sorunu nasıl çözdüm, XMail sunucusu tarafından kullanılan ve e-posta dosyasında spamc'yi çağıran ve orada bazı küçük şeyler yapan sa_filter-post.pl komut dosyasını değiştirmek, tüm dosyayı değil, belirli bölümlerini bazı özel kurallar (benim tarafımdan kodlanmış). evet, normal ifadeler ama şimdiye kadar benim için çalışıyorlar (bundan önce ve sonra bir sürü başka senaryom var, bu bir rol oynayabilir)

Örneğin, telefon numaralarını avlayan bir regex'im var. Spam gönderen bunu tam olarak bıraktı, bu yüzden dosyanın sadece orta 400 karakterini işlemeye devam ediyor (deneme yanılma yoluyla 400'e ulaştım, 200'den başladı). Dosyada bulunanlara kıyasla gördüğünüzün ortasını seçmenin oldukça zor olduğunu unutmayın.

"Ürünler" ile html tablosunun aynı yapısına sahip başka bir tane var, bir kukla başlık ve kullanılabilir altbilgi, bu yüzden bunları çıkarıyorum, "ürünler" yorum sütununu çıkarıyorum ve sonra spamc'ye iletiyorum.

Ve böylece, resmi elde edersiniz.

Ancak tüm kurallar mükemmel değildir, bu yüzden kuralın nasıl davrandığına bağlı olarak, her kural için özel bir puan atayarak, kuralın nasıl davrandığına bağlı olarak, kodladığım ve ayarladığım özel bir puan atayarak biraz sihir yapıyorum (ve bazen kuralların tümünü silerim ). Daha sonra SA puanını özel puanla değiştiririm. Bunu yapmamın nedeni, nedense SA'nın sadece 4. gibi puanlar vermiş olmasıydı. Bu yüzden, diğer bazı değişkenleri (e-posta kaynağı, e-posta hedefi, başlık yapısı vb.) Dikkate alan bazı işleme sonrası komut dosyalarıyla birlikte 5.0'ı geçmeleri için biraz destek verdim, spam'ı az çok öldürüyor dışarı.

Şimdi bunun umduğun şey olmadığını anlıyorum, ama benim durumumda, taranan şey üzerinde bana çok fazla güç veriyor, sadece işleri manuel olarak ve sonra şimdi ve sonra biraz dokunuş yapmam gerekiyor - değerleri / normal ifadeleri ups.

Ancak, tek yapmanız gereken, spamc yerine MX'iniz tarafından çağrılacak basit bir bash komut dosyası kullanmak ve bu komut dosyasının yalnızca istediğiniz ilk bayt sayısını almak için head komutunu kullanması ve bu geçici dosyayı spamc'ye aktarın.

Komut dosyasının içeriği biraz posta sunucunuza bağlı olacaktır, ancak bunun anlaşılması zor olmamalıdır.

(Bu seçeneğin olanaklarını görebilmeniz için yalnızca kurulumumun çoğundan bahsettiğimi unutmayın)

Not: Şahsen bu tür spam e-postaları hiç almadım (bunlarla ilgili güzellikler programlama ile), bu yüzden birisini kızdırmadığınızı ve şimdi hedeflendiğinizi merak ediyorum. Bu özel hazırlanmış e-postaları açıklar. Bu olasılığı düşünmemizin nedeni, yıllar önce, çeşitli BT forumlarında ve gruplarında çok aktif olduğumda, bazı insanları işedi ve şimdi her zaman ve sonra sunucumda e-posta spam'ı da dahil olmak üzere çeşitli saldırılar alırdım. . Ama o zamanlar aptallar bu kadar akıllı değildi :)

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.