Безпека електронної пошти залишається критично важливим інструментом для бізнес-комунікацій, але водночас є однією з найбільших вразливостей у системах безпеки. Щодня надсилається понад 300 мільярдів електронних листів, і 3,4 мільярда з них — це фішингові повідомлення. У цій статті ми детально розглянемо три основні технології автентифікації електронної пошти: SPF, DKIM та DMARC, їх технічну реалізацію та найкращі практики налаштування.
Що таке SPF і як він працює (Безпека електронної пошти)
SPF (Sender Policy Framework) — це протокол автентифікації електронної пошти, який перевіряє, чи дозволено серверу відправляти листи від імені певного домену. SPF працює через DNS TXT-запис, який містить список IP-адрес і серверів, авторизованих для надсилання пошти від імені домену.
Синтаксис SPF-запису
SPF-запис завжди починається з версії v=spf1 і закінчується механізмом all із кваліфікатором:
v=spf1 ip4:203.0.113.5 include:_spf.google.com ~all
Основні компоненти:
v=spf1— версія SPF (завжди першою)ip4:абоip6:— авторизовані IPv4 або IPv6 адресиinclude:— включення SPF-запису іншого доменуmx— дозволяє MX-серверам домену відправляти пошту~all— softfail (м’який відхил) або-all— hardfail (жорсткий відхил)
Кваліфікатори SPF
SPF підтримує чотири типи кваліфікаторів:
+(Pass) — дозволити (за замовчуванням)-(Fail) — блокувати~(Softfail) — прийняти, але позначити як підозріле?(Neutral) — не приймати рішення
Найкращі практики SPF
1. Використовуйте ~all замість -all
Рекомендується використовувати softfail (~all) замість hardfail (-all), оскільки жорсткий відхил може призвести до блокування листів на рівні SMTP ще до перевірки DKIM та DMARC. Це особливо важливо для доменів із політикою DMARC enforce.
2. Обмежуйте DNS-запити
SPF дозволяє максимум 10 DNS-запитів для одного запису. Перевищення цього ліміту призводить до помилки PermError і ігнорування SPF-запису.
3. Регулярно оновлюйте SPF-запис
Видаляйте невикористовувані IP-адреси та механізми, що більше не застосовуються. Використовуйте DMARC-моніторинг для виявлення неактивних джерел.
DKIM: цифровий підпис для електронної пошти
DKIM (DomainKeys Identified Mail) — це технологія, яка використовує криптографічний підпис для підтвердження автентичності відправника та цілісності змісту листа. DKIM додає цифровий підпис до заголовка листа, який можна перевірити за допомогою публічного ключа, розміщеного в DNS.
Як працює DKIM
- Генерація ключів: Адміністратор домену генерує пару ключів — приватний і публічний.
- Підписання листа: Поштовий сервер підписує вихідний лист приватним ключем.
- Публікація публічного ключа: Публічний ключ публікується в DNS як TXT-запис.
- Перевірка: Сервер одержувача перевіряє підпис, використовуючи публічний ключ із DNS.
Структура DKIM-запису
DKIM-запис має наступний формат:
selector._domainkey.yourdomain.com. IN TXT "v=DKIM1; k=rsa; p=your_public_key_here"
Компоненти:
selector— унікальний ідентифікатор DKIM-ключа_domainkey— стандартний префікс для DKIMv=DKIM1— версія DKIMk=rsa— алгоритм шифрування (RSA)p=— публічний ключ у форматі base64
Генерація DKIM-ключів
Для генерації DKIM-ключів можна використовувати OpenSSL:
openssl genrsa -out private.key 2048
openssl rsa -in private.key -pubout -out public.key
Найкращі практики DKIM
1. Використовуйте 2048-бітні ключі
Рекомендується використовувати ключі довжиною 2048 біт для кращої безпеки. Ключі довжиною 512 біт вважаються занадто слабкими і можуть бути відхилені деякими серверами.
2. Ротація ключів
Змінюйте DKIM-ключі кожні 6-12 місяців для підвищення безпеки. Використовуйте кілька селекторів для плавної ротації без простоїв.
3. Вирівнювання домену
Переконайтеся, що домен у DKIM-підписі відповідає домену в адресі “From”. Це необхідно для успішного проходження DMARC-перевірки.
4. Підписуйте всі вихідні листи
Налаштуйте поштовий сервер для автоматичного підписання всіх вихідних повідомлень.
DMARC: комплексна політика автентифікації
DMARC (Domain-based Message Authentication, Reporting & Conformance) — це протокол, який поєднує SPF і DKIM та додає політику обробки листів, що не пройшли автентифікацію. DMARC також надає механізм звітності для моніторингу використання домену.
Структура DMARC-запису
DMARC-запис розміщується як TXT-запис у DNS із наступним форматом:
_dmarc.yourdomain.com. IN TXT "v=DMARC1; p=quarantine; rua=mailto:[email protected]; ruf=mailto:[email protected]; pct=100"
Основні теги:
v=DMARC1— версія DMARCp=— політика для листів, що не пройшли перевірку (none,quarantine,reject)rua=— адреса для агрегованих звітівruf=— адреса для детальних звітів про помилкиpct=— відсоток листів, до яких застосовується політикаaspf=— режим вирівнювання SPF (r— relaxed,s— strict)adkim=— режим вирівнювання DKIM (r— relaxed,s— strict)
Політики DMARC
DMARC підтримує три типи політик:
p=none— моніторинг без дій (рекомендується для початку)p=quarantine— помістити листи в спамp=reject— повністю відхилити листи (найбезпечніша політика)
Вирівнювання ідентифікаторів
DMARC вимагає вирівнювання принаймні одного з ідентифікаторів — SPF або DKIM. Існує два режими вирівнювання:
- Relaxed (r): Домен може бути піддоменом (наприклад,
mail.example.comдляexample.com) - Strict (s): Домен повинен точно збігатися (наприклад,
example.comдляexample.com)
Звітність DMARC
1. Агреговані звіти (RUA):
- Надсилаються щодня у форматі XML
- Містять статистику про всі листи, відправлені від імені домену
- Включають інформацію про IP-адреси, результати SPF/DKIM, дії з листами
2. Детальні звіти (RUF):
- Надсилаються в реальному часі
- Містять інформацію про конкретні листи, що не пройшли перевірку
- Використовуються для форензіки та аналізу атак
Найкращі практики DMARC
1. Поступове впровадження
Починайте з політики p=none для моніторингу та аналізу трафіку. Після виявлення всіх легітимних джерел переходьте до p=quarantine, а потім до p=reject.
2. Використовуйте pct для поступового застосування
На етапі переходу до жорсткішої політики використовуйте тег pct для поступового застосування до відсотка листів. Наприклад, pct=10 застосує політику до 10% листів.
3. Моніторинг звітів
Регулярно аналізуйте DMARC-звіти для виявлення нових джерел відправки та потенційних атак. Використовуйте спеціалізовані інструменти для автоматичної обробки XML-звітів.
4. Налаштуйте DMARC для всіх доменів
Застосовуйте DMARC не тільки до основного домену, але й до піддоменів та паркованих доменів.
Додаткові заходи безпеки
Шифрування TLS
TLS (Transport Layer Security) шифрує трафік між поштовими серверами під час передачі. Це запобігає перехопленню листів у процесі доставки.
Налаштування TLS:
- Увімкніть TLS на поштовому сервері
- Використовуйте сертифікати від довірених центрів сертифікації
- Регулярно оновлюйте версії TLS до останніх безпечних версій
S/MIME та PGP
S/MIME (Secure/Multipurpose Internet Mail Extensions) та PGP (Pretty Good Privacy) забезпечують end-to-end шифрування листів:
- Шифрують не тільки тіло листа, але й вкладення
- Захищають від доступу провайдера електронної пошти
- Вимагають обміну цифровими сертифікатами або публічними ключами
Двофакторна автентифікація (MFA)
MFA (Multi-Factor Authentication) додає додатковий рівень захисту для адміністративного доступу до поштових серверів:
- Використовуйте MFA для всіх адміністраторів
- Застосовуйте MFA для користувачів з підвищеними привілеями
- Регулярно переглядайте та оновлюйте методи автентифікації
Фільтрація спаму та антивірус
Налаштуйте фільтри спаму та антивірусні сканери на поштовому сервері:
- Використовуйте AI та машинне навчання для виявлення нових загроз
- Регулярно оновлюйте антивірусні бази
- Налаштуйте sandbox для детонації підозрілих вкладень
Моніторинг логів
Регулярно переглядайте логи поштового сервера для виявлення підозрілих активностей:
- Налаштуйте автоматичні сповіщення про незвичайні події
- Використовуйте SIEM-системи для централізованого моніторингу
- Зберігайте логи відповідно до політик безпеки організації
План реагування на інциденти
Розробіть та регулярно оновлюйте план реагування на інциденти безпеки електронної пошти:
- Ізолюйте скомпрометовані системи
- Визначте та усуньте вразливості
- Повідомте зацікавлені сторони
- Проведіть розслідування та аналіз інциденту
- Впровадьте заходи для запобігання повторенню
Висновок
Впровадження SPF, DKIM та DMARC разом із додатковими заходами безпеки є критично важливим для захисту домену від фішингу, спуфінгу та спаму. Починайте з базових налаштувань SPF та DKIM, потім переходьте до DMARC із політикою моніторингу, і поступово підвищуйте рівень захисту до p=reject. Регулярний моніторинг звітів та оновлення конфігурацій забезпечить стабільну безпеку вашої електронної пошти




