Introduction
Este documento descreve como criar um filtro com base no usuário Autenticado SMTP (Simple Mail Transfer Protocol) e registrar o nome de usuário em um cabeçalho X.
Prerequisites
A Cisco recomenda que você tenha conhecimento do AsyncOS versão 6.5 e posterior.
Informações de Apoio
A função de autenticação SMTP permite que os clientes usem a autenticação SMTP para se conectarem e enviarem e-mails de dispositivos de segurança de e-mail (ESAs). Como o recurso permite que o usuário autenticado retransmita, é possível que os usuários forjem o campo "De:" em emails que enviam pelo Cisco ESA. Para impedir que os usuários forjem, o ESA AsyncOS Versão 6.5 e posterior agora contém uma condição de filtro de mensagens que permite comparações com o nome de usuário SMTP autenticado e o endereço de e-mail De.
Criar um filtro
A condição do filtro de mensagens permite que um administrador grave um filtro semelhante à regra de exemplo na próxima seção que compara emails que são enviados através de uma sessão de autenticação SMTP. Se as credenciais SMTP estiverem comprometidas, a máquina que envia os emails geralmente gera vários endereços a serem usados como o email De: cabeçalho. A condição do filtro de mensagens só permite que emails deixem se o nome de usuário e o email De: os cabeçalhos coincidem. Caso contrário, o e-mail é considerado um e-mail forjado De: e a ação do filtro de mensagens é ativada. A ação do filtro de mensagens pode ser qualquer ação final; a regra de exemplo mostra uma ação de quarentena. A condição do filtro tem esta sintaxe:
smtp-auth-id-matches("<target>" [, "<sieve-char>"])
O filtro permite uma comparação com um destes alvos:
- EnvelopeDe: Compara o endereço especificado em Email de: na conversação SMTP.
- EndereçoDe: Compara endereços analisados fora de De: cabeçalho. Como vários endereços são permitidos em De: cabeçalho, somente um deve corresponder.
- Remetente: Compara o endereço especificado no Remetente: cabeçalho.
- Qualquer um: Corresponde às mensagens que foram criadas durante uma sessão SMTP autenticada (independentemente da identidade).
- Nenhum: Corresponde às mensagens que não foram criadas durante uma sessão SMTP autenticada (por exemplo, quando a autenticação SMTP é preferida).
ID AUTOMÁTICA SMTP |
SIEVE CHAR |
ENDEREÇO DE COMPARAÇÃO |
CORRESPONDE? |
usuário |
|
otheruser@example.com |
No |
usuário |
|
someuser@example.com |
Yes |
usuário |
|
someuser@face.localhost |
Yes |
Alguns usuários |
|
someuser@example.com |
Yes |
usuário |
|
someuser+folder@example.com |
No |
usuário |
+ |
someuser+folder@example.com |
Yes |
someUser@example.com |
|
someuser@forged.com |
No |
someUser@example.com |
|
someuser@example.com |
Yes |
someUser@example.com |
|
someuser@example.com |
Yes |
Essa substituição de variável, $SMTPAuthID, foi criada para permitir a inclusão nos cabeçalhos das credenciais de autenticação originais usadas para retransmissão.
Regra de exemplo
Msg_Authentication: if (smtp-auth-id-matches("*Any"))
{
# Always include the original authentication credentials in a
# special header.
insert-header("X-SMTPAUTH", "$SMTPAuthID");
if (smtp-auth-id-matches("*FromAddress", "+") and
smtp-auth-id-matches("*EnvelopeFrom", "+"))
{
# Username matches. Verify the domain
if (header('from') != "(?i)@(?:example\.com|example\.com)" or mail-from !=
"(?i)@(?:example\.com|\.com)"
{
# User has specified a domain which cannot be authenticated
quarantine("forged");
}
} else {
# User claims to be an completely different user
quarantine("forged");
}
}
Note: Este filtro pressupõe que você tem uma quarentena chamada forged.
Informações Relacionadas