From: Steve Freegard Date: Fri, 28 Jun 2019 23:30:17 +0000 (+0100) Subject: Add MIME_BASE64_TEXT_BOGUS rule X-Git-Tag: 2.0~669^2~1 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=63c45fc5aa22f95b2e68a138f3045d43dc9a9347;p=thirdparty%2Frspamd.git Add MIME_BASE64_TEXT_BOGUS rule --- diff --git a/rules/headers_checks.lua b/rules/headers_checks.lua index d8e4b59038..0874d889f1 100644 --- a/rules/headers_checks.lua +++ b/rules/headers_checks.lua @@ -1064,6 +1064,26 @@ rspamd_config.MIME_BASE64_TEXT = { type = 'mime', } +rspamd_config.MIME_BASE64_TEXT_BOGUS = { + callback = function(task) + local parts = task:get_text_parts() + if (not parts) then return false end + -- Check each part and look for base64 encoded text parts + -- where the part does not have any 8bit characters within it + for _, part in ipairs(parts) do + local mimepart = part:get_mimepart(); + if (check_for_base64_text(mimepart) and not part:has_8bit()) then + return true + end + end + return false + end, + description = 'Has text part encoded in base64 that does not contain any 8bit characters', + score = 1.0, + group = 'headers', + type = 'mime', +} + local function is_8bit_addr(addr) if addr.flags and addr.flags['8bit'] then return true