Первоисточник: https://resolve.co.uk/blog/article/enabling-sender-id-agent-in-exchange/ Статья взята за основу, переведена и дополнена мной на свое усмотрение без пометок. Сам столкнулся со случаем, когда стоит Exchange 2019 и Kaspersky Security для Microsoft Exchange Servers, а при прохождении пентеста удалось telnet-ом отправить от несуществующего ящика на несуществующем домене письмо на существующий адрес внутри Чанги. Хотя в касперском настроена проверка по spf, но это не работает когда домен не существует совсем.
Spoof (поддельные) письма или или спам-письма — это электронные письма, которые утверждают, что отправлены кем-то, кем они не являются. Вы можете удивиться, почему кто-то захочет это сделать. Но это может быть хитрый способ выманить у кого-то деньги или личную информацию. Сотрудники нередко получают электронные письма от своего «управляющего директора», в которых им предлагается перевести крупные суммы денег с бизнес-счета. Можете себе представить, чем закончилась эта история…
В корпоративной среде надо постоянно обучать своих сотрудников обнаружению таких спам-сообщений. Это пожалуй самый эффективный способ борьбы с нежелательной почтой.
Итак, вам нужен метод борьбы с спуфингом отправителя? Эта статья поможет. Sender Policy Framework (SPF) предназначена для борьбы с спуфингом электронной почты. SPF использует следующий метод для проверки соответствия отправителя письма (RFC 5321) IP-адресу отправляющего сервера:
- Электронная почта отправляется и достигает почтового сервера получателей.
- Почтовый сервер получателей выполняет поиск DNS для записи .TXT, пытаясь идентифицировать запись SPF для почтового домена отправителей.
- Если записи нет, никаких действий не предпринимается. Сообщение доставляется нормально.
- Если запись доступна, сообщения электронной почты, соединяющие IP-адрес, будут сопоставлены с записью SPF, чтобы определить, является ли IP-адрес ожидаемым отправителем сообщений электронной почты из почтового домена отправителя.
- Если IP совпадает, сообщение будет доставлено.
- Если IP-адрес не работает, указанное действие в записи SPF получателей может быть предпринято в отношении сообщения.
Настроим:
Запустите командную оболочку Exchange и выполните следующую команду, чтобы установить все агенты защиты от спама::
ExchangeInstallPath\Scripts\Install-AntiSpamAgents.ps1
При этом будут установлены все следующие агенты:
- Sender ID Agent (Агент идентификатора отправителя)
- Content Filter Agent (Агент фильтра содержимого)
- Sender Filter Agent (Агент фильтра отправителя Агент)
- Recipient Filter Agent (фильтра получателя Агент)
- Protocol Analysis Agent (анализа протокола)
Для решения нашей задачи нам нужен из этого списка, — это агент идентификации
отправителя (SenderID agent), поэтому мы отключим другие агенты:
Disable-TransportAgent –Identity "Content Filter Agent" Disable-TransportAgent –Identity "Sender Filter Agent" Disable-TransportAgent –Identity "Recipient Filter Agent" Disable-TransportAgent –Identity "Protocol Analysis Agent"
Перезапустите транспортную службу Exchange, чтобы включить агент:
Restart-Service MSExchangeTransport
Теперь нам нужно указать внутренний SMTP-сервер, который должен игнорироваться агентом Sender ID:
Set-TransportConfig -InternalSMTPServers @{Add="10.0.1.10","10.0.1.11"}
Убедитесь, что это настроено, выполнив следующую команду:
Get-TransportConfig | Format-List InternalSMTPServers
Значение по умолчанию для агента Sender ID — StampStatus, чтобы установить его для отклонения, нам нужно выполнить следующую команду:
Set-SenderIDConfig -SpoofedDomainAction Reject
Убедитесь, что это установлено, выполнив следующую команду:
Get-SenderIDConfig | Format-List *Enabled*,*Action,Bypassed*
Ведение журнала должно быть включено по умолчанию, но вы можете проверить это с помощью следующей команды:
Get-TransportService | Format-List AgentLog*
Если есть проблема с настройками, вы можете изменить их с помощью следующей команды:
Set-TransportService <ServerIdentity> -AgentLogEnabled <$true | $false> - AgentLogMaxAge <dd.hh:mm:ss> -AgentLogMaxDirectorySize <Size> - AgentLogMaxFileSize <Size> -AgentLogPath <LocalFilePath>
Пример;
Set-TransportService Mailbox01 -AgentLogPath "D:Anti-Spam Agent Log" -AgentLogMaxFileSize 20MB -AgentLogMaxDirectorySize 400MB -AgentLogMaxAge 14.00:00:00
Это работает на Exchange 2013 / 2016, автором проверено на 2019 CU11