SlideShare a Scribd company logo
1 of 23
Download to read offline
Fighting spam for fun and profit
Giovanni Bechis
<gbechis@apache.org>
Open Source Summit Europe 2018, Edinburgh
About Me
sysadmin and developer @SNB
OpenBSD hacker for ∼ 10 years
Apache SpamAssassin developer
random patches in random open source software (amavisd-new,
courier-imap, cyrus-sasl, memcached, ...)
Different types of Spam
Spam is different for everyone
”Nigerian” scam
plain text messages
advertising messages
messages created by bots
phishing messages
Different types of Spam
Spam is different for everyone and it depends on:
spoken languages
personal interests
social networks used
web sites visited (and subscribed)
SA as a framework
SpamAssassin should be seen as a framework, not as ”plug & play” software
if you follow HOWTOs you will not take the best out of any software
to take the best out of SA:
write your ”simple” rules
participate to ”masscheck”
SA is a general purpose antispam framework, it’s used to filter spam in
some webforms and it’s even integrated in a not-so-famous cms
What’s Masscheck ?
a tool to test rules for accuracy and hit-rate
a good way to check how rules are performing
mass-check is run nightly based on users corpora submission, from those
data, scores are assigned to rules and new rules are promoted
Checking how rules are performing
RuleQA:
score assigned to messages that has been hit by a rule
ham/spam hit by a single rule
rules that overlaps on a particular rule
Checking how rules are performing
ELK:
any info that could be detected from log files
ham/spam hit by a single rule
check how a single header is evaluated as spam/ham
What have SpamAssassin done in 3 years and a half ?
sysadmin team and mass-check work
security fixes for PDFInfo plugin and core modules
CVE-2017-15705, CVE-2016-1238, CVE-2018-11780 & CVE-2018-11781
perl bug triggered by SA on RedHat distros
What have SpamAssassin done in 3 years and a half ?
Assorted improvements:
faster startup code and free(3) fixes for spamc(1)
SSLv3 support removed from spamc(1)
freemail antiforge improvements
added possibility to score based on continents in geo-aware plugins
improvements in URILocalBL plugin
TxRep file descriptor leak fixes
better check for http[s] mismatch plugin
regression tests switched to Test::More
What have SpamAssassin done in 3 years and a half ?
HashBL plugin
The HashBL plugin is the interface to
The Email Blocklist (EBL).
The EBL is intended to filter spam
that is sent from IP addresses and
domains that cannot be blocked
without causing significant numbers of
false positives.
What have SpamAssassin done in 3 years and a half ?
GeoIP2 support
Starting on 04/01/2018 Maxmind
legacy geoip databases have been
discontinued.
GeoIP2 support has been added to
RelayCountry and URILocalBL plugins.
In addiction RelayCountry supports
also IP::Country::DB File as an option.
What have SpamAssassin done in 3 years and a half ?
Anti phishing plugin
A new anti phishing plugin has been
developed, it searches phishing uri in a
database downloaded from PhishTank
or from OpenPhish.
What have SpamAssassin done in 3 years and a half ?
Resource limits plugin
A new plugin that uses BSD::Resource
perl module to assure your spamd
child processes do not exceed specified
CPU or memory limit.
What have SpamAssassin done in 3 years and a half ?
”From Name” spoof plugin
A new plugin that perform various
tests to detect spoof attempts using
the From header name section.
From: "safeaddress@paypal.com" <hacked@hacked.eu>
What have SpamAssassin done in 3 years and a half (unofficial) ?
”Ole Macro” detection plugins
Two new plugins have been developed
to check if an email contains an Office
attachment with a macro. They will
probably be integrated in one official
plugin.
What have SpamAssassin done in 3 years and a half (unofficial) ?
”Url shortener” plugin
A plugin that detects the presence of
url shorteners and checks in blacklists
for their targets has been developed.
KAM.cf rules: respond faster to spam
KAM.cf rules
KAM.cf is a set of
”additional/unofficial” rules developed
to respond faster to spam, standard
rules takes some days to be deployed
due to masscheck.
They are very effective but there could
be ”very few” false positives.
International channels
International channels
Channels are a set of signed rules, they
are important and very effective
because standard rules are mostly base
on english emails.
SpamAssassin: the future
SpamAssassin 4.0 and future releases
full utf-8 support
GeoDB module for a better
geolocalization support
better TxRep handling
check uris inside attachments
ole macro and url shorteners
plugins
How to help ?
Help needed for better spam handling
participate in masscheck
write to users@ ml if you
encounter false positives
open bug reports if you find bugs
test new code
Bibliography
Some useful links
Masscheck
https://wiki.apache.org/spamassassin/NightlyMassCheck
RuleQA
https://wiki.apache.org/spamassassin/RuleQaApp
https://ruleqa.spamassassin.org
KAM rules
https://www.pccc.com/downloads/SpamAssassin/contrib/KAM.cf
Rules in SpamAssassin developers sandboxes
https://svn.apache.org/repos/asf/spamassassin/trunk/rulesrc/sandbox
Bibliography
Some useful links
International channels and rules
http://sa.zmi.at
https://spamassassin.snb.it
http://lemat.priv.pl/pliki/sa body test pl.cf
https://www.michelinakis.gr/Dimitris/spamassassin/gr domain.cf
Unofficial plugins
https://github.com/smfreegard/DecodeShortURLs
https://github.com/fmbla/spamassassin-olemacro
https://github.com/bigio/spamassassin-vba-macro

More Related Content

Similar to Fighting Spam for fun and profit

What's new in SpamAssassin 3.4.3
What's new in SpamAssassin 3.4.3What's new in SpamAssassin 3.4.3
What's new in SpamAssassin 3.4.3Giovanni Bechis
 
An Effective Spam Protection System
An Effective Spam Protection SystemAn Effective Spam Protection System
An Effective Spam Protection SystemApollo_n
 
Do Humans Beat Computers At Pattern Recognition
Do Humans Beat Computers At Pattern RecognitionDo Humans Beat Computers At Pattern Recognition
Do Humans Beat Computers At Pattern RecognitionBitdefender
 
Malware Analysis Made Simple
Malware Analysis Made SimpleMalware Analysis Made Simple
Malware Analysis Made SimplePaul Melson
 
Lab-3 Cyber Threat Analysis In Lab-3, you will do some c.docx
Lab-3 Cyber Threat Analysis        In Lab-3, you will do some c.docxLab-3 Cyber Threat Analysis        In Lab-3, you will do some c.docx
Lab-3 Cyber Threat Analysis In Lab-3, you will do some c.docxLaticiaGrissomzz
 
BSidesDC 2016 Beyond Automated Testing
BSidesDC 2016 Beyond Automated TestingBSidesDC 2016 Beyond Automated Testing
BSidesDC 2016 Beyond Automated TestingAndrew McNicol
 
Symantec AntiSpam Complete Overview (PowerPoint)
Symantec AntiSpam Complete Overview (PowerPoint)Symantec AntiSpam Complete Overview (PowerPoint)
Symantec AntiSpam Complete Overview (PowerPoint)webhostingguy
 
Symantec AntiSpam Complete Overview (PowerPoint)
Symantec AntiSpam Complete Overview (PowerPoint)Symantec AntiSpam Complete Overview (PowerPoint)
Symantec AntiSpam Complete Overview (PowerPoint)webhostingguy
 
Detecting Spam Zombies by Monitoring Outgoing Messages
Detecting  Spam Zombies  by  Monitoring  Outgoing  MessagesDetecting  Spam Zombies  by  Monitoring  Outgoing  Messages
Detecting Spam Zombies by Monitoring Outgoing Messages Gowtham Chandra
 
Andrew and Zac RVA-Beyond-Automated-Testing-2016.ppt
Andrew and Zac RVA-Beyond-Automated-Testing-2016.pptAndrew and Zac RVA-Beyond-Automated-Testing-2016.ppt
Andrew and Zac RVA-Beyond-Automated-Testing-2016.pptBUSHRASHAIKH804312
 
Monitoring the Spread of Active Worms in Internet
Monitoring the Spread of Active Worms in InternetMonitoring the Spread of Active Worms in Internet
Monitoring the Spread of Active Worms in InternetIOSR Journals
 
Tips for web security
Tips for web securityTips for web security
Tips for web securitykareowebtech
 
Tips for web security
Tips for web securityTips for web security
Tips for web securitykareowebtech
 
Password hacking
Password hackingPassword hacking
Password hackingMr. FM
 
20160211 OWASP Charlotte RASP
20160211 OWASP Charlotte RASP20160211 OWASP Charlotte RASP
20160211 OWASP Charlotte RASPchadtindel
 
Web design premium
Web design premiumWeb design premium
Web design premiumjeannined_1
 
20160225 OWASP Atlanta Prevoty RASP
20160225 OWASP Atlanta Prevoty RASP20160225 OWASP Atlanta Prevoty RASP
20160225 OWASP Atlanta Prevoty RASPchadtindel
 

Similar to Fighting Spam for fun and profit (20)

What's new in SpamAssassin 3.4.3
What's new in SpamAssassin 3.4.3What's new in SpamAssassin 3.4.3
What's new in SpamAssassin 3.4.3
 
An Effective Spam Protection System
An Effective Spam Protection SystemAn Effective Spam Protection System
An Effective Spam Protection System
 
Do Humans Beat Computers At Pattern Recognition
Do Humans Beat Computers At Pattern RecognitionDo Humans Beat Computers At Pattern Recognition
Do Humans Beat Computers At Pattern Recognition
 
Malware Analysis Made Simple
Malware Analysis Made SimpleMalware Analysis Made Simple
Malware Analysis Made Simple
 
Spam Wars
Spam WarsSpam Wars
Spam Wars
 
Lab-3 Cyber Threat Analysis In Lab-3, you will do some c.docx
Lab-3 Cyber Threat Analysis        In Lab-3, you will do some c.docxLab-3 Cyber Threat Analysis        In Lab-3, you will do some c.docx
Lab-3 Cyber Threat Analysis In Lab-3, you will do some c.docx
 
BSidesDC 2016 Beyond Automated Testing
BSidesDC 2016 Beyond Automated TestingBSidesDC 2016 Beyond Automated Testing
BSidesDC 2016 Beyond Automated Testing
 
Symantec AntiSpam Complete Overview (PowerPoint)
Symantec AntiSpam Complete Overview (PowerPoint)Symantec AntiSpam Complete Overview (PowerPoint)
Symantec AntiSpam Complete Overview (PowerPoint)
 
Symantec AntiSpam Complete Overview (PowerPoint)
Symantec AntiSpam Complete Overview (PowerPoint)Symantec AntiSpam Complete Overview (PowerPoint)
Symantec AntiSpam Complete Overview (PowerPoint)
 
Detecting Spam Zombies by Monitoring Outgoing Messages
Detecting  Spam Zombies  by  Monitoring  Outgoing  MessagesDetecting  Spam Zombies  by  Monitoring  Outgoing  Messages
Detecting Spam Zombies by Monitoring Outgoing Messages
 
Jt3616901697
Jt3616901697Jt3616901697
Jt3616901697
 
Andrew and Zac RVA-Beyond-Automated-Testing-2016.ppt
Andrew and Zac RVA-Beyond-Automated-Testing-2016.pptAndrew and Zac RVA-Beyond-Automated-Testing-2016.ppt
Andrew and Zac RVA-Beyond-Automated-Testing-2016.ppt
 
Monitoring the Spread of Active Worms in Internet
Monitoring the Spread of Active Worms in InternetMonitoring the Spread of Active Worms in Internet
Monitoring the Spread of Active Worms in Internet
 
Spamato
SpamatoSpamato
Spamato
 
Tips for web security
Tips for web securityTips for web security
Tips for web security
 
Tips for web security
Tips for web securityTips for web security
Tips for web security
 
Password hacking
Password hackingPassword hacking
Password hacking
 
20160211 OWASP Charlotte RASP
20160211 OWASP Charlotte RASP20160211 OWASP Charlotte RASP
20160211 OWASP Charlotte RASP
 
Web design premium
Web design premiumWeb design premium
Web design premium
 
20160225 OWASP Atlanta Prevoty RASP
20160225 OWASP Atlanta Prevoty RASP20160225 OWASP Atlanta Prevoty RASP
20160225 OWASP Atlanta Prevoty RASP
 

More from Giovanni Bechis

SpamAssassin 4.0 new features
SpamAssassin 4.0 new featuresSpamAssassin 4.0 new features
SpamAssassin 4.0 new featuresGiovanni Bechis
 
ACME and mod_md: tls certificates made easy
ACME and mod_md: tls certificates made easyACME and mod_md: tls certificates made easy
ACME and mod_md: tls certificates made easyGiovanni Bechis
 
Scaling antispam solutions with Puppet
Scaling antispam solutions with PuppetScaling antispam solutions with Puppet
Scaling antispam solutions with PuppetGiovanni Bechis
 
Linux seccomp(2) vs OpenBSD pledge(2)
Linux seccomp(2) vs OpenBSD pledge(2)Linux seccomp(2) vs OpenBSD pledge(2)
Linux seccomp(2) vs OpenBSD pledge(2)Giovanni Bechis
 
Pf: the OpenBSD packet filter
Pf: the OpenBSD packet filterPf: the OpenBSD packet filter
Pf: the OpenBSD packet filterGiovanni Bechis
 
ELK: a log management framework
ELK: a log management frameworkELK: a log management framework
ELK: a log management frameworkGiovanni Bechis
 
OpenSSH: keep your secrets safe
OpenSSH: keep your secrets safeOpenSSH: keep your secrets safe
OpenSSH: keep your secrets safeGiovanni Bechis
 
OpenSMTPD: we deliver !!
OpenSMTPD: we deliver !!OpenSMTPD: we deliver !!
OpenSMTPD: we deliver !!Giovanni Bechis
 
LibreSSL, one year later
LibreSSL, one year laterLibreSSL, one year later
LibreSSL, one year laterGiovanni Bechis
 
SOGo: sostituire Microsoft Exchange con software Open Source
SOGo: sostituire Microsoft Exchange con software Open SourceSOGo: sostituire Microsoft Exchange con software Open Source
SOGo: sostituire Microsoft Exchange con software Open SourceGiovanni Bechis
 
Cloud storage, i tuoi files, ovunque con te
Cloud storage, i tuoi files, ovunque con teCloud storage, i tuoi files, ovunque con te
Cloud storage, i tuoi files, ovunque con teGiovanni Bechis
 
Npppd: easy vpn with OpenBSD
Npppd: easy vpn with OpenBSDNpppd: easy vpn with OpenBSD
Npppd: easy vpn with OpenBSDGiovanni Bechis
 
Openssh: comunicare in sicurezza
Openssh: comunicare in sicurezzaOpenssh: comunicare in sicurezza
Openssh: comunicare in sicurezzaGiovanni Bechis
 
Ipv6: il futuro di internet
Ipv6: il futuro di internetIpv6: il futuro di internet
Ipv6: il futuro di internetGiovanni Bechis
 
L'ABC della crittografia
L'ABC della crittografiaL'ABC della crittografia
L'ABC della crittografiaGiovanni Bechis
 
Relayd: a load balancer for OpenBSD
Relayd: a load balancer for OpenBSD Relayd: a load balancer for OpenBSD
Relayd: a load balancer for OpenBSD Giovanni Bechis
 
Pf e netfilter, analisi dei firewall open source
Pf e netfilter, analisi dei firewall open sourcePf e netfilter, analisi dei firewall open source
Pf e netfilter, analisi dei firewall open sourceGiovanni Bechis
 

More from Giovanni Bechis (20)

the Apache way
the Apache waythe Apache way
the Apache way
 
SpamAssassin 4.0 new features
SpamAssassin 4.0 new featuresSpamAssassin 4.0 new features
SpamAssassin 4.0 new features
 
ACME and mod_md: tls certificates made easy
ACME and mod_md: tls certificates made easyACME and mod_md: tls certificates made easy
ACME and mod_md: tls certificates made easy
 
Scaling antispam solutions with Puppet
Scaling antispam solutions with PuppetScaling antispam solutions with Puppet
Scaling antispam solutions with Puppet
 
Linux seccomp(2) vs OpenBSD pledge(2)
Linux seccomp(2) vs OpenBSD pledge(2)Linux seccomp(2) vs OpenBSD pledge(2)
Linux seccomp(2) vs OpenBSD pledge(2)
 
Pledge in OpenBSD
Pledge in OpenBSDPledge in OpenBSD
Pledge in OpenBSD
 
Pf: the OpenBSD packet filter
Pf: the OpenBSD packet filterPf: the OpenBSD packet filter
Pf: the OpenBSD packet filter
 
ELK: a log management framework
ELK: a log management frameworkELK: a log management framework
ELK: a log management framework
 
OpenSSH: keep your secrets safe
OpenSSH: keep your secrets safeOpenSSH: keep your secrets safe
OpenSSH: keep your secrets safe
 
OpenSMTPD: we deliver !!
OpenSMTPD: we deliver !!OpenSMTPD: we deliver !!
OpenSMTPD: we deliver !!
 
LibreSSL, one year later
LibreSSL, one year laterLibreSSL, one year later
LibreSSL, one year later
 
LibreSSL
LibreSSLLibreSSL
LibreSSL
 
SOGo: sostituire Microsoft Exchange con software Open Source
SOGo: sostituire Microsoft Exchange con software Open SourceSOGo: sostituire Microsoft Exchange con software Open Source
SOGo: sostituire Microsoft Exchange con software Open Source
 
Cloud storage, i tuoi files, ovunque con te
Cloud storage, i tuoi files, ovunque con teCloud storage, i tuoi files, ovunque con te
Cloud storage, i tuoi files, ovunque con te
 
Npppd: easy vpn with OpenBSD
Npppd: easy vpn with OpenBSDNpppd: easy vpn with OpenBSD
Npppd: easy vpn with OpenBSD
 
Openssh: comunicare in sicurezza
Openssh: comunicare in sicurezzaOpenssh: comunicare in sicurezza
Openssh: comunicare in sicurezza
 
Ipv6: il futuro di internet
Ipv6: il futuro di internetIpv6: il futuro di internet
Ipv6: il futuro di internet
 
L'ABC della crittografia
L'ABC della crittografiaL'ABC della crittografia
L'ABC della crittografia
 
Relayd: a load balancer for OpenBSD
Relayd: a load balancer for OpenBSD Relayd: a load balancer for OpenBSD
Relayd: a load balancer for OpenBSD
 
Pf e netfilter, analisi dei firewall open source
Pf e netfilter, analisi dei firewall open sourcePf e netfilter, analisi dei firewall open source
Pf e netfilter, analisi dei firewall open source
 

Recently uploaded

Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
How to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfHow to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfLivetecs LLC
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noidabntitsolutionsrishis
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 

Recently uploaded (20)

Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
How to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfHow to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdf
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 

Fighting Spam for fun and profit

  • 1. Fighting spam for fun and profit Giovanni Bechis <gbechis@apache.org> Open Source Summit Europe 2018, Edinburgh
  • 2. About Me sysadmin and developer @SNB OpenBSD hacker for ∼ 10 years Apache SpamAssassin developer random patches in random open source software (amavisd-new, courier-imap, cyrus-sasl, memcached, ...)
  • 3. Different types of Spam Spam is different for everyone ”Nigerian” scam plain text messages advertising messages messages created by bots phishing messages
  • 4. Different types of Spam Spam is different for everyone and it depends on: spoken languages personal interests social networks used web sites visited (and subscribed)
  • 5. SA as a framework SpamAssassin should be seen as a framework, not as ”plug & play” software if you follow HOWTOs you will not take the best out of any software to take the best out of SA: write your ”simple” rules participate to ”masscheck” SA is a general purpose antispam framework, it’s used to filter spam in some webforms and it’s even integrated in a not-so-famous cms
  • 6. What’s Masscheck ? a tool to test rules for accuracy and hit-rate a good way to check how rules are performing mass-check is run nightly based on users corpora submission, from those data, scores are assigned to rules and new rules are promoted
  • 7. Checking how rules are performing RuleQA: score assigned to messages that has been hit by a rule ham/spam hit by a single rule rules that overlaps on a particular rule
  • 8. Checking how rules are performing ELK: any info that could be detected from log files ham/spam hit by a single rule check how a single header is evaluated as spam/ham
  • 9. What have SpamAssassin done in 3 years and a half ? sysadmin team and mass-check work security fixes for PDFInfo plugin and core modules CVE-2017-15705, CVE-2016-1238, CVE-2018-11780 & CVE-2018-11781 perl bug triggered by SA on RedHat distros
  • 10. What have SpamAssassin done in 3 years and a half ? Assorted improvements: faster startup code and free(3) fixes for spamc(1) SSLv3 support removed from spamc(1) freemail antiforge improvements added possibility to score based on continents in geo-aware plugins improvements in URILocalBL plugin TxRep file descriptor leak fixes better check for http[s] mismatch plugin regression tests switched to Test::More
  • 11. What have SpamAssassin done in 3 years and a half ? HashBL plugin The HashBL plugin is the interface to The Email Blocklist (EBL). The EBL is intended to filter spam that is sent from IP addresses and domains that cannot be blocked without causing significant numbers of false positives.
  • 12. What have SpamAssassin done in 3 years and a half ? GeoIP2 support Starting on 04/01/2018 Maxmind legacy geoip databases have been discontinued. GeoIP2 support has been added to RelayCountry and URILocalBL plugins. In addiction RelayCountry supports also IP::Country::DB File as an option.
  • 13. What have SpamAssassin done in 3 years and a half ? Anti phishing plugin A new anti phishing plugin has been developed, it searches phishing uri in a database downloaded from PhishTank or from OpenPhish.
  • 14. What have SpamAssassin done in 3 years and a half ? Resource limits plugin A new plugin that uses BSD::Resource perl module to assure your spamd child processes do not exceed specified CPU or memory limit.
  • 15. What have SpamAssassin done in 3 years and a half ? ”From Name” spoof plugin A new plugin that perform various tests to detect spoof attempts using the From header name section. From: "safeaddress@paypal.com" <hacked@hacked.eu>
  • 16. What have SpamAssassin done in 3 years and a half (unofficial) ? ”Ole Macro” detection plugins Two new plugins have been developed to check if an email contains an Office attachment with a macro. They will probably be integrated in one official plugin.
  • 17. What have SpamAssassin done in 3 years and a half (unofficial) ? ”Url shortener” plugin A plugin that detects the presence of url shorteners and checks in blacklists for their targets has been developed.
  • 18. KAM.cf rules: respond faster to spam KAM.cf rules KAM.cf is a set of ”additional/unofficial” rules developed to respond faster to spam, standard rules takes some days to be deployed due to masscheck. They are very effective but there could be ”very few” false positives.
  • 19. International channels International channels Channels are a set of signed rules, they are important and very effective because standard rules are mostly base on english emails.
  • 20. SpamAssassin: the future SpamAssassin 4.0 and future releases full utf-8 support GeoDB module for a better geolocalization support better TxRep handling check uris inside attachments ole macro and url shorteners plugins
  • 21. How to help ? Help needed for better spam handling participate in masscheck write to users@ ml if you encounter false positives open bug reports if you find bugs test new code
  • 22. Bibliography Some useful links Masscheck https://wiki.apache.org/spamassassin/NightlyMassCheck RuleQA https://wiki.apache.org/spamassassin/RuleQaApp https://ruleqa.spamassassin.org KAM rules https://www.pccc.com/downloads/SpamAssassin/contrib/KAM.cf Rules in SpamAssassin developers sandboxes https://svn.apache.org/repos/asf/spamassassin/trunk/rulesrc/sandbox
  • 23. Bibliography Some useful links International channels and rules http://sa.zmi.at https://spamassassin.snb.it http://lemat.priv.pl/pliki/sa body test pl.cf https://www.michelinakis.gr/Dimitris/spamassassin/gr domain.cf Unofficial plugins https://github.com/smfreegard/DecodeShortURLs https://github.com/fmbla/spamassassin-olemacro https://github.com/bigio/spamassassin-vba-macro