Техническое: экзотические настройки в SPF
SPF (Sender Policy Framework) в Интернете позволяет администратору домена через DNS определить перечень адресов узлов, которые могут доставлять email-сообщения с адресами в данном домене. SPF публикуется в TXT-записях. Распространено мнение, что SPF – чрезвычайно простой инструмент, “всего лишь список IP-адресов”, который легко проверить, не получив фактического письма от почтового сервера. Конечно, если рассматривать практику массового применения SPF, то, действительно, так как большинство администраторов используют SPF в самом простом варианте записи, может показаться, что никаких дополнительных уровней логики там и нет. Это, однако, не так: спецификация достаточно сложная, определяет “макросы”, а поэтому позволяет реализовать весьма экзотические настройки. Один из примеров такой экзотики – использование механизма аутентификации exists.
Тип exists позволяет встроить в SPF произвольные имена DNS, которые генерируются на стороне проверяющего узла на основе данных конкретного подключения. То есть, эффект от работы таких фильтров нельзя предсказать простым опросом DNS – нужна ещё и SMTP-сессия.
Например, запись exists:%{ir}._relays.example.net обозначает, что нужно IP-адрес (i) отправляющего узла (как он виден на стороне принимающего) использовать в запросе A-записи в зоне _relays.example.net, и при этом запись IP-адреса нужно перевернуть по октетам (r). То есть, если почтовое сообщение пытается доставить узел с адресом 10.11.12.13, то сконструированное имя для запроса в DNS будет таким: 13.12.11.10._relays.example.net. Если IP-адрес не известен, то и обработать такой фильтр нельзя. Помимо i в спецификации определены и другие макроподстановки, например, домен отправителя, имя из EHLO/HELO и т.д. Впрочем, exists встречается даже реже, чем другой экзотический вариант – exp.
Адрес записки: https://dxdt.ru/2023/08/05/10690/
Похожие записки:
- Уровни сигнатур клиентских подключений
- Реплика: программные "демультиплексоры" протоколов уровня приложений
- "Вес" значений омонимов в текстах для LLM
- Браузер Chrome 122 и Kyber768
- Kyber768 и длина сообщений TLS
- Мешанина токенов в LLM
- "Умные колонки" и отключение микрофона кнопкой
- Шумерские цифры и хитрости Unicode
- Реплика: пропуск подписанного трафика и цифровые идентификаторы в будущем
- Реплика: гарантированные "маловероятные ошибки" в ML-KEM
- Rowhammer-атака и код сравнения с нулём
Написать комментарий