Hello,

I do full uris dns lookups through a simple SA plugin. The core lines in the function are:

sub check_fulluris {
        my ($self, $msg) = @_;
        my $pms = $msg->{permsgstatus};
        my $body = $msg->{msg}->get_pristine_body();
        foreach my $this_url (uniq( $body =~ /(http|https):\/\/(.*?)\//g )) {

        # code to do dns lookups

          }
}

and in the .cf

urirhssub       TEST_FULL_URIS     mypersonal.dnsbl.       A 127.0.0.2
body              TEST_FULL_URIS eval:check_fulluris('TEST_FULL_URIS')

As for my personal reason of doing full hostnames lookups, I find it easier to mantain a rbldnsd zone with hacked websites/landing pages of marketers than to write uri rules in the .cf each time

Hope it helps

Daniele Duca



On 16/02/2018 22:08, jahlives wrote:
Hi list

I'm looking for a way in spamassassin to run a full-uri-host rbl lookup
for a specific rule. I do not want to discuss about sense or non-sense
of full-uri-hosts lookups ;-)

lets assume I have two rules which query my own rbl

urirhssub HIT_DOMAIN    my.rbl.tld.     A 127.0.0.2
body    HIT_DOMAIN      eval:check_uridnsbl('HIT_DOMAIN')

urifullsub HIT_FULL     my.rbl.tld.     A 127.0.0.4
body    HIT_FULL        eval:check_uridnsbl('HIT_FULL')

I know urifullsub does not exist, should just visualize what I try to
achieve :-)

now for a uri like www.sub.domain.tld both rules should be tested. The
first one for domain.tld (which sa does with rh lookups) and the second
one with the full-uri-host (www.sub.domain.tld)

I read about aux_tlds but I think this does not help me as if I add
domain.tld to aux_tlds the first query above would be fired with
sub.domain.tld

I thought that the second query could be solved using askdns plugin in a
way like this

askdns HIT_FULL _URIFULLHOST_.my.rbl.tld.       A       127.0.0.4

But how to get access to urifullhost? :-)

Currently I use a plugin of my antispam glue to perform the full uri
host lookups on uris found. This plugin adds a X-Header upon hit on
which spamassassin fires and scores.
So I have a solution to this "problem" but it would be nice to do both
queries from spamassassin :-)

Cheers

tobi


Reply via email to