Um monte de spam está passando pelo filtro no servidor de email que eu corro com o truque relativamente simples de começar com algumas linhas de perda de peso (incrivelmente óbvias) ou outro texto fraudulento na parte superior, seguido por um corpo maior de texto da documentação de programação - ou, o pior de tudo, texto raspado do Stack Exchange . Na melhor das hipóteses, Spamassassin considera isso como BAYES_50, e acontece que o restante das mensagens são construídas com cuidado o suficiente para que não atinjam outros gatilhos. (Por exemplo, os cabeçalhos são mínimos e corretos.) Freqüentemente, os trechos incluídos estão alinhados o suficiente com meus interesses legítimos para que a mensagem geral seja classificada como BAYES_00, porque os tokens com muito spam são sobrecarregados por pepitas suculentas de solução de problemas de administrador de sistema.
A parte superior é tão obviamente spam (e, de fato, tende a ser muito semelhante às mensagens de spam recebidas e treinadas anteriormente) que fico meio surpreso que esteja passando - mas é claro. Parece um passe separado que marcou as 25 (mais ou menos) linhas principais da mensagem e pesou que resolveria fortemente o problema. Existe uma maneira de fazer isso?
Várias pessoas sugeriram a criação de expressões regulares personalizadas. Eu não quero entrar nisso, pois esta é uma batalha perdida constante. É o que as pessoas faziam antes que a classificação de spam bayesiana fosse amplamente difundida, e geralmente era terrível. Nenhum humano pode acompanhar . Não é muito mais eficaz do que apenas pressionar a tecla Delete para cada mensagem de spam e muito mais trabalho da minha parte.
A filtragem de spam bayesiana funciona. Até funciona nesse spam, se eu dividir a parte " acima da dobra " e apenas analisar essa parte, com a isca / palha removida. A questão é: como posso fazer com que o Spamassassin faça isso?
fonte
Respostas:
Eu próprio sou um (pouco) lutador anti-spam vívido. E por causa de muitos problemas que você encontra, acabei fazendo as coisas sujas, anos atrás.
Agora, essa não é uma resposta para sua pergunta específica, mas para seu problema específico. Então, por favor, não diminua o voto por causa disso.
Como resolvi esse problema foi modificar o script sa_filter-post.pl, usado pelo servidor XMail, que chama spamc no arquivo de e-mail e faz algumas pequenas coisas lá, para processar não o arquivo inteiro, mas partes específicas dele, com base em algumas regras específicas (codificadas por mim). sim, regex'es, mas até agora eles funcionam para mim (eu tenho vários outros scripts antes e depois deste, para que possam desempenhar um papel)
Por exemplo, eu tenho uma regex que pesca números de telefone. O remetente de spam deixou isso por completo, de modo que ele processou apenas os 400 caracteres do meio do arquivo (cheguei a 400 por tentativa e erro, a partir de 200). Observe que é muito difícil escolher o meio do que você vê, comparado ao que está no arquivo.
Há outra que tem a mesma estrutura da tabela html com os "produtos", um cabeçalho fictício e rodapé não utilizável; portanto, retiro esses itens, retiro a coluna de comentários "produtos" e transmito isso para spam.
E assim por diante, você obtém a imagem.
Mas nem todas as regras são perfeitas, por isso faço um pouco de mágica aqui, atribuindo uma pontuação particular a cada regra, que codifico e ajusto quando preciso, com base no comportamento da regra (e às vezes acabo excluindo todas as regras) ) Em seguida, modifico a pontuação do SA pela pontuação privada. A razão pela qual fiz isso foi porque, por algum motivo, o SA só deu pontuações como 4. algo para encher claramente de spam as regras que eu também tinha sentimentos fortes para acertá-las. Então, eu dei a eles apenas um pequeno impulso para ultrapassar o 5.0, juntamente com alguns scripts de pós-processamento que levam em consideração outras variáveis (origem do email, destino do email, estrutura do cabeçalho, etc.), que mata mais ou menos o spam Fora.
Agora percebo que não é o que você estava esperando, mas, no meu caso, me dá muito poder sobre o que é digitalizado, é só que eu preciso configurar as coisas manualmente e, de vez em quando, fazer pouco contato- ups nos valores / regex'es.
Mas, no seu caso, as coisas são muito mais fáceis, pois tudo o que você precisa fazer é usar um script bash simples que será chamado pelo seu MX em vez de spamc e ter esse script use o comando head para obter apenas o primeiro número de bytes desejado e passe esse arquivo temporário para spam.
O conteúdo do script dependerá um pouco do seu servidor de email, mas isso não deve ser difícil de entender.
(Observe que eu apenas falei muito da minha configuração para que você possa ver as possibilidades dessa opção)
PS: Eu pessoalmente nunca recebi esse tipo de e-mail de spam (com brindes relacionados à programação), então me pergunto se você não irritou alguém e agora está direcionado. Isso explicaria os emails especialmente criados. A razão pela qual penso nessa possibilidade é que, anos atrás, quando eu era muito ativo em vários fóruns e grupos de TI, irritava algumas pessoas e, de vez em quando, costumava receber vários tipos de ataques no meu servidor, incluindo spam por email . Mas naquela época os idiotas não eram tão inteligentes :)
fonte