como rastrear um script de spam?

2

Meu servidor enviou 83.000 e-mails de spam na noite passada. Estou tentando localizar o culpado, mas não sei como descobrir exatamente.

  • nos registros, o endereço "de" é sempre algo como @ #!
  • as conexões parecem ser do localhost

levando-me a acreditar que este é um script usando o php mail() ; função ou um CGI .. então, como faço para descobrir qual script?

EDITAR Correção, 354284 emails enviados com 50 'para' endereços cada um .... 17.714.200 emails .... excelente.

EDITAR Parece uma rede de usuário / bot smtp ... os e-mails estão sendo enviados por um usuário autenticado ...

Apr 22 06:31:41 impulsemedia relaylock: /var/qmail/bin/relaylock: mail from 71.129.165.22:25411 (adsl-71-129-165-22.dsl.irvnca.pacbell.net)
Apr 22 06:31:42 impulsemedia relaylock: /var/qmail/bin/relaylock: mail from 71.129.165.22:25412 (adsl-71-129-165-22.dsl.irvnca.pacbell.net)
Apr 22 06:31:42 impulsemedia relaylock: /var/qmail/bin/relaylock: mail from 71.129.165.22:25413 (adsl-71-129-165-22.dsl.irvnca.pacbell.net)
Apr 22 06:31:42 impulsemedia relaylock: /var/qmail/bin/relaylock: mail from 71.129.165.22:25414 (adsl-71-129-165-22.dsl.irvnca.pacbell.net)
Apr 22 06:31:42 impulsemedia relaylock: /var/qmail/bin/relaylock: mail from 71.129.165.22:25415 (adsl-71-129-165-22.dsl.irvnca.pacbell.net)
Apr 22 06:31:42 impulsemedia smtp_auth: SMTP connect from [email protected] [71.129.165.22]
Apr 22 06:31:42 impulsemedia smtp_auth: smtp_auth: SMTP user [email protected] : /var/qmail/mailnames/--removed--.com/--removed-- logged in from [email protected] [71.129.165.22]
Apr 22 06:31:42 impulsemedia relaylock: /var/qmail/bin/relaylock: mail from 71.129.165.22:25416 (adsl-71-129-165-22.dsl.irvnca.pacbell.net)
Apr 22 06:31:42 impulsemedia relaylock: /var/qmail/bin/relaylock: mail from 71.129.165.22:25417 (adsl-71-129-165-22.dsl.irvnca.pacbell.net)
Apr 22 06:31:43 impulsemedia smtp_auth: SMTP connect from [email protected] [71.129.165.22]
Apr 22 06:31:43 impulsemedia smtp_auth: smtp_auth: SMTP user [email protected] : /var/qmail/mailnames/--removed--.com/--removed-- logged in from [email protected] [71.129.165.22]
Apr 22 06:31:43 impulsemedia relaylock: /var/qmail/bin/relaylock: mail from 71.129.165.22:25418 (adsl-71-129-165-22.dsl.irvnca.pacbell.net)
Apr 22 06:31:43 impulsemedia relaylock: /var/qmail/bin/relaylock: mail from 71.129.165.22:25419 (adsl-71-129-165-22.dsl.irvnca.pacbell.net)
Apr 22 06:31:43 impulsemedia relaylock: /var/qmail/bin/relaylock: mail from 71.129.165.22:25420 (adsl-71-129-165-22.dsl.irvnca.pacbell.net)
Apr 22 06:31:43 impulsemedia smtp_auth: SMTP connect from [email protected] [71.129.165.22]
Apr 22 06:31:43 impulsemedia smtp_auth: smtp_auth: SMTP user [email protected] : /var/qmail/mailnames/--removed--.com/--removed-- logged in from [email protected] [71.129.165.22]
Apr 22 06:31:43 impulsemedia smtp_auth: SMTP connect from [email protected] [71.129.165.22]
Apr 22 06:31:43 impulsemedia smtp_auth: smtp_auth: SMTP user [email protected] : /var/qmail/mailnames/--removed--.com/--removed-- logged in from [email protected] [71.129.165.22]
Apr 22 06:31:43 impulsemedia smtp_auth: SMTP connect from [email protected] [71.129.165.22]
Apr 22 06:31:43 impulsemedia smtp_auth: smtp_auth: SMTP user [email protected] : /var/qmail/mailnames/--removed--.com/--removed-- logged in from [email protected] [71.129.165.22]
Apr 22 06:31:44 impulsemedia smtp_auth: SMTP connect from [email protected] [71.129.165.22]
Apr 22 06:31:44 impulsemedia smtp_auth: smtp_auth: SMTP user [email protected] : /var/qmail/mailnames/--removed--.com/--removed-- logged in from [email protected] [71.129.165.22]
Apr 22 06:31:44 impulsemedia relaylock: /var/qmail/bin/relaylock: mail from 71.129.165.22:25422 (adsl-71-129-165-22.dsl.irvnca.pacbell.net)
Apr 22 06:31:44 impulsemedia relaylock: /var/qmail/bin/relaylock: mail from 71.129.165.22:25421 (adsl-71-129-165-22.dsl.irvnca.pacbell.net)
Apr 22 06:31:44 impulsemedia smtp_auth: SMTP connect from [email protected] [71.129.165.22]
Apr 22 06:31:44 impulsemedia smtp_auth: smtp_auth: SMTP user [email protected] : /var/qmail/mailnames/--removed--.com/--removed-- logged in from [email protected] [71.129.165.22]
Apr 22 06:31:44 impulsemedia smtp_auth: SMTP connect from [email protected] [71.129.165.22]
Apr 22 06:31:44 impulsemedia smtp_auth: smtp_auth: SMTP user [email protected] : /var/qmail/mailnames/--removed--.com/--removed-- logged in from [email protected] [71.129.165.22]
Apr 22 06:31:44 impulsemedia smtp_auth: SMTP connect from [email protected] [71.129.165.22]
Apr 22 06:31:44 impulsemedia smtp_auth: smtp_auth: SMTP user [email protected] : /var/qmail/mailnames/--removed--.com/--removed-- logged in from [email protected] [71.129.165.22]
Apr 22 06:31:44 impulsemedia smtp_auth: SMTP connect from [email protected] [71.129.165.22]
Apr 22 06:31:44 impulsemedia smtp_auth: smtp_auth: SMTP user [email protected] : /var/qmail/mailnames/--removed--.com/--removed-- logged in from [email protected] [71.129.165.22]
Apr 22 06:31:44 impulsemedia relaylock: /var/qmail/bin/relaylock: mail from 71.129.165.22:25423 (adsl-71-129-165-22.dsl.irvnca.pacbell.net)
Apr 22 06:31:44 impulsemedia relaylock: /var/qmail/bin/relaylock: mail from 71.129.165.22:25424 (adsl-71-129-165-22.dsl.irvnca.pacbell.net)
Apr 22 06:31:44 impulsemedia relaylock: /var/qmail/bin/relaylock: mail from 71.129.165.22:25425 (adsl-71-129-165-22.dsl.irvnca.pacbell.net)
Apr 22 06:31:45 impulsemedia smtp_auth: SMTP connect from [email protected] [71.129.165.22]
Apr 22 06:31:45 impulsemedia smtp_auth: smtp_auth: SMTP user [email protected] : /var/qmail/mailnames/--removed--.com/--removed-- logged in from [email protected] [71.129.165.22]
Apr 22 06:31:45 impulsemedia smtp_auth: SMTP connect from [email protected] [71.129.165.22]
Apr 22 06:31:45 impulsemedia smtp_auth: smtp_auth: SMTP user [email protected] : /var/qmail/mailnames/--removed--.com/--removed-- logged in from [email protected] [71.129.165.22]
Apr 22 06:31:46 impulsemedia smtp_auth: SMTP connect from [email protected] [71.129.165.22]
Apr 22 06:31:46 impulsemedia smtp_auth: smtp_auth: SMTP user [email protected] : /var/qmail/mailnames/--removed--.com/--removed-- logged in from [email protected] [71.129.165.22]
Apr 22 06:31:46 impulsemedia smtp_auth: SMTP connect from [email protected] [71.129.165.22]
Apr 22 06:31:46 impulsemedia smtp_auth: smtp_auth: SMTP user [email protected] : /var/qmail/mailnames/--removed--.com/--removed-- logged in from [email protected] [71.129.165.22]
Apr 22 06:31:46 impulsemedia smtp_auth: SMTP connect from [email protected] [71.129.165.22]
Apr 22 06:31:46 impulsemedia smtp_auth: smtp_auth: SMTP user [email protected] : /var/qmail/mailnames/--removed--.com/--removed-- logged in from [email protected] [71.129.165.22]
Apr 22 06:31:49 impulsemedia qmail-queue-handlers[28215]: Handlers Filter before-queue for qmail started ...
Apr 22 06:31:49 impulsemedia qmail-queue-handlers[28215]: [email protected]
Apr 22 06:31:49 impulsemedia qmail-queue-handlers[28215]: [email protected]
Apr 22 06:31:49 impulsemedia qmail-queue-handlers[28215]: [email protected]
Apr 22 06:31:49 impulsemedia qmail-queue-handlers[28215]: [email protected]
Apr 22 06:31:49 impulsemedia qmail-queue-handlers[28215]: [email protected]
Apr 22 06:31:49 impulsemedia qmail-queue-handlers[28215]: [email protected]
Apr 22 06:31:49 impulsemedia qmail-queue-handlers[28215]: [email protected]

Então 50 ou mais endereços "para", razão pela qual eu não peguei isso nos logs, eles logaram aqui - jogaram a maioria dos e-mails na fila e o restante dos 300 m + log são mensagens de entrega parecendo um script . Esse endereço IP '71 .129.165.22 'também aparece no CBL do spamhause ....

Basta uma aula para ler meus registros com mais cuidado quando houver um problema.

-sean

    
por Sean Kimball 23.04.2011 / 22:14

6 respostas

0

Também fomos atacados por um spammer no início desta semana. Um conselho que eu encontrei foi olhar para os cabeçalhos completos da primeira mensagem de spam que você pode encontrar e procurar pelo UID. Você pode procurar no arquivo de senhas para determinar qual login foi usado para executar o processo que enviou os e-mails.

Para que vale a pena, o ponto de entrada para o spam acabou sendo nossa interface de webmail. O remetente de spam efetuou login usando uma conta e senha existentes e depois enviou e-mails usando o aplicativo de webmail. Pelo que posso dizer, o spammer nunca comprometeu o sistema atual.

    
por 24.04.2011 / 21:12
2

Você deve criar um wrapper que registre várias informações sobre as solicitações.

O Parallels é um exemplo para os sistemas Plesk, mas parece genérico: link

    
por 24.04.2011 / 00:25
2

Enquanto você poderia apenas grep para 'mail' (essa não é a única maneira de enviar um email do PHP. Também pode ser feito através das várias funções de execução do programa (o padrão fn é apenas um wrapper em torno do programa definido em php.ini) ou pode se conectar a uma porta SMTP.

Independentemente disso, deve ter levado algum tempo para processar esse volume de mensagens - ou exigir muitas solicitações HTTP -, ambas evidentes nos registros do seu servidor web.

Eu recomendaria a substituição do comando configurado no arquivo php.ini por um que reunisse o máximo possível de informações sobre o que o invocou - e registre-o em algum lugar. Além disso, se você tiver a porta 25 aberta na máquina, bloqueie o acesso a ela a partir de scripts (observe que isso pode interromper o serviço que você está fornecendo aos usuários).

    
por 24.04.2011 / 00:47
1

Eu olharia os logs de acesso do apache porque há uma boa possibilidade de que há um script em sua webroot que utiliza a função mail () e não é seguro. Eu suspeito strongmente que isso seja um culpado. Bastante possível, o script é chamado mail.php

Se isso não ajudar, então uma maneira de usar força bruta seria usar grep, usando os arquivos para a função mail ().

    
por 23.04.2011 / 22:56
1

Se você estiver executando um website, provavelmente é um recurso oculto / indesejado em alguma página da web ou em uma possível desfiguração. Procure nos registros de acesso do servidor da Web por acessos semelhantes durante o intervalo de tempo em que você acha que os e-mails foram enviados.

Também gostaria de procurar cronjobs que possam estar enviando e-mails. Se você estiver usando o Linux, digite ls -la /var/spool/cron/crontabs/ para encontrar todos os usuários que têm tarefas agendadas instaladas e dê uma olhada nelas.

Espero que isso ajude!

    
por 23.04.2011 / 22:49
0

sim - o que parece que aconteceu foi o usuário ter suas credenciais roubadas [de alguma forma?] e um bot ou algo estava usando isso para enviar o e-mail - eu desabilitei a conta e tudo parou. A grande pista foi o endereço IP, o usuário não está longe de mim aqui [apenas fora de Toronto], mas o IP de origem é na Califórnia .... -

Portanto, agradeço a todos pela sua contribuição [todas as técnicas válidas e úteis], mas o problema não foi um roteiro inseguro.

Eu achei o wrapper do sendmail particularmente útil. Um truque que terei que manter à mão

-sean

    
por 25.04.2011 / 19:14

Tags