GoogleHacking基础

intext:

这个就是把网页中的正文内容中的某个字符做为搜索条件.例如在google里输入:intext:动网.将返回所有在网页正文部分包含"动网"的网页.allintext:使用方法和intext类似.

intitle:

和上面那个intext差不多,搜索网页标题中是否有我们所要找的字符.例如搜索:intitle:安全天使.将返回所有网页标题中包含"安全天使"的网页.同理allintitle:也同intitle类似.

cache:

搜索google里关于某些内容的缓存,有时候也许能找到一些好东西哦.

define:

搜索某个词语的定义,搜索:define:hacker,将返回关于hacker的定义.

filetype:

这个我要重点推荐一下,无论是撒网式攻击还是我们后面要说的对特定目标进行信息收集都需要用到这个.搜索指定类型的文件.例如输入:filetype:doc.将返回所有以doc结尾的文件URL.当然如果你找.bak、.mdb或.inc也是可以的,获得的信息也许会更丰富:)

info:

查找指定站点的一些基本信息.

inurl:

搜索我们指定的字符是否存在于URL中.例如输入:inurl:admin,将返回N个类似于这样的连接:http://www.xxx.com/xxx/admin,用来找管理员登陆的URL不错.allinurl也同inurl类似,可指定多个字符.

link:

例如搜索:inurl:www.4ngel.net可以返回所有和www.4ngel.net做了链接的URL.

site:

这个也很有用,例如:site:www.4ngel.net.将返回所有和4ngel.net这个站有关的URL.

有用的操作符:

+ 把google可能忽略的字列如查询范围

- 把某个字忽略

~ 同意词

. 单一的通配符

* 通配符,可代表多个字母

""  精确查询



实际应用:  

下面开始说说实际应用(我个人还是比较习惯用google.com,以下内容均在google上搜索),对于一个居心叵测的攻击者来说,可能他最感兴趣的就是密码文件了.而google正因为其强大的搜索能力往往会把一些敏感信息透露给他们.用google搜索以下内容:

intitle:"index of" etc

intitle:"Index of" .sh_history

intitle:"Index of" .bash_history

intitle:"index of" passwd

intitle:"index of" people.lst

intitle:"index of" pwd.db

intitle:"index of" etc/shadow

intitle:"index of" spwd

intitle:"index of" master.passwd

intitle:"index of" htpasswd

"# -FrontPage-" inurl:service.pwd

  有时候因为各种各样的原因一些重要的密码文件被毫无保护的暴露在网络上,如果被别有用心的人获得,那么危害是很大的.下面是我找到的一个FreeBSD系统的passwd文件

  同样可以用google来搜索一些具有漏洞的程序,例如ZeroBoard发现个文件代码泄露漏洞,我们可以用google来找网上使用这套程序的站点:

intext:ZeroBoard filetype:php

或者使用:

inurl:outlogin.php?_zb_path= site:.jp

来寻找我们所需要的页面.phpmyadmin是一套功能强大的数据库操作软件,一些站点由于配置失误,导致我们可以不使用密码直接对phpmyadmin进行操作.我们可以用google搜索存在这样漏洞的程序URL:

intitle:phpmyadmin intext:Create new database

  还记得http://www.xxx.com/_vti_bin/..%5C..%5C..%5C..%5C..%5C../winnt/system32/cmd.exe?dir吗?用google找找,你也许还可以找到很多古董级的机器。同样我们可以用这个找找有其他cgi漏洞的页面。

allinurl:winnt system32

  前面我们已经简单的说过可以用google来搜索数据库文件,用上一些语法来精确查找能够获得更多东西(access的数据库,mssql、mysql的连接文件等等).举个例子示例一下:

allinurl:bbs data

filetype:mdb inurl:database

filetype:inc conn

inurl:data filetype:mdb

intitle:"index of" data  //在一些配置不正确的apache+win32的服务器上经常出现这种情况

  

和上面的原理一样,我们还可以用google来找后台。

  利用google完全是可以对一个站点进行信息收集和渗透的,下面我们用google对特定站点进行一次测试。www.xxxx.com是全国著名大学之一,一次偶然的机会我决定对其站点进行一次测试(文中所涉及该学校的信息均已经过处理,请勿对号入座:).

Google渗透实例:

  首先用google先看这个站点的一些基本情况(一些细节部分就略去了):

site:xxxx.com

  从返回的信息中,找到几个该校的几个系院的域名:

http://a1.xxxx.com

http://a2.xxxx.com

http://a3.xxxx.com

http://a4.xxxx.com

  顺便ping了一下,应该是在不同的服务器。学校一般都会有不少好的资料,先看看有什么好东西没:

site:xxxx.com filetype:doc

得到N个不错的doc。先找找网站的管理后台地址:

site:xxxx.com intext:管理

site:xxxx.com inurl:login

site:xxxx.com intitle:管理

超过获得2个管理后台地址:

http://a2.xxxx.com/sys/admin_login.asp

http://a3.xxxx.com:88/_admin/login_in.asp

还算不错,看看服务器上跑的是什么程序:

site:a2.xxxx.com filetype:asp

site:a2.xxxx.com filetype:php

site:a2.xxxx.com filetype:aspx

site:a3.xxxx.com filetype:asp

site:.......

......

a2服务器用的应该是IIS,上面用的是asp的整站程序,还有一个php的论坛

a3服务器也是IIS,aspx+asp。web程序都应该是自己开发的。有论坛那就看看能不能遇见什么公共的FTP帐号什么的:

site:a2.xxxx.com intext:ftp://*:*

没找到什么有价值的东西。再看看有没有上传一类的漏洞:

site:a2.xxxx.com inurl:file

site:a3.xxxx.com inurl:load

在a2上发现一个上传文件的页面:

http://a2.xxxx.com/sys/uploadfile.asp

用IE看了一下,没权限访问。试试注射,

site:a2.xxxx.com filetype:asp

得到N个asp页面的地址,体力活就让软件做吧,这套程序明显没有对注射做什么防范,dbowner权限,虽然不高但已足矣,back a shell我不太喜欢,而且看起来数据库的个头就不小,直接把web管理员的密码暴出来再说,MD5加密过。一般学校的站点的密码都比较有规律,通常都是域名+电话一类的变形,用google搞定吧。

site:xxxx.com  //得到N个二级域名

site:xxxx.com intext:*@xxxx.com  //得到N个邮件地址,还有邮箱的主人的名字什么的

site:xxxx.com intext:电话   //N个电话

把什么的信息做个字典吧,挂上慢慢跑。过了一段时间就跑出4个帐号,2个是学生会的,1个管理员,还有一个可能是老师的帐号。登陆上去:

name:网站管理员

pass:a2xxxx7619  //说了吧,就是域名+4个数字

要再怎么提权那就不属于本文讨论访问了,呵呵,到此为止。

关于google hacking的防范:

  以前我们站的晓风·残月写过一篇躲避google的文章,原理就是通过在站点根目录下建立一个robots.txt以避免网络机器人获得一些敏感的信息。                                                           不过这种方法我个人不推荐,有点此地无银三百两的味道。简单一点的方法就是上google把自己站点的一些信息删除掉,访问这个URL:

http://www.google.com/remove.html

前几天看见又有人讨论用程序来欺骗robot的方法,我觉得可以试试:

代码如下:

  1. <?php
  2. if(strstr($_SERVER[‘HTTP_USER_AGENT‘],"Googlebot")){
  3. header("HTTP/1.1 301");
  4. header("Location: http://www.google.com");
  5. }
  6. ?>

asp的:

  1. <%
  2. if instr(Request.Servervariables("HTTP_USER_AGENT"),"Googlebot")then
  3. response.redirect("http://www.google.com")
  4. endif
  5. %>

来自为知笔记(Wiz)

时间: 2024-09-28 14:26:21

GoogleHacking基础的相关文章

java web 开发三剑客 -------电子书

Internet,人们通常称为因特网,是当今世界上覆盖面最大和应用最广泛的网络.根据英语构词法,Internet是Inter + net,Inter-作为前缀在英语中表示“在一起,交互”,由此可知Internet的目的是让各个net交互.所以,Internet实质上是将世界上各个国家.各个网络运营商的多个网络相互连接构成的一个全球范围内的统一网,使各个网络之间能够相互到达.各个国家和运营商构建网络采用的底层技术和实现可能各不相同,但只要采用统一的上层协议(TCP/IP)就可以通过Internet

Java注解(1)-注解基础

注解(Annotation)是在JAVA5中开始引入的,它为在代码中添加信息提供了一种新的方式.注解在一定程度上把元数据与源代码文件结合在一起,正如许多成熟的框架(Spring)所做的那样.那么,注解到底可以做什么呢? 1.注解的作用. 提供用来完整地描述程序所需要的信息,如编译期校验程序信息. 生成描述符文件,或生成新类的定义. 减轻编写"样板"代码(配置文件)的负担,可以使用注解自动生成. 更加干净易读的代码. 编译期类型检查. 2.Java提供的注解 Java5内置了一些原生的注

MySQL数据库基础知识

day02 MySQL数据库基础知识 一.基础知识概述: 基础决定你这门课程的学习成败!只有学习好这些基础知识以后,你才能真正的运用自如.才能够对数据库有更深入的了解,道路才会越走越远. 二.基础知识: 1.数据库(database):数据库就好比是一个物理的文档柜,一个容器,把我们整理好的数据表等等归纳起来. 创建数据库命令:        create database 数据库名; 2.查看数据库         show databases; 3.打开指定的数据库         use 

【Linux系列】【基础版】第四章 Shell基础之正则表达式

4. Shell基础之正则表达式     4.1 正则就是一串有规律的字符串         4.1 grep              4.1.1 格式: grep [-cinrvABC] 'word' filename             4.1.2 -c //count,表示行数             4.1.3 -i //不区分大小写             4.1.4 -n  //显示行号             4.1.5 -r  //遍历所有子目录             4

NumPy基础:数组和失量计算

NumPy : Numerical Python,是高性能科学计算和数据分析的基础包. 部分功能: ndarray:一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组: 用于对整组数据进行快速运算的标准数学函数(无需编写循环): 用于读写磁盘数据的工具以及用于操作内存映射文件的工具: 线性代数.随机数生成以及傅里叶变换功能: 用于集成C.C++.Fortran等语言编写的代码工具: 大部分数据分析应用关注的功能: 用于

css基础

css绝对是一个能够写到爆炸的东西,so,机智的小北方才不会写各种css样式具体的效果,相比之下更推荐大家记一些常用的key,至于效果,每次用的时候百度下就可以了, css的作用是对符合条件的标签进行渲染,那么首先就要匹配到对应标签啦,我萌有三种基础的模式来匹配希望改变样式的标签 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8">

零基础的人该怎么学习JAVA

对于JAVA有所兴趣但又是零基础的人,该如何学习JAVA呢?对于想要学习开发技术的学子来说找到一个合适自己的培训机构是非常难的事情,在选择的过程中总是 因为这样或那样的问题让你犹豫不决,阻碍你前进的步伐,今天就让小编为您推荐培训机构新起之秀--乐橙谷Java培训机构,助力你成就好未来. 选择java培训就到乐橙谷 北京有什么好的Java培训机构?来乐橙谷北京学Java,零基础走起,乐橙谷Java基础班授课老师经验非常丰富,课程内容安排合理,适合于有一点点Java基础甚至一点都不会Java的同学学

linux+jmeter+python基础+抓包拦截

LINUX 一 配置jdk 环境 *需要获取root权限,或者切换为root用户 1.windows下载好,去 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 官方网站下载jdk(linux相应版本) 2.在usr目录下创建java路径文件夹 [root bin]cd /usr mkdir java 3.将jdk-8u60-linux-x64.tar.gz放到刚才创建的文件夹下

python基础之条件循环语句

前两篇说的是数据类型和数据运算,本篇来讲讲条件语句和循环语句. 0x00. 条件语句 条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语句的执行过程: Python interprets non-zero values as True. None and 0 are interpreted as False. Python 判断非0的值为 True, 而None和0被认为是 False.注意这里的True和False首字母大写,Py