由于google hacking的缘故,现在好多命令都已经被google给封掉了

以下是目前所有的Google搜索命令语法,它不同于Google的帮助文档,因为这里介绍了几个Google不推荐使用的命令语法。大多数的Google搜索命令语法有它特有的使用格式,希望大家能正确使用。我用不同颜色标注了不同的语法命令,绿色的较为常用的命令,黄色的是不常用但却非常有用的命令,蓝色是Google不推荐使用的命令。

allinanchor: anchor是一处说明性的文字,它标注说明了这个链接可能跳转到其它的网页或跳转到当前网页的不同地方。当我们用allinanchor提交查询的时 候,Google会限制搜索结果必须是那些在anchor文字里包含了我们所有查询关键词的网页。例[ allinanchor: best museums Sydney ] ,提交这个查询,Google仅仅会返回在网页anchor说明文字里边包含了关键词”best” “museums” 和”Sydney”的网面。

allintext: 当我们用allintext提交查询的时候,Google会限制搜索结果仅仅是在网页正文里边包含了我们所有查询关键词的网页。例[allintext: travel packing list],提交这个查询,Google仅仅会返回在一个网页包含了三个关键词”travel” “packing”和”list”的网页。

allintitle: 当我们用allintitle提交查询的时候,Google会限制搜索结果仅是那些在网页标题里边包含了我们所有查询关键词的网页。例 [allintitle: detect plagiarism],提交这个查询,Google仅会返回在网页标题里边包含了”detect”和”plagiarism”这两个关键词的网页。

allinurl: 当我们用allinurl提交查询的时候,Google会限制搜索结果仅是那些在URL(网址)里边包含了我们所有查询关键词的网页。例 [allinurl: google faq],提交这个查询,Google仅会返回在URL里边包含了关键词”google”和”faq”的网页,象www.google.com/help /faq.html等的网页。

author: 当我们用author进行查询的时候,Google会限制返回结果仅仅是那些在Google论坛里边,包含了特定作者的新闻文章。在这里,作者名可以是全 名,也可以是一部分或邮件地址。例[children author:john author:doe]或[children author:doe@someaddress.com]返回结果将是作者John Doe 或是 doe@someaddress.com写的,关于包含关键词children的文章。

bphonebook: 用bphonebook进行查询的时候,返回结果将是那些商务电话资料。

cache: 提交cache:url ,Google会显示当前网页的快照信息,从而替换网页的当前信息。例[cache:www.eff.org],提交这个查询,Google会返回所有抓 取的关于www.eff.org的网页快照信息。在显示的网页快照信息里边,Google会高亮显示查询关键词。(在cache:和URL之间不能有空 格)

datarange: 当我们使用datarange进行查询的时候,Google会将查询结果限制在一个特定的时间段内,这个时间相对于网站来说,是按网站被google收录 的时间算的。例 ”Geri Halliwell” “Spice Girls” daterange:2450958-2450968 。这里的时间日期格式是按天文学的儒略日。(这个搜索语法Google并不推荐使用,因为它会返回 一些莫名其妙的东西)

define: 当我们用define进行查询的时候,Google会返回包含查询关键词定义的网面。例[define: blog],这个查询将会返回Blog的定义。

ext: 这是一个没有证实的语法,可以用于filetype:查找扩散名为ext的文件。

filetype: 当我们在查询里边包含filetype:扩展名的时候,Google会限制查询结果仅返回特定文件类型的网页。例[资产评估  filetype:pdf],这个查询将会返回所有文件类型为pdf的资产评估信息。其它可用的特定文件类型格式查询还有doc ,txt,ppt,xls.rtf,swf,ps等。这个我要重点推荐一下,无论是撒网式攻击还是我们后面要说的对特定目标进行信息收集都需要用到这个。 搜索指定类型的文件.例如输入:filetype:doc.将返回所有以doc结尾的文件URL。当然如果你找.bak、.mdb或.inc也是可以的, 获得的信息也许会更丰富。

group: 当我们用group查询的时候,Google会限制我们的论坛查询结果仅是某几个固定的论坛组或是某些特定主题组的新闻文章。例[sleep group:misc.kids.moderated],提交这个查询,Google仅会返回在用户组misc.kids.moderated里边包含了 查询关键字”sleep”的文章。

id: 又是一个没有证实的语法,效果很一般。

inanchor: 当我们用inanchor提交查询的时候,Google会限制结果是那些在网页anchor链接里边包含了查询关键词的网页。例[restaurants inanchor:gourmet],提交这个查询,Google会查询那些在anchor信息里包含了关键词”restaurants”和关键 词”gourmet”的网页。

info: 提交info:url,将会显示需要查询网站的一些信息。例[info:gothotel.com],提交这个查询,将会返回网站gothotel.com的所有信息。

insubject: 当我们用insubject进行查询的时候,Google会限制论坛搜索结果仅是那些在主题里边包含了查询关键词的网面。 [insubject:”falling asleep”],提交这个查询,Google会返回在文章主题里边包含了”falling asleep”的文章。

intext: 当我们用intext进行查询的时候,Google会返回那些在文本正文里边包含了我们查询关键词的网页。[Hamish Reid intext:pandemonia],提交这个查询的时候,Google会返回在文本正文包含查询关键字pandemonia,在其它任何地方包含关键 词”Hamish”和”Reid”的网页。例如在google里输入:intext:动网。将返回所有在网页正文部分包含”动网”的网页。 allintext:使用方法和intext类似。(intext:后面直接跟查询关键字,不能有空格)

intitle: 当我们用intitle进行查询的时候,Google会返回那些在网页标题里边包含了我们查询关键词的网页。例[flu shot intitle:help],提交这个查询,Google会返回在网页标题包含了查询关键字”help”,而在其它任何地文包含了查询关键字”flu” 和”shot”的网页。(intitle:后面也不能有空格)

inurl: 当我们用inurl进行查询的时候,Google会返回那些在URL(网址)里边包含了我们查询关键词的网页。例[inurl:print site:www.ssoooo.com],提交这个查询,Google会查找www.ssoooo.com这个网站下面网址里边包含了查询关键 词”print”的网页。

link: 当我们使用link:URL提交查询的时候,Google会返回跟此URL做了链接的网站。例[link:www.ssoooo.com],提交这个查 询,我们将得到所有跟www.ssooo.com这个网站做了链接的网站。(link是个单独的语法,只能单独使用,且后面不能跟查询关键词,跟能跟 URL)

location: 当我们提交location进行Google新闻查询的时候,Google仅会返回你当前指定区的跟查询关键词相关的网页。例[ queen location:canada ],提交这个查询,Google会返回加拿大的跟查询关键词”queen”相匹配的网站。

movie: 当我们用movie提交查询的时候,Google会返回跟查询关键词相关的电影信息。(当前只支持英文Google)

phonebook: 当我们用phonebook进行查询的时候,Google会返回美国当地跟查询关键词相关的电话信息。(使用phonebook的时候需要指定详细的州名和地点名)例,[phonebook:smith ca]

related: 用related提交查询,Google会返回跟我们要查询的网站结构内容相似的一些其它网站。例[ related:www.consumerreports.org ],提交这个查询,Google会返回所有跟网站www.consumerreports.org结构内容相似的网站。我们也可以通过点击搜索结果后面的 相似网页,来查询跟当前网页类似的网页。(related:后面不能跟空格)

rphonebook: 这个查询用来搜索美国当地跟查询关键词相关的住宅电话信息。

safesearch: 用safesearch提交查询的时候,Google会过滤你搜索的结果,其中过滤的内容可能包括一些色情的,暴力,赌博性质的,还有传染病毒的网页。但是它不是百分之百确保安全的。例,[safesearch:breasts]。

site: 当我们用site提交查询的时候,Google会限制查询仅在某个网站,或是某个域下面进行。例[admissions site:www.lse.ac.uk],提交这个查询仅仅会搜索网站www.lse.ac.uk下面关于admissions的信息。我们还可以限制搜 索仅在域下面进行,例[javascript site:edu.cn],提交这个查询,仅仅在教育网查询关于javascript的信息。(site:后面不能跟空格,且site命令可以配合其它命 令进行)

source: 当用source提交查询的时候,Google新闻会限制我们的查询仅是那些我们指定了特定ID或新闻源的网址。例[election source:new_york_times],提交这个查询,Google将会显示纽约时报包含了查询关键词”election”的相关文章。(我们也 可以通过Google news高级搜索完成查询)

stocks: 当我们用stocks提交查询的时候,Google会返回跟查询关键词相关的股票信息,这些信息一般来自于其它一些专业的财经网站。

store: 当我们用store提交查询的时候,Google Froogle仅会显示我们指定了store ID的结果。例[polo shirt store:llbean],提交这个查询,仅会搜索商店L. L. Bean.跟关键词”polo” “shirt”相关的结果。(只支持英文Google)

tq: 如果想查某个地方的天气如何,我们只要在Google搜索框中输入”城市名称 Tq”就可以查询到这个城市的天状况.例”北京 tq”,当然tq也可以用汉字的天气代替。

weather: 当我们用weather提交查询的时候,如果我们指出一个Google可以识别的地区或城市,Google会返回该地区或城市当前的天气状况。

————————————————————————————
首先打开Google,在关键词输入框中输入”index of/”inurl:lib,选择”搜索简体中文网页”选项,回车搜索,得到了一些网页,不要以为这是一些普通的页面,其实它们是一些图书网站的资源列表,点击打开它来看看,怎么样?是不是所有资源一收眼底了?

使用其他关键字可能得到更多的资源:

在搜索框上输入:”index of/” cnki

再按搜索你就可以找到许多图书馆的CNKI、VIP、超星等入口!

在搜索框上输入:”index of/” ppt

再按搜索你就可以突破网站入口下载powerpint作品!

在搜索框上输入:”index of/” mp3
再按搜索你就可以突破网站入口下载mp3、rm等影视作品!

在搜索框上输入:”index of/” swf
再按搜索你就可以突破网站入口下载flash作品!

在搜索框上输入:”index of/” 加上要下载的软件名

再按搜索你就可以突破网站入口下载软件!

在搜索框上输入:”index of/” AVI
再按搜索你就可以突破网站入口下载AVI视频

到这里,大家也许都明白了,其实就是”index of/”这个关键词在起的作用,使用它可以直接进入网站首页下的所有文件和文件夹中,不必在通过HTTP的网页形式了,从而避免了那些网站的限制,作到了突破限制下载。

还有一些操作符也是很有用的:
+ 把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….m32/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 hacking,而不是让你用google去破坏.安全是把双刃剑,关键在于你如何去运用.

利用google完全是可以对一个站点进行信息收集和渗透的,下面我们用google对特定站点进行一次测试。www.xxxx.com是全国著名大学之一,一次偶然的机会我决定对其站点进行一次测试(文中所涉及该学校的信息均已经过处理,请勿对号入座:).
首先用google先看这个站点的一些基本情况(一些细节部分就略去了):
site:xxxx.com

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

http://a1.xxxx.com

http://a2.xxxx.com

http://a3.xxxx.com

http://a4.xxxx.com

顺便ping了一下,应该是在不同的服务器.(想想我们学校就那一台可怜的web服务器,大学就是有钱,汗一个)。学校一般都会有不少好的资料,先看看有什么好东西没:
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以避免网络机器人获得一些敏感的信息,具体大家看原文章:

http://www.4ngel.net/article/26.htm

不过这种方法我个人不推荐,有点此地无银三百两的味道。简单一点的方法就是上google把自己站点的一些信息删除掉,访问这个URL:

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

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

<?
if (strstr($_SERVER[‘HTTP_USER_AGENT’], “Googlebot”))
{
header(“HTTP/1.1 301″);
header(“Location: http://www.google.com”);
}
?>

后记

这段时间在国外的一些google hack的研究站点看了看,其实也都差不多是一些基本语法的灵活运用,或者配合某个脚本漏洞,主要还是靠个人的灵活思维。国外对于google hack方面的防范也并不是很多,所以大家还是点到为止,不要去搞破坏拉,呵呵。对于一些在win上跑
apache的网管们应该多注意一下这方面,一个intitle:index of就差不多都出来了:)

About the author