跳到主要内容

Google 搜索信息收集常用语法


Google 搜索信息收集常用语法

这篇整理 Google 搜索在信息收集中的常用写法。Google 的搜索语法会调整,不要把网上流传的所有 dork 都当成当前官方稳定操作符;实际使用时应先用普通搜索验证结果。涉及安全测试时只针对自己或明确授权的目标。

当前 Google 官方帮助页明确列出的常用操作包括精确短语、site:、排除 -、filetype:、before:、after:。intitle:、inurl:、intext: 等写法长期常用,但并非都出现在当前官方操作符清单中,结果行为可能变化。


一、常用搜索语法

1. 基础操作符

操作符 说明 示例
site: 限定搜索特定域名或子域名 site:example.com
intitle: 标题包含关键词 intitle:"login"
allintitle: 标题包含所有指定关键词 allintitle:"admin" "dashboard"
inurl: URL 路径包含关键词 inurl:/admin
allinurl: URL 路径包含所有指定关键词 allinurl:login.php?user=
filetype: 搜索特定文件类型 filetype:pdf "confidential"
ext: 按文件扩展名搜索(同 filetype:) ext:sql "password"
intext: 正文内容包含关键词 intext:"数据库密码"
allintext: 正文包含所有指定关键词 allintext:"username" "password"
related: 某些情况下可用于查找相似站点,结果支持度可能变化 related:github.com

cache: 已被 Google 正式停用;info:、link: 等老操作符也不应再作为当前稳定语法写进自动化流程。ext:、allintitle:、allinurl:、allintext: 等虽然长期有人使用,也建议以当前实际搜索结果为准。

2. 逻辑操作符

操作符 说明 示例
AND 或空格 同时满足多个条件 site:example.com 密码
OR 满足任意一个条件 漏洞 OR 后门
- 排除关键词 登录 -site:example.com
() 组合复杂逻辑 (inurl:admin OR intitle:admin) -论坛

3. 高级操作符

操作符 说明 示例
* 常用于引号短语中的占位词,不等同于正则里的“任意字符” "username * password"
"..." 精确匹配短语 "您的密码错误"
.. 数值范围写法,实际结果需验证 价格 100..500
AROUND(N) 常见的邻近词搜索写法,支持度可能变化 密码 AROUND(5) 泄露

4. 隐藏功能

功能 说明 示例
时间筛选 限定时间范围(通过搜索工具栏) 最近一年、自定义日期
图片搜索 通过图片反向搜索敏感信息 上传图片查找来源
地图数据 搜索暴露的地理标记信息 intitle:"security camera" site:google.com/maps

二、组合示例大全(按场景分类)

1. 敏感文件泄露

场景 示例 说明
数据库备份 filetype:sql "DROP TABLE" site:example.com 搜索 SQL 备份文件
配置文件 intitle:"index of" "config.php" 查找 PHP 配置文件
日志文件 ext:log "error" "password" 包含密码的日志文件
密钥文件 filetype:key private 私钥文件泄露

2. 后台与登录页面

场景 示例 说明
管理员后台 intitle:"admin login" inurl:/admin 未授权访问的管理页面
默认密码 "默认密码" site:routerlogin.net 设备默认凭据
弱口令提示 intext:"用户名或密码错误" inurl:login 登录页面错误信息

3. 漏洞利用

场景 示例 说明
可能存在动态参数并暴露数据库报错 inurl:"id=" intext:"Warning: mysql" 只能作为信息收集线索,不能仅凭搜索结果断定存在 SQL 注入
目录遍历 intitle:"index of /" "parent directory" 开放目录列表
API 接口暴露 inurl:/api/v1 intext:"apikey" 泄露的 API 密钥

4. 设备与系统

场景 示例 说明
网络摄像头 inurl:/view.shtml intitle:"Live View" 公开的摄像头流
路由器管理 intitle:"RouterOS" "admin" 未授权的路由器配置页面
打印机控制台 inurl:"/hp/device/this.LCDispatcher" 惠普打印机管理界面

5. 开源情报(OSINT)

场景 示例 说明
员工信息 site:linkedin.com "CTO" "example.com" 通过 LinkedIn 收集员工职位
文档元数据 filetype:docx "作者:张三" 从 Office 文档提取创建者信息
GitHub 泄露 "github.com" "password" extension:env GitHub 中的敏感环境变量文件

6. 错误信息泄露

场景 示例 说明
调试模式 intext:"DEBUG MODE" "PHP" 开启调试模式的网站
数据库报错 "ORA-12541: TNS 无监听程序" Oracle 数据库错误信息
堆栈跟踪 intext:"at java.lang.Thread" Java 应用崩溃日志

三、高阶组合技巧

1. 通配符与模糊搜索

  • 搜索带参数的 URL:
    inurl:*.php?id= *
  • 查找密码重置链接:
    "password reset" site:example.com inurl:token=*

2. 时间范围限定

  • 查找近期泄露的数据库:
    filetype:sql "INSERT INTO users" after:2023-01-01

3. 混合逻辑精准定位

  • 排除干扰结果:
    (intitle:"管理后台" OR inurl:/admin) -site:gov.cn
  • 组合文件类型与关键词:
    filetype:xls "员工工资" site:example.com

4. 利用错误消息

  • 发现 SQL 注入漏洞:
    "You have an error in your SQL syntax"
  • 识别配置错误:
    "Access denied for user 'root'@'localhost'"

四、防御建议(补充)

  1. 不要把 robots.txt 当访问控制:它只是给爬虫的抓取提示,敏感路径仍应依靠认证、授权和服务器访问控制保护;把 /admin、/config 明写进 robots 反而可能暴露路径。
  2. 文件权限控制:避免将备份文件(.bak、.sql)存放在 Web 可访问目录。
  3. 错误信息收敛:生产环境不要向外暴露详细堆栈、数据库连接信息等调试内容。
  4. 定期搜索自身资产:用 site:yourdomain.com、filetype: 等检查公开索引,发现敏感内容后从源站移除并按搜索引擎流程申请更新。

五、工具增强

  • Google Hacking Database(GHDB):可以作为历史 dork 参考,但其中很多查询来自旧环境,使用前仍要验证当前搜索语法和目标授权范围。
  • 监控与告警:可以使用 Google Alerts 监控品牌、域名等公开关键词;涉及敏感词时注意不要把告警查询本身当成漏洞验证。

六、合法与道德提醒

  • 仅用于授权测试:渗透前需获得书面许可。
  • 漏洞报告:发现漏洞后联系管理员,参考《漏洞披露规范》。
  • 避免敏感数据:示例中的关键词均为演示用途,请勿针对真实系统测试。

七、语法解析与示例

1. index of /admin

  • 用途:搜索开放目录列表中的 /admin 目录(常见管理后台路径)。
  • 风险:暴露后台登录页面、未授权访问管理界面。
  • 防御:禁用目录列表(Apache: Options -Indexes),设置访问权限(如 IP 白名单)。

2. index of /passwd

  • 用途:查找 Unix/Linux 系统中的 /etc/passwd 文件(用户账户信息)。
  • 风险:泄露用户名、UID/GID 等敏感信息(现代系统密码存储在 /etc/shadow)。
  • 防御:确保 /etc/passwd 文件权限为 644,禁止 Web 访问系统文件。

3. index of /password

  • 用途:搜索包含 “password” 关键词的目录或文件(如明文密码文件)。
  • 风险:直接获取明文密码或哈希值。
  • 防御:避免在代码或文件中明文存储密码,使用环境变量或密钥管理服务。

4. index of /mail

  • 用途:查找邮件服务器或邮件存储目录(如 /var/mail)。
  • 风险:泄露用户邮件内容、账户信息。
  • 防御:限制邮件目录的 Web 访问权限,加密存储敏感数据。

5. “index of /“ +passwd

  • 用途:在根目录下搜索 passwd 文件。
  • 示例结果:可能发现 /etc/passwd 被错误链接到 Web 根目录。
  • 防御:检查 Web 目录中是否存在符号链接到系统文件。

6. “index of /“ +password.txt

  • 用途:查找 Web 根目录下的 password.txt 文件。
  • 风险:明文密码文件可直接下载。
  • 防御:删除测试或临时文件,禁用目录列表。

7. “index of /“ +.htaccess

  • 用途:暴露 Apache 服务器的 .htaccess 配置文件。
  • 风险:泄露重定向规则、认证凭据(如 AuthUserFile 路径)。
  • 防御:限制 .htaccess 文件权限(如 600),避免存储敏感信息。

8. “index of /root”

  • 用途:搜索 Unix 系统超级用户(root)的主目录。
  • 风险:泄露 root 用户的 SSH 密钥、脚本或日志。
  • 防御:确保 /root 目录权限为 700,禁止 Web 服务器访问。

9. “index of /cgi-bin”

  • 用途:查找 CGI 脚本目录(常见于老旧系统)。
  • 风险:利用 CGI 漏洞(如 Shellshock)执行远程代码。
  • 防御:升级或禁用 CGI 模块,设置严格的脚本权限。

10. “index of /logs”

  • 用途:暴露日志文件目录(如访问日志、错误日志)。
  • 风险:日志中可能包含敏感信息(如 SQL 错误中的数据库密码)。
  • 防御:将日志存储在非 Web 目录,定期清理并加密存档。

11. “index of /config”

  • 用途:查找配置文件目录(如数据库连接信息)。
  • 风险:泄露 config.php、settings.ini 等文件。
  • 防御:将配置文件移出 Web 目录,使用环境变量注入配置。

文章作者: 0xdadream
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 0xdadream !
赏
评论

评论将在接近此处时加载,也可点击立即加载。

  目录