Encontrando script tentando enviar spam via postfix

3

Eu tive esse problema antes com sites wordpress porcaria no meu servidor, mas sempre foi fácil encontrar a fonte, um script php, olhando para o cabeçalho de spam e ver o nome do script php. Mas desta vez eu tenho algo diferente.

O spam não está sendo enviado na verdade, está sendo descartado pelo postfix, mas é originário do host local e eu preciso descobrir de onde ele vem.

Dec  8 13:02:29 myserver postfix/smtpd[22018]: NOQUEUE: reject: RCPT from myserver.local[127.0.0.1]: 550 5.1.0 <[email protected]>: Sender address rejected: User unknown in virtual mailbox table; from=<[email protected]> to=<[email protected]> proto=ESMTP helo=<domainonmyserver.tld>

Como você pode ver, ele tenta enviar uma conta falsa para que ela seja descartada. Antes de consertar as minhas configurações de postfix, estava realmente tentando enviá-las para que eu visse o spam em si e não tivesse um cabeçalho indicando um script php em algum lugar (isso foi o primeiro, eles sempre fizeram antes). Outra coisa estranha é que ele não tenta inundar o postfix com spam, em vez disso, está enviando um ou dois por minuto.

Qualquer ideia de como rastrear a fonte seria apreciada. Obrigado.

    
por Saffer 08.12.2016 / 13:10

2 respostas

0

Primeiro, você deve adicionar a opção mail.add_x_header para o seu php.ini

mail.add_x_header = On

Ele adicionará um cabeçalho aos seus e-mails, que conterão o nome do script que chamou a função mail ().

Se isso não ajudar, você pode seguir este tutorial para criar um wrapper para sendmail , que também registrará tudo.

    
por 08.12.2016 / 13:15
0

Registro de auditoria

Assumindo que isso não está ocorrendo através de um soquete de rede (dado que seu cabeçalho php não está funcionando), eu registraria todo o acesso ao postfix em si. Crie regras de auditoria que registram todo o acesso aos binários do postfix.

Obtenha uma lista de todos os arquivos postfix

rpm -ql postfix | egrep "postfix|sendmail" | grep bin

em seguida, gere um arquivo audit.rules (que provavelmente irá em /etc/audit/audit.rules, mas isso varia de distro para distro) que se parece com algo como

-w /usr/sbin/sendmail -p wra -k postfix_access
-w /usr/sbin/sendmail.postfix -p wra -k postfix_access

... etc

Você pode ter que executar isso para atualizar suas regras:

augenrules

Para enviar esta saída para syslog / splunk:

sed -i -e 's/^active.*/active = yes/g' /etc/audisp/plugins.d/syslog.conf

Em seguida, reinicie o auditd.

Isso pode lhe dar mais pistas sobre o que está chamando de postfix no momento em que os e-mails estão sendo gerados.

    
por 08.12.2016 / 15:59