Web开发

注册

 

发新话题 回复该主题

基于GoogleHack进行信息收集 [复制链接]

1#
医院订阅哦!

一、前情提要

在渗透测试过程中,第一步就是进行信息收集,信息收集的重要性不用再次赘述,而对于信息收集的过程,很多人将其写成了工具、脚本,于是我们就有了很多指纹识别工具、敏感文件、目录扫描工具,敏感信息探测工具,信息收集工具等等。有了这些工具,我们可以在短时间内快速的收集我们想要的信息,并且通过研究和积累,我们使用具有高命中性、通用性的字典、特征文件作为核心,在渗透测试之初快速进行信息收集。

但这些工具具有一些共同的致命的特点,就是为了达到更高的覆盖率,通常会发送大量的攻击请求至服务器,这些请求会留下痕迹,在遇到有防护手段的web服务器时,将会导致很多的麻烦,同时,安全人员也会根据黑客的行为进行画像,进行攻击防护和溯源。

这时候可能会想到,通过使用大量的代理服务器来隐匿自己的行踪,并绕过安全防护手段的监控,不得不说,在拥有大量代理池的情况下,这确实是解决问题的办法,但是并不能完全奏效,一些高级安全防护人员会从访问时间、访问频率、访问文件类型等等一系列大量特征,对攻击人员进行分组聚类,并采取杀伤链溯源的方式,将黑客从众多的代理中“揪”出来。

因此,能否在不惊动目标服务器的情况下,对目标网站进行前期最重要的信息收集,并且尽可能的获得更多的信息呢?随着这个理念的产生,有了我们今天的课题,也就是利用搜索引擎来对目标网站进行信息收集的工作。

现今,我们使用了大大小小的搜索引擎,国内外搜索引擎不计其数,每个国家都有自己的搜索引擎,我们在此选择当仁不让的“全球第一”搜索引擎Google。

同样的,这条道路也有很多的前辈涉足过,但是作为安全学习的一部分,自己走一遍才是最重要的。早在我第一次写的目录扫描器Alisa中,就简单使用了GoogleHacking作为目录扫描的一部分,而在这里将其单拿出来,作为重点进行讨论。

二、Google基础铺垫

我们先来简略地铺垫一下Google基础性知识,这些知识你可以通过百度搜索(黑人问号脸,哈哈哈)轻易的得到,也可以参照Google官方帮助手册,如果你真的感兴趣的话,你可以购买相应的书籍进行进一步的学习。

1.基础法则

Google不区分大小写,除了or被用作布尔运算符时,就必须写做OR。

Google通配符(*),不同于在其他任何语言中的使用,星号在一个搜索短语中仅仅表示一个单词。

Google保留忽略的权利,where、how以及一些通用的单词、字母和单个数字,会被Google默认忽略。

Google限制最多搜索32个单词,包含搜索项和高级运算符。不过也有一些其他方法绕过这种限制,比如使用通配符来代替某些搜索项。

2.基础查询

最简单的查询包含一个单词或者在搜索界面输入的单词组合,如chickenattack。稍微复杂一点的是短语搜索,将要搜索的一组单词包括在双引号找那个进行搜索。当Google遇到一个短语的时候,它会严格按照你给定的顺序对短语中的所有单词进行搜索,Google不会排除在短语中找到的常用词,如“chickenattack”。

我们还可以使用布尔运算符和特殊字符进行查询,最常用的是AND,用来在一个查询中包含多个搜索项。但是对于Google来讲,AND是多余的,默认情况下,Google会自动搜索你查询中的所有元素。

加号(+)会强制包含跟着它的单词。例如Google默认排除了一些常用词,但我们想强制Google来搜索这些词,我们就可以搜索+andjusticefor+all。

另一个常用的布尔运算符是NOT,在功能上与AND运算符是相反的,NOT运算符把一个单词排除出一个搜索之外。使用这个运算符最好的方法就是在一个搜索单词前加上减号(-)。减号与搜索项之间不含空格。例如hacker-jacket。

另一个运算符是OR。还可以用竖线符(

)来表示。可以指示Google在查询时落在其中一个或另一个查询上。

Google不会受到括号影响。我们可以利用括号增加查询语句的可读性。例如:

intextpassword

passcode)intextusername

userid

user)filetype:csv

在搜索无效的时候也不要紧,多看看Google给出的提示。

3.高级运算符

在这里我直接放置一张高级运算符速查表,对于每一个的具体使用方法以及使用细节以及额外需要注意的点,各位看官自行学习。

高级运算符特性/要点intitle

在页面的标题里查找字符串

与其他运算符混合使用效果佳

allintitle

在一个页面的标题里查找所有搜索项

与其他运算符或搜索项混合使用效果差

inurl

在一个页面的URL里查找字符串

与其他运算符混合使用效果佳(有时site和filetype做的比inurl好)

allinurl

在一个页面的URL里查找所有搜索项

与其他运算符或搜索项混合使用效果

filetype

基于文件扩展名搜索特殊类型文件

需要一个额外搜索项

其他运算符或搜索项混合使用效果差

allintext别用它site

把一个搜索限定在一个特别的网站或域中

与其他运算符混合使用效果佳

能够单独使用

link

搜索一个网站的链接或者URL

无法与其他运算符或搜索项混合使用

可以扩展成包含目录名、文件名、参数等内容的完整URL

inanchor

在链接的描述性文字中查找文本

其他运算符或搜索项混合使用效果佳

用作寻找网站之间的关系

daterange

寻找在一个特定日期范围内索引过的页面

需要一个搜索项

与其他运算符或搜索项混合使用效果佳

可以被as_qdr淘

numrange

在特定范围内查找一个数字

与其他运算符或搜索项混合使用效果佳

需要两个参数,可以简写

cache

显示Google缓存的页面拷贝

无法与其他运算符或搜索项混合使用

有很多妙用,但结果优点不可预测

info

显示关于一个页面的总结信息

无法与其他运算符或搜索项混合使用

直接搜网站名或URL会得到相同的结果

related

显示与所给网站或URL相关的站点

无法与其他运算符或搜索项混合使用

stocks?

为一个股票代码显示Yahoo财经的股票列表

无法与其他运算符或搜索项混合使用

与本次课题无关

define

显示单词或短语的各种不同含义

无法与其他运算符或搜索项混合使用

与本次课题无关

我们在网上看到的一些十分实用十分高级的Google技巧,大多来自上述高级运算符之间的组合使用,因此,深入理解并熟练运用这些运算符是十分有必要的,在此我强烈建议,如果你在阅读到这部分之前是一名使用GoogleHack的小白,先暂停一下,在搜索引擎上亲自使用一些,看一看返回的结果,闭上眼,用心去体验。

如果觉得手动输入还是很别扭的话,点击网址

分享 转发
TOP
发新话题 回复该主题