《OSINT分析》02. 搜索引擎检索语法

本系列侧重方法论,各工具只是实现目标的载体。
命令与工具只做简单介绍,其使用另见《软件工具录》。

1:Dorking 简介

Dorking,也叫做 Dorks,是一种利用搜索引擎查找特定信息的技术,核心是通过精确的检索语法和关键词,定位互联网上暴露的敏感信息。

Google 和其他搜索引擎允许在搜索文本中使用检索语法,检索语法是添加到搜索中的文本,用以执行某个功能。

Google 检索语法对大部分其他搜索引擎都通用。

Dorking 可用于查找多方面的信息,包括但不限于下述信息:

  • 网站、公司、组织的关键信息
  • 关于公司、产品和服务的评论
  • 有关特定主题的博客、文章、研究论文等
  • 泄露的软件、课程和电子书
  • 寻找某个问题的答案
  • 跟踪网络舆情信息
  • 寻找泄露数据的线索,包括用户名、密码、网站管理入口等
  • 跟踪网络威胁情报,追溯威胁历史活动信息

2:Google 检索语法

Google Dorking,亦称 Google Dorks 或 Google Hacking。

Google 搜索引擎对于同一个检索语法,如果代理处于不同的地区,返回的检索结果也会不同。

Google 检索语法对大部分其他搜索引擎都通用。

2.1:常规搜索

2.1.1:不带引号

语法说明:不要求完全匹配关键词,可能会包含拼写相似的词或内容相关但不精确匹配的页面。

示例 1

  • OSINT

示例 2:查找多个独立的关键词,搜索结果中可能包含关键词的不同排列组合,也可能分散在页面的不同位置。

  • Open Source Intelligence

2.1.2:双引号

语法说明:关键词检索,要求检索结果中必须包含完整的检索关键词。

示例 1:对单个词进行精确搜索,完全匹配包含关键词的页面。

  • "OSINT"

示例 2:对短语进行精确匹配搜索,搜索包含完整短语的页面,不会拆分成单独的词。

  • "Open Source Intelligence"

示例 3:对多个独立关键词精确匹配,返回包含所有独立词的页面,但它们不必按特定顺序出现,也不需要连在一起。

  • "开源" "情报" "分析"

2.2:检索符

除了以 “ all ” 开头的检索符,其他检索符只跟一个关键词。

2.2.1:site

语法说明:将搜索范围限定到特定网站。

示例 1

  • site:github.com

示例 2:在特定网站检索特定的内容。

  • "OSINT" site:github.com

2.2.2:filetype

语法说明:指定文件类型扩展名,搜索某一种文件类型的资源。

示例 1

  • "OSINT" filetype:ppt

示例 2

  • "情报" site:github.com filetype:pdf

2.2.3:intitle

语法说明:限制网页标题中包含某一个特定的关键词。

示例 1

  • intitle:OSINT

示例 2

  • intitle:"index of"

示例 3:查找网页标题中同时包含多个关键词的页面。

  • intitle:开源 intitle:分析

示例 4:限制网页标题包含至少一个指定的关键词(使用 OR 运算符)。

  • intitle:开源 OR intitle:分析

2.2.4:allintitle

语法说明:限制网页标题中同时包含多个关键词。

示例 1:等同于 intitle:开源 intitle:分析,关键词不必按特定顺序出现,也不需要连在一起。

  • allintitle:开源 分析

2.2.5:inurl

语法说明:限制网页 URL 中包含某一个特定的关键词。用法与 intitle 类似。

示例 1

  • "OSINT" inurl:blog

示例 2:查找 URL 中包含特定路径的结果。

  • "OSINT" inurl:/blog/ site:inteltechniques.com

2.2.6:related

语法说明:搜索与某个网站相关联的页面,或者结构内容相似的一些其它网站。

示例 1:搜索一些与 GitHub 类似,或有类似内容的网站。即可能与代码托管、开源项目、版本控制等方面相关的其他平台。

  • related:github.com

2.3:运算符

2.3.1:排除符【-】

语法说明

  • 直接跟关键词:排除任何包含指定关键词的结果(包括标题、正文、URL)
  • 结合检索符使用:与检索符功能相反

示例 1

  • "OSINT" -book

示例 2

  • "OSINT" -"Open Source Intelligence"

示例 3:排除特定网站。

  • "OSINT" -site:github.com

2.3.2:与运算【AND】【+】

语法说明:搜索同时符合多个条件的结果。默认搜索(即用空格连接)就是 AND 逻辑。

示例 1:以下语句功能类似。

  • intitle:开源 intitle:分析
  • intitle:开源 + intitle:分析
  • intitle:开源 AND intitle:分析

2.3.3:或运算【OR】【|】

语法说明:符合多个条件之一即可。

示例 1:以下语句功能类似

  • intitle:开源 OR intitle:分析
  • intitle:开源 | intitle:分析

2.3.4:通配符【*】

语法说明:可以匹配其他任意字符,用于模糊搜索。使用时需要使用双引号包裹关键词,一般不用于检索符之中。

示例 1

  • "开源*分析"

示例 2

  • "开源*分析" -site:csdn.net

错误示例:错误语句,请勿模仿。

  • site:cs*.net

2.3.5:括号

语法说明:用来优化运算符逻辑。

示例 1

  • "情报" (site:zhihu.com OR site:github.com)

示例 2

  • ("开源" OR "分析") site:github.com

2.4:综合示例

  1. 搜索在线 Web 文件夹
    intitle:"index of"

  2. 查找免费电子书
    "free" ("ebook" OR "book") filetype:pdf

  3. 查找网络摄像头
    inurl:view/index.shtml

  4. 随机查找一些密码列表
    login password filetype:xls

  5. 查找可以通过 Web 访问的 FTP 服务器
    intitle:"index of" inurl:ftp

  6. 查找暴露在 Web 的 FTP 服务器
    inurl:ftp -inurl:http -inurl:https

  7. 查找 FTP 服务器上的特定文件

    • 示例 1:"OSINT" filetype:pdf inurl:ftp -inurl:http -inurl:https
    • 示例 2:"OSINT" filetype:pdf inurl:ftp -inurl:(http|https)
  8. 寻找与目标用户相关的文件
    "John J. Doe" (filetype:pdf OR filetype:xlsx OR filetype:docx)

  9. 寻找某人的社交媒体账户
    "John J. Doe" site:x.com

  10. 自学 Google Dorking:

    • 示例 1:("google" OR "谷歌") ("检索" OR "搜索") ("语法" OR "指令" OR "技巧")
    • 示例 2:("Google syntax" OR "Google search operators") (site:.com OR site:.org OR site:.net OR site:.io OR site:.blog)

3:Bing 检索语法

Bing 具备优秀的图像检索功能。

由于 Google 检索语法基本上通用,这里只介绍 Bing 特有的检索语法。

3.1:检索符

3.1.1:contains

语法说明:指定文件类型扩展名,搜索某一种文件类型的资源。与 Google filetype 类似,区别在于 contains 会检索来自指定域的文件链接,即便网页属于其他域名。

示例 1:检索来自指定域的文件链接,即便网页属于其他域名。

  • contains:ppt site:cisco.com

示例 2:搜索结果限定在指定域。

  • filetype:ppt site:cisco.com

3.1.2:linkfromdomain

语法说明:查找指定域下所包含的链接。(首字母可以大写:LinkFromDomain

示例 1

  • linkfromdomain:example.com

4:Yandex 检索语法

由于 Google 检索语法基本上通用,这里只介绍 Yandex 特有的检索语法。

4.1:检索符

4.1.1:mime

语法说明:指定文件类型扩展名,搜索某一种文件类型的资源。与 Google filetype 类似。

示例 1

  • "passport" mime:pdf

4.1.2:date

语法说明:根据网页发布日期进行检索。

语法 说明
date:<YYYYMMDD 在某个日期前或后(<<=>>=
date:YYYYMMDD..YYYYMMDD 发布日期在一定范围内
date:YYYYMMDD 在某天发布
date:YYYYMM* 在某月发布
date:YYYY* 在某年发布

示例 1
festival date:>=20231001

示例 2
festival date:20230101..20231201

示例 3
festival date:202312*

示例 4
festival date:2023*

4.2:运算符

4.2.1:排除符【~~】

语法说明

  • 直接跟关键词:排除任何包含指定关键词的结果(包括标题、正文、URL)
  • 结合检索符使用:与检索符功能相反

此排除符是 Yandex 的官方操作符,但 Google 的排除符也可使用。

示例 1

  • 开源 ~~ github

示例 2

  • 开源 ~~ site:csdn.net ~~ site:github.com

4.2.2:或运算【|】

语法说明

  • 与 Google 类似。不过 Yandex 不支持【OR】,但支持【|
  • 另外 Yandex 的或运算对检索符的支持不是特别好

4.2.3:关系运算【<<】

语法说明:通常用于检索指定两个关键字之间存在关系的网页,关键字的顺序并不重要。

示例 1

  • Moscow << USA

4.2.4:距离运算【/】

语法说明:【/<num>】运算符通常用于指定两个关键词之间的最大距离。

示例 1:指定关键词之间的最大距离不超过 2。

  • great /2 hural

4.2.5:【&】运算

语法说明:通常用于搜索在同一句子中包含指定关键词的网页。可以结合距离运算【/<num>】使用。

示例 1

  • Hedgehog & Flamingo

示例 2:指定关键词在一句话中,且距离不超过 3 个词。

  • Hedgehog &/3 Flamingo

4.2.6:【&&】运算

语法说明:通常用于搜索在整个页面中包含指定关键词的网页。可以结合距离运算【/<num>】使用。

示例 1:搜索同时包含指定关键词的页面,但不一定在同一句话中。

  • Hedgehog && Flamingo

示例 2:指定关键词都在页面中,且词间的距离不超过 3 个句子。

  • Hedgehog &&/3 Flamingo

5:补充知识

5.1:文件类型 & 扩展名

文件类型扩展名 文件类型
7z Compressed File
bmp Bitmap Image
doc Microsoft Word
docx Microsoft Word
dwp Autodesk
gip Animated Image
htm Web Page
html Web Page
jpg Image
jpeg Image
kml Google Earth
kmz Google Earth
odp OpenOffice Present
ods OpenOffice Spreadsheet
odt OpenOffice Text
pdf Adobe Acrobat
png Image
ppt Microsoft PowerPoint
pptx Microsoft PowerPoint
rar Compressed File
rtf Rich Text Format
txt Text File
xls Microsoft Excel
xlsx Microsoft Excel
zip Compressed File

6:其他

6.1:相关平台

Google 搜索引擎:

Bing 搜索引擎:

Yandex 搜索引擎:

6.2:参考资料

《谷歌搜索引擎高级搜索、命令大全表格总结》:
https://evanli.github.io/blog/2019/01/26/advanced-google-search-engine-command/

《谷歌搜索语法(一)基本语法》:
https://blog.csdn.net/u014565127/article/details/53842885

《搜索引擎竟然有这么多用法:22种高级搜索语法》:
https://www.bilibili.com/opus/153051571910167163

《搜索引擎对比:Google VS Bing》:
https://www.howsci.com/search-engine-showdown-google-vs-bing.html

《为什么你找不到的东西别人能找到?-让你高人一筹的搜索技巧》:
https://www.cnblogs.com/testing-/p/18500415

《Yandex Search Context》:
https://yandex.com/support/search/query-language/search-context.html

《link和domain的区别》:
https://blog.csdn.net/cgkitty/article/details/7990671

《Search Macros: LinkfromDomain》:
https://blogs.bing.com/search/October-2006/Search-Macros-LinkfromDomain




却下水晶帘,玲珑望秋月。

——《玉阶怨》(唐)李白