aboutsummaryrefslogtreecommitdiff
path: root/modules/dnsbl
diff options
context:
space:
mode:
Diffstat (limited to 'modules/dnsbl')
-rw-r--r--modules/dnsbl/__init__.py4
-rw-r--r--modules/dnsbl/lists.py12
2 files changed, 12 insertions, 4 deletions
diff --git a/modules/dnsbl/__init__.py b/modules/dnsbl/__init__.py
index 495cbd8c..2b3daf35 100644
--- a/modules/dnsbl/__init__.py
+++ b/modules/dnsbl/__init__.py
@@ -14,11 +14,11 @@ class Module(ModuleManager.BaseModule):
lists = []
for i, arg in reversed(list(enumerate(args))):
if arg[0] == "@":
- hostname = args.pop(i)
+ hostname = args.pop(i)[1:]
if hostname in default_lists:
lists.insert(0, default_lists[hostname])
else:
- lists.insert(0, lists.DNSBL(hostname))
+ lists.insert(0, _lists.DNSBL(hostname))
lists = lists or list(default_lists.values())
diff --git a/modules/dnsbl/lists.py b/modules/dnsbl/lists.py
index ce2b6404..b84628ea 100644
--- a/modules/dnsbl/lists.py
+++ b/modules/dnsbl/lists.py
@@ -6,7 +6,7 @@ class DNSBL(object):
self.hostname = hostname
def process(self, result: str):
- return "unknown"
+ return result
class ZenSpamhaus(DNSBL):
hostname = "zen.spamhaus.org"
@@ -40,10 +40,18 @@ class DroneBL(DNSBL):
elif result in ["12", "13", "15", "16"]:
return "exploits"
+class AbuseAtCBL(DNSBL):
+ hostname = "cbl.abuseat.org"
+ def process(self, result):
+ result = result.rsplit(".", 1)[1]
+ if result == "2":
+ return "abuse"
+
DEFAULT_LISTS = [
ZenSpamhaus(),
EFNetRBL(),
- DroneBL()
+ DroneBL(),
+ AbuseAtCBL()
]
def default_lists():