Falhas de segurança em sistemas
Escrito por
Edgar Serra em 19 de Agosto de 2009 às 21:39.
Arquivado em PHP Dicas.
Todos os sistemas que são desevolvidos por nós sempre trazem algum tipo de controle de falhas na busca de arquivos, o popular erro 404. O objetivo é mostrar de uma forma simples para o cliente, alguns arquivos que podem estar faltando no servidor.
Claro, a nossa idéia não é reinventar a roda, existem várias ferramentas disponibilizadas pelos servidores que já fazem os logs dos erros. Mas o que fazemos é criar esse log de uma maneira que qualquer leigo possa entender o que aconteceu.
Hoje à tarde um cliente ligou com algumas dúvidas, pois havia percebido no log do painel administrativo do site uma série de erros 404 estranhos, segundo ele parecia que estavam procurando pastas/arquivos no site. O que mais deixou ele alarmado foram as buscas por pastas "admin".
Após o contato acessei o painel do site e encontrei o seguinte:
187.10.104.3 - - [19/Aug/2009:18:34:37 -0300] "GET /receita/1951/ HTTP/1.1" 404 8803 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.0; pt-BR; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2"
187.10.104.3 - - [19/Aug/2009:18:34:37 -0300] "GET /receita/1951/wp-admin HTTP/1.1" 404 8803 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.0; pt-BR; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2"
187.10.104.3 - - [19/Aug/2009:18:34:37 -0300] "GET /receita/1951/includes/usercp_email.php HTTP/1.1" 404 8803 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.0; pt-BR; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2"
187.10.104.3 - - [19/Aug/2009:18:34:37 -0300] "GET /receita/1951/templates/subSilver/subSilver.cfg HTTP/1.1" 404 8803 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.0; pt-BR; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2"
187.10.104.3 - - [19/Aug/2009:18:34:37 -0300] "GET /receita/1951/includes/ucp/ucp_profile.php HTTP/1.1" 404 8803 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.0; pt-BR; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2"
187.10.104.3 - - [19/Aug/2009:18:34:37 -0300] "GET /receita/1951/styles/prosilver/style.cfg HTTP/1.1" 404 8803 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.0; pt-BR; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2"
187.10.104.3 - - [19/Aug/2009:18:34:38 -0300] "GET /receita/1951/includes/zhtable/Makefile HTTP/1.1" 404 8803 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.0; pt-BR; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2"
187.10.104.3 - - [19/Aug/2009:18:34:38 -0300] "GET /receita/1951/maintenance/database.sql HTTP/1.1" 404 8803 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.0; pt-BR; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2"
187.10.104.3 - - [19/Aug/2009:18:34:38 -0300] "GET /receita/1951/skins/monobook/main.css HTTP/1.1" 404 8803 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.0; pt-BR; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2"
187.10.104.3 - - [19/Aug/2009:18:34:38 -0300] "GET /receita/1951/admin HTTP/1.1" 404 8803 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.0; pt-BR; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2"
187.10.104.3 - - [19/Aug/2009:18:34:38 -0300] "GET /receita/1951/includes/normal/Makefile HTTP/1.1" 404 8803 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.0; pt-BR; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2"
187.10.104.3 - - [19/Aug/2009:18:34:38 -0300] "GET /receita/1951/RELEASE-NOTES HTTP/1.1" 404 8803 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.0; pt-BR; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2"
187.10.104.3 - - [19/Aug/2009:18:34:38 -0300] "GET /receita/1951/sites/all/README.txt HTTP/1.1" 404 8803 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.0; pt-BR; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2"
187.10.104.3 - - [19/Aug/2009:18:34:38 -0300] "GET /receita/1951/update.php HTTP/1.1" 404 8803 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.0; pt-BR; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2"
187.10.104.3 - - [19/Aug/2009:18:34:38 -0300] "GET /receita/1951/wiki/rightsidebar/css/common.css HTTP/1.1" 404 8803 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.0; pt-BR; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2"
187.10.104.3 - - [19/Aug/2009:18:34:38 -0300] "GET /receita/1951/wiki/ HTTP/1.1" 404 8803 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.0; pt-BR; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2"
187.10.104.3 - - [19/Aug/2009:18:34:39 -0300] "GET /receita/1951/htaccess.txt HTTP/1.1" 404 8803 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.0; pt-BR; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2"
187.10.104.3 - - [19/Aug/2009:18:34:39 -0300] "GET /receita/1951/feed.php HTTP/1.1" 404 8803 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.0; pt-BR; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2"
187.10.104.3 - - [19/Aug/2009:18:34:39 -0300] "GET /receita/1951/templates/system/css/toolbar.css HTTP/1.1" 404 8803 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.0; pt-BR; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2"
187.10.104.3 - - [19/Aug/2009:18:34:39 -0300] "GET /receita/1951/mambots/index.html HTTP/1.1" 404 8803 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.0; pt-BR; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2"
187.10.104.3 - - [19/Aug/2009:18:34:40 -0300] "GET /receita/1951/templates/css/offline.css HTTP/1.1" 404 8803 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.0; pt-BR; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2"
Uma primeira análise realmente leva a crer que o site estava sendo vasculhado com a possível finalidade de se encontrar alguma brexa de segurança. Contudo dois fatores chamaram atenção:
1 - O IP era da faixa pertencente ao Brasil;
2 – A agente (navegador) era o Firefox e também rodava com o Windows em português.
Mas qual foi a razão de isso ter chamado a atenção? Primeiro que até hoje nunca vi um ataque pequeno com um IP da faixa do Brasil. Segundo que existem extensões para o Firefox que permitem rastrear o site não para tentar invadir e sim para descobrir qual CMS ele usa.
Bingo! Entrei no repositório do Firefox e achei a extensão que causava os mesmos erros exibidos no site do cliente. Resultado, um cliente ainda mais satisfeito.
Abaixo o link para as extensões que achei mais interessantes:
Extensão 1.
Extensão 2.