summaryrefslogtreecommitdiffstats
path: root/rules/misc.lua
diff options
context:
space:
mode:
authorSteve Freegard <steve@stevefreegard.com>2017-03-23 21:27:02 +0000
committerSteve Freegard <steve@stevefreegard.com>2017-03-23 21:27:02 +0000
commitc53dd6be7203038a0be6e73f1eb4beeeecd65b91 (patch)
tree88c01448d83d955c0b30a83fc5b3b269d1d6c15b /rules/misc.lua
parent7021ddcc38a0f05b2bf69849f645a848e06be1e2 (diff)
downloadrspamd-c53dd6be7203038a0be6e73f1eb4beeeecd65b91.tar.gz
rspamd-c53dd6be7203038a0be6e73f1eb4beeeecd65b91.zip
New rules
Diffstat (limited to 'rules/misc.lua')
-rw-r--r--rules/misc.lua23
1 files changed, 20 insertions, 3 deletions
diff --git a/rules/misc.lua b/rules/misc.lua
index e289215c9..db754a98e 100644
--- a/rules/misc.lua
+++ b/rules/misc.lua
@@ -406,7 +406,8 @@ rspamd_config:register_symbol{
score = 0,
}
-rspamd_config.SPOOF_DISPLAY_NAME = {
+local check_from_display_name = rspamd_config:register_symbol{
+ name = 'CHECK_FROM_SPOOF',
callback = function (task)
local from = task:get_from(2)
if not (from and from[1] and from[1].name) then return false end
@@ -420,16 +421,32 @@ rspamd_config.SPOOF_DISPLAY_NAME = {
local to = task:get_recipients(2)
-- Be careful with undisclosed-recipients:; as domain will be an empty string
if not (to and to[1] and to[1]['domain'] and to[1]['domain'] ~= '') then
+ task:insert_result('FROM_NEQ_DISPLAY_NAME', 1.0, from[1]['domain'], parsed[1]['domain'])
return false
end
if util.strequal_caseless(to[1]['domain'], parsed[1]['domain']) then
- return true,from[1]['domain'],parsed[1]['domain']
+ task:insert_result('SPOOF_DISPLAY_NAME', 1.0, from[1]['domain'], parsed[1]['domain'])
+ return false
end
end
return false
end,
+}
+
+rspamd_config:register_symbol{
+ type = 'virtual',
+ parent = check_from_display_name,
+ name = 'SPOOF_DISPLAY_NAME',
description = 'Display name is being used to spoof and trick the recipient',
- score = 8.0
+ score = 8,
+}
+
+rspamd_config:register_symbol{
+ type = 'virtual',
+ parent = check_from_display_name,
+ name = 'FROM_NEQ_DISPLAY_NAME',
+ description = 'Display name contains an email address different to the From address',
+ score = 4,
}
rspamd_config.SPOOF_REPLYTO = {