Re: [Postfix-es] Suplantación de Identidad

Simon J Mudd sjmudd en pobox.com
Vie Oct 7 20:58:16 CEST 2005


rgutierrez at cousinomacul.cl (Ricardo Gutiérrez J.) writes:

> Hola a todos, en donde trabajo tenemos implementado fedora core 1 con
> postfix, hace poco realizarón
> una auditoria de seguridad y encontraron 2 fallas en el servidor de correo,
> las cuales son las siguientes:
> 
> 1.- Pueden enviar correos desde una cuenta falsa (user at dominio.com) a
> cualquier usuario del dominio (ricardo at dominio.com),
> como aparece abajo, esto es desde fuera de la lan.
> 
> telnet mail.dominio.com 25
> Trying 200.75.2.74...
> Connected to mail.dominio.com.
> Escape character is '^]'.
> 220 mail.dominio.com ESMTP Postfix
> helo dominio.com
> 250 mail.dominio.com
> mail from: user at dominio.com
> 250 Ok
> rcpt to: ricardo at dominio.com
> 250 Ok
> data
> 354 End data with <CR><LF>.<CR><LF>
> prueba
> .
> 250 Ok: queued as 968CC4B8EA

si solo permites enviar email usando usuarios autenticados con SASL
hay una opcion adicional que el usuario de identificacion es el mismo
que la direccion email en el MAIL FROM:.  Mirar el SASL_README para
ver la opcion correspondiente.

Tendrias que configurar Postfix para EXIGIR el uso de SASL para todos
tus usuarios que envian mensajes via SMTP, sea cual sea el destino.
Probablemente lo harias con un RESTRICTION_CLASS.

> 2.- Pueden enviar correos desde un correo y dominio falso (pp at pp.com) hacia
> un cuenta real en internet (mailprueba at gmail.com),
> como aparece abajo, esta prueba fue realizada en forma interna:
> 
> 220 mail.dominio.com ESMTP Postfix
> helo dominio.com
> 250 mail.dominio.com
> mail from: pp at pp.com
> 250 Ok
> rcpt to: mailprueba at gmail.com
> 250 Ok
> data
> 354 End data with <CR><LF>.<CR><LF>
> prueba de correo
> .
> 250 Ok: queued as DF70E4B8E4
> 
> La pregunta es: De que forma podria bloquear en el postfix para que no
> puedan enviar ese tipo de correos?

Hagas lo que hagas deberias comprobar que el dominio del remitente y
del recipiente son validos antes de admitir cualquier mensaje.  Es facil y haces de esta manera.

smtpd_recipient_restrictions =
        reject_non_fqdn_recipient
        reject_non_fqdn_sender
        reject_unknown_sender_domain
        reject_unknown_recipient_domain
        ...

Si aplicas la primera opcion (authenticated SASL + sender =
authenticated user) entonces no permitiras el envio de emails de
direcciones que no sean de tu dominio y por lo tanto que sean invalidos.

Ten en cuenta que hay gente que quiere poder utilizar su ISP para
enviar emails con direcciones del remitente distintos a su email
oficial del dominio. De aplicar esta restriccion no funcionaria este
uso.

Simon


Más información sobre la lista de distribución Postfix-es