21.7. Блокировка сообщений с вложениями

Проблема

Требуется заблокировать сообщения с определёнными видами вложений на уровне SMTP. Это может защитить сеть от распространения вредоносного ПО, передаваемого через вложения в электронные письма.

Решение

Для этого можно использовать следующий фрагмент с регулярными выражениями:

# Одна неразрывная строка
/filename="?(.*)\.(bat|cmd|com|dot|exe|hta|scr|pif|vbe|vbs)"?$/ REJECT keep your malware off my network

# Одна неразрывная строка
/^Content-(Disposition|Type).*name\s*=\s*"?(.+)\.(asd|hlp|ocx|reg|bat|c[ho]m|cmd|exe|vxd|p1f|scr|hta|jse?|sh[mbs]|vb[esx]|ws[fh])"?\s*$/ REJECT Attachments that contain or end in "$3" are prohibited on this server.

Сохраните этот код в файл /etc/postfix/mime_header_checks. Затем добавьте в main.cf следующую директиву:

mime_header_checks = regexp:/etc/postfix/mime_header_checks

После внесения изменений выполните команду postfix reload, чтобы обновить конфигурацию. Этот пример позволяет блокировать файлы с расширениями, часто используемыми для распространения вредоносных программ (например, .bat, .cmd, .exe и т. д.). При необходимости список расширений можно дополнить или изменить. В представленный список не включены форматы файлов Microsoft Office (.xls, .doc, .ppt), но вы можете добавить их, если это необходимо для вашей системы безопасности.

Комментарий

Чтобы заблокировать все сообщения с вложениями, можно использовать более простое регулярное выражение:

/filename=.* REJECT all messages with attachments are rejected

При этом блокируются все виды вложений, включая VCard, вложенные подписи GPG, HTML-сообщения с вложенной графикой и сообщения Outlook/Outlook Express в формате MS-TNEF. Это может быть полезно в случае, если нет необходимости получать сообщения с вложениями. Следует учитывать, что формат MS-TNEF используется исключительно в Outlook и является закрытым стандартом, который может быть бесполезен для большинства пользователей, не работающих с этим почтовым клиентом.

В представленном списке в основном указаны форматы файлов, ассоциируемые с Microsoft. Это связано с тем, что большая часть вредоносного ПО распространяется именно через файлы, совместимые с Windows. Конечно, список можно настроить под конкретные нужды, добавляя или исключая любые расширения.

Для повышения безопасности рекомендуется регулярно обновлять список запрещённых расширений, учитывая новые угрозы. Постоянный анализ почтового трафика и мониторинг безопасности помогают минимизировать вероятность заражения сети.

См. также

Файл Postfix SMTPD_ACCESS_README и access(5); статья «Unsafe File List» в Microsoft Knowledge Base Article 291369.