Hartowanie (sub)domen nieużywanych do wysyłki i odbioru poczty

nfsec.pl 1 miesiąc temu

W

internecie możemy być właścicielem wielu domen, a w ramach nich rejestrować wiele subdomen. Nasze (sub)domeny mogą być używane do bardzo wielu zastosowań: obsługi strony (aplikacji) internetowej, poczty, serwera plików, serwera DNS, ochrony marki, działalności w wielu krajach itd. Wiele z tych (sub)domen będzie uniwersalna – zawierając pod sobą większość z wymienionych usług, a jeszcze większa ilość (licząc z subdomenami) będzie ukierunkowana na świadczenie konkretnej usługi. jeżeli nasza (sub)domena nie jest przeznaczona do obsługi poczty e-mail, niezależnie od tego, czy jest to poczta przychodząca (chcemy ją odbierać), czy wychodząca (chcemy ją wysyłać), również musimy zadbać o jej prawidłową konfigurację, aby zapobiec wykorzystywaniu tej (sub)domeny do nieuczciwych działań w internecie (czyt. podszywaniu się i wysyłaniu phishingu).

Rekordy NULL MX:

Adres serwera pocztowego jest ustalany na podstawie zapytań DNS. Na początku szukany jest rekord MX, gdy ten typ rekordu nie zostanie odnaleziony / zwrócony szukany jest kolejny rekord: typu A (IPv4) / AAAA (IPv6) jako adres rezerwowy. Niestety oznacza to, iż w wielu przypadkach rekordy typu A / AAAA są uważane za adres serwera pocztowego, choćby jeżeli taki adres nie przyjmuje poczty. Powodem takiego zachowania jest zapewnienie metody awaryjnej w przypadku błędnej konfiguracji DNS lub jeżeli usługa DNS nie obsługuje rekordu typu MX (co było problemem w 1982 roku, kiedy wydano oryginalny dokument RFC dla protokołu SMTP). Powoduje to sytuacje, iż po wysłaniu wiadomości e-mail nasz serwer pocztowy wraca do nas z informacją, iż nasza wiadomość nie została dostarczona, ale system jeszcze spróbuje (kilka razy) później. Czasami systemy poczty elektronicznej mogą próbować dostarczyć wiadomości e-mail przez wiele godzin lub choćby kilka dni – po przekroczeniu tego czasu lub określonej ilości prób zostaniemy powiadomieni, iż wiadomość nie mogła zostać dostarczona. Powoduje to opóźnienia, nieporozumienia i niepotrzebne pytania o dostarczenie poczty – nie mówiąc o zbędnym ruchu sieciowym i marnowaniem energii elektrycznej.

Dlatego dla domen, które nie są używane do poczty e-mail, a mają zastosowanie w innych funkcjach np. CDN powinniśmy ustawiać rekord: No Service MX RR zwany potocznie NULL MX, który został opisany w RFC 7505. Formalizuje on istniejący proces ustalania serwera pocztowego dla danej domeny – dzięki niemu domena może od razu poinformować, iż nie przyjmuje korespondencji elektronicznej (nie udostępniając też adresu serwera poczty) pozwalając na szybsze odrzucenie wiadomości, a tym lepszą efektywność operacyjną. Według RFC rekord NULL MX posiada najwyższy priorytet (0) i pustą etykietę hosta (“.”). Rekord MX tego typu powinien być jedynym rekordem ustawionym dla (sub)domeny:

cdn.nfsec.pl. IN MX 0 .

Odpytanie o rekord MX dla subdomeny “cdn” powinno zwrócić:

root@darkstar:~# dig +short MX cdn.nfsec.pl 0 . root@darkstar:~# host -t MX cdn.nfsec.pl cdn.nfsec.pl mail is handled by 0 .

Spowoduje to, iż wysyłająca usługa SMTP użyje tego rekordu i nie będzie uznawać za serwer pocztowy adresy zwrócone w rekordach A / AAAA. Ponieważ nazwa hosta w rekordzie NULL MX nie jest użyteczna (jest pusta), a domena nie publikuje żadnych innych rekordów MX – serwer SMTP nie będzie miał żadnych innych dróg dostarczenia poczty i wiadomość zostanie odrzucona np. z błędem:

DNS Error: 913429 DNS type ‘mx’ lookup of cdn.nfsec.pl responded with code NOERROR
The domain cdn.nfsec.pl doesn’t receive email according to the administrator:
returned Null MX https://www.rfc-editor.org/info/rfc7505

Rekordy SPF i DMARC:

Uzupełnieniem rekordu NULL MX dla (sub)domeny, która nie obsługuje żadnej poczty powinny być odpowiednie rekordy SPF (ang. Sender Policy Framework) oraz DMARC (ang. Domain-based Message Authentication Reporting and Conformance). (Sub)domeny, które nie są używane do odbierania / wysyłania wiadomości e-mail, mogą przez cały czas być podatne na nieuczciwe nadużycia. Cyberprzestępcy mogą próbować wysyłać wiadomości e-mail w imieniu naszych domen (podszywać się). jeżeli poprawnie skonfigurowaliśmy informację o tym, iż nasza domena nie obsługuje poczty przychodzącej – tak samo ważne jest skonfigurowanie jej, aby powiadamiała inne systemy, iż nikt nie powinien wysyłać za jej pośrednictwem wiadomości e-mail do innych serwerów pocztowych. W tym celu należy wykorzystać rekordy SPF i DMARC, aby zapobiec akceptowaniu wiadomości e-mail wysyłanych w imieniu (sub)domeny przez jakiegokolwiek odbiorcę. Po opublikowaniu poniższej polityki “odrzucania” każda wiadomość e-mail zostanie niezaakceptowana przez serwery pocztowe poprawnie obsługujące rekordy SPF oraz DMARC:

cdn.nfsec.pl. IN TXT "v=spf1 -all" _dmarc.cdn.nfsec.pl. IN TXT "v=DMARC1; p=reject; adkim=s; aspf=s;"

Powyższy wpis SPF spowoduje, iż wiadomości e-mail wysłane w imieniu naszych (sub)domen nie przejdą weryfikacji SPF. Ponadto prefiks “-” sprawi, iż większość odbiorców wiadomości e-mail natychmiast porzuci fałszywą wiadomość i nie podejmie choćby próby przeprowadzenia weryfikacji DKIM. Analogicznie dla wpisu DMARC: po ustawieniu wpisu SPF na wartość: “-all” i nie opublikowaniu żadnych rekordów DKIM, żadna wiadomość e-mail wysłana w imieniu (sub)domeny nie będzie mogła osiągnąć zgodności polityki DMARC. W rezultacie system pocztowy odbiorcy z taką polityką DMARC powinien odrzucić każdą wiadomość. Należy pamiętać, iż SPF nie jest propagowany w dół na subdomeny, co oznacza, iż w przypadku wiadomości e-mail wysyłanych z subdomen rekord SPF ustawiony dla głównej domeny nie będzie użyty. Dlatego musimy utworzyć rekord SPF dla wszystkich subdomen pojedynczo lub dzięki rekordu wildcard pod adresem *.twojadomena.pl. Z kolei inaczej jest dla DMARC, który się propaguje “do góry”. Oznacza to, iż jeżeli wiadomość e-mail zostanie wysłana z użyciem subdomena.twojadomena.pl w adresie nadawcy, a pod adresem _dmarc.subdomena.twojadomena.pl nie będzie rekordu DMARC, system odbiorcy będzie szukał rekordu DMARC pod adresem: _dmarc.twojadomena.pl. jeżeli dla domeny zdefiniowaliśmy politykę odrzucenia wypada sprawdzić czy w subdomenach nie istnieją żadne inne rekordy DMARC, aby mieć pewność, iż żadna wiadomość e-mail nie będzie mogła zostać wysłana z żadnej subdomeny.

Więcej informacji: Mail Exchange Record (MX), Hardening unused (sub)domains, Null MX – We do not accept e-mail here!, Mechanizmy weryfikacji nadawcy wiadomości

Idź do oryginalnego materiału