On Thu, 18 Jan 2018 11:52:36 +0000 (UTC)
Pedro David Marco wrote:

>  David,
> This rule can do the full job... i have tested it with good
> results..   (Can be tested here: https://regex101.com/r/Vpmhjz/3 ) It
> checks if the level domain next to the TLD in the From:name matches
> the domain next to the TLD in From:email header
>  FROM_DOMAINS_MISMATCH
> From !~ 
> /(?:[^<].+?)\@(?:.+?\.)*?(.+?\.)(?:.+?).*?<.+?(\@\1|\@.*?\.\1)/describe
>   FROM_DOMAINS_MISMATCH Domain name mismatch in From header


!~ matches are dangerous because they match by default if you
don't anticipate all the legitimate formats. The above will FP on a
simple email address. It could be rewritten as a __FROM_DOMAINS_MATCH
and used in a meta rule.


It's also not a complete solution as it doesn't handle third-level
domains correctly e.g. in

"supp...@paypal.co.uk" <jkhj...@bogus.co.uk>

"co" will match "co". This is why it's probably best to do it in perl
where the tlds from 20_aux_tlds.cf can be used.

Reply via email to