Pošta k vám chodí bez MTA-STS

Čo to je

MTA-STS (RFC 8461) je pravidlo, ktoré hovorí cudzím poštovým serverom: „poštu pre túto doménu doručuj len šifrovane a len na tieto servery“. Skladá sa z dvoch častí: TXT záznamu _mta-sts v DNS a malého textového súboru na vašom webe.

Pozerali sme sa len na verejné DNS a na ten verejný súbor s pravidlom. Nevidíme, ktoré servery vám poštu skutočne posielajú ani ako ju doručujú.

Prečo je to problém

E-mail medzi servermi sa šifruje „ak sa dá“. Útočník na ceste môže šifrovanie potlačiť a poštu prečítať alebo sfalšovať. Bez MTA-STS to odosielateľ nespozná.

Ako to opraviť

1. Zistite svoje MX servery

dig +short MX example.sk

2. Vytvorte súbor s pravidlom

Súbor musí byť dostupný na adrese https://mta-sts.example.sk/.well-known/mta-sts.txt, s platným certifikátom, odpoveďou 200 bez presmerovania a typom text/plain. Začnite v režime testing:

version: STSv1
mode: testing
mx: mail.example.sk
max_age: 604800

Riadkov mx: môže byť viac, po jednom na každý MX server. Hviezdička je povolená len na začiatku mena (*.example.sk). max_age je čas v sekundách, počas ktorého si odosielateľ pravidlo pamätá. 604800 je týždeň.

3. Publikujte TXT záznam

_mta-sts.example.sk.  TXT  "v=STSv1; id=20261109T000000"

Hodnota id je ľubovoľný reťazec. Pri každej zmene súboru ju zmeňte, inak odosielatelia starú verziu nenačítajú znova.

4. Prejdite na enforce

Po pár týždňoch bez problémov (ideálne s reportmi z TLS-RPT) zmeňte mode: testing na mode: enforce a zmeňte id.

Ďalšie varianty tohto nálezu

Režim testing

Pravidlo je nasadené, ale pri chybe odosielateľ poštu doručí aj tak. Zatiaľ nechráni. Keď sú reporty čisté, prepnite na enforce.

Príliš krátke max_age

Pravidlo funguje, len rýchlo vyprší a odosielatelia ho musia často sťahovať znova. Nastavte aspoň týždeň (max_age: 604800). Hlásime hodnotu pod jedným dňom (86400).

MX server nie je v pravidle

Niektorý z vašich MX serverov nesedí na žiadny riadok mx:. Pošta naň zostáva bez ochrany a v režime enforce ju odosielatelia odmietnu doručiť. Riadky mx: musia pokryť každý server z výpisu dig MX.

TXT záznam bez pravidla

V DNS je záznam _mta-sts, ale súbor na mta-sts.example.sk sa nepodarilo stiahnuť alebo prečítať (chýba subdoména alebo certifikát, zlý typ obsahu, chybný formát). Odosielatelia potom dostanú nefunkčné pravidlo. Opravte súbor, alebo záznam zmažte.

Keď hostiteľ pravidla náš dopyt odmietne (chyba 401, 403, 429, 5xx alebo ochranná kontrola CDN či firewallu), nález nehlásime. Nevieme určiť, že pravidlo chýba, a riadok v stráži zostane neoverený. Súbor musí byť verejne čitateľný bez prihlásenia a bez kontrol robotov, inak ho nestiahnu ani odosielatelia pošty.

Referencie