Создание рецепта регулярного выражения Procmail для вредоносного текста сообщения электронной почты

На работе мы недавно начали получать электронные письма с чем-то похожим на вредоносный код, содержащийся в теле письма.Я пытаюсь создать рецепт procmail, который будет использовать регулярное выражение для сопоставления только несловесных символов, перечисленных в длинной строке, подобной этой:

/] \ / [%} (-: {{[% + \! (? |} [[+ {> - | *; \]}>?]}? (>: - \ - / [\ [% - = \ //> [?? +]}} (:) / | {/ # Afe0: /] \ / [%} (-: {{[% + \! (? |} [[+ {> - | *; \]}>?]}? (>: - \ - / [\ [% - = \ //> [?? +]}} (:) / | {/ # Jenny: /] \ / [%} (-: {{[% + \! (? |} [[ + {> - | *; \]}>?]}? (>: - \ - / [\ [% - = \ //> [?? +]}} (:) / | {/ # preston: / ] \ / [%} (-: {{[% + \! (? |} [[+ {> - | *; \]}>?]}? (>: - \ - / [\ [% - = \ //> [?? +]}} (:) / | {/ # Afectarac: /] \ / [%} (-: {{[% + \! (? |} [[+ {> - | * ; \]}>?]}? (>: - \ - / [\ [% - = \ //> [?? +]}} (:) / | {/ # FORTHCO: /] \ / [%} (-: {{[% + \! (? |} [[+ {> - | *; \]}>?]}? (>: - \ - / [\ [% - = \ //> [? ? +]}} (:) / | {/ # фоны: /] \ / [%} (-: {{[% + \! (? |} [[+ {> - | *; \]}>? ]}? (>: - \ - / [\ [% - = \ //> [?? +]}} (:) / | {/ # бобовые

Обратите внимание, что пробелов нет. Это небольшой пример , в некоторых электронных письмах есть строки длиной более 20 000 символов. Это мешает нашей фильтрации спама, и я надеюсь, что есть способ сопоставить длинные строки символов, не являющихся словами, без разделителей пробелов. До сих пор я пробовал использовать несколько вариантов / частей / комбинации o f то, что показано ниже, с частичным успехом - у меня проблемы с поиском способа сделать эту работу, не обнаруживая при этом большого количества ложных срабатываний:

:0 
* B ?? ^.*(!@#$%^&*()[]{})+ && ! </([a-z|A-Z])/>
$DEFAULT/MalSpam/

Я думал, что если я могу создать регулярное выражение, которое соответствует, то я смогу объедините это с другим правилом, которое отправляет электронное письмо в отдельный каталог, если общее количество символов в строке превышает определенное количество, скажем, 500. Эта часть еще не выяснена ... другое регулярное выражение, которое я использовал в прошлом, имело Флаг \ W, который соответствует только символам, отличным от слов, есть ли у procmail эквивалент? Как я могу это сделать?

0
20.04.2019, 18:13
0 ответов

Теги

Похожие вопросы