渗透测试学习(二)搜索引擎与常用语法

google

镜像站:www.googlen.org

逻辑搜索

1.google用and作为默认逻辑,即搜索包含所有关键字的文章

2.若使用or逻辑,那么在关键字中间加一个大写的OR|,两边用空格隔开:

xxx OR yyy
xxx | yyy

3.搜索包含xxx而不包含yyy的内容,在关键字中间加一个-,且前面有空格,后面紧挨着:

xxx -yyy

4.约束搜索:+用于约束搜索,必须包含+后的内容:

"gtfly" +"wp"

通配符搜索

用英文引起来,中间用*(通配符)、.(匹配符号)等:

"i*u"

intitle

将搜索的范围局限在标题上

intitle:"index of"

intext

搜索网页内容

intext:to parent directory
intext:转到父目录

上面会返回很多网站的目录url

inanchor

在页面的链接锚点进行搜索

inanchor:login

site

把搜索限制在站点域名之内:

site:gtfly.top
site:*.xxx.com  # 查询所有子域名
site:baidu.com -www # 除www外的所有子域名
site:200.111.111.* # 搜索C段信息

inurl

将搜索的范围限制在URL或网站的页面上。inurl发挥的作用很大,它可以用来找网站后台登录地址、搜索特殊URL:

inurl:admin.php

filetype

搜索指定后缀的文件:

filetype:mdb

组合拳

查找后台地址:site域名 inurl:login|admin|manage|member|admin_login|login_admin|system|login|user|main|cms

查找文本内容:site:域名 intext:管理|后台|登陆|用户名|密码|验证码|系统|帐号|admin|login|sys|managetem|password|username

查找可注入点:site:域名 inurl:aspx|jsp|php|asp

查找上传漏洞:site:域名 inurl:file|load|editor|Files

找eweb编辑器:site:域名 inurl:ewebeditor|editor|uploadfile|eweb|edit

存在的数据库:site:域名 filetype:mdb|asp|#

查看脚本类型:site:域名 filetype:asp|aspx|php|jsp

shodan

网页版

https://www.shodan.io/

常用过滤命令:

  • hostname:搜索指定的主机或域名,例如 hostname:"google"
  • port:搜索指定的端口或服务,例如 port:"21"
  • country:搜索指定的国家,例如 country:"CN"
  • city:搜索指定的城市,例如 city:"Hefei"
  • org:搜索指定的组织或公司,例如 org:"google"
  • isp:搜索指定的ISP供应商,例如 isp:"China Telecom"
  • product:搜索指定的操作系统/软件/平台,例如 product:"Apache httpd"
  • version:搜索指定的软件版本,例如 version:"1.6.2"
  • geo:搜索指定的地理位置,参数为经纬度,例如 geo:"31.8639, 117.2808"
  • before/after:搜索指定收录时间前后的数据,格式为dd-mm-yy,例如 before:"11-11-15"
  • net:搜索指定的IP地址或子网,例如 net:"210.45.240.0/24"

example:

http.html:"学校" country:HK

命令行版

安装:

pip install shodan

使用:

shodan -h

初始化:

shodan init API_KEY

python版

初始化:

1
2
3
4
5
6
import shodan

SHODAN_API_KEY = "V3a8EcMNhfYeM38fTeufiHyszSg8R8Ra"
api = shodan.Shodan(SHODAN_API_KEY)
result = api.host("62.234.60.226")
print result["ports"]

常用库函数:

1
2
3
4
5
6
7
8
9
shodan.Shodan(key) :初始化连接API
Shodan.count(query, facets=None):返回查询结果数量
Shodan.host(ip, history=False):返回一个IP的详细信息
Shodan.ports():返回Shodan可查询的端口号
Shodan.protocols():返回Shodan可查询的协议
Shodan.services():返回Shodan可查询的服务
Shodan.queries(page=1, sort='timestamp', order='desc'):查询其他用户分享的查询规则
Shodan.scan(ips, force=False):使用Shodan进行扫描,ips可以为字符或字典类型
Shodan.search(query, page=1, limit=None, offset=None, facets=None, minify=True):查询Shodan数据

zoomeye(钟馗之眼)

偏向web应用层面的搜索

https://www.zoomeye.org/

搜索语法:

  • ip:指定ip

  • port:指定端口

  • cidr:ip地址段,如cidr:62.234.60.226/24

  • app:组件名,如app:nginx

  • ver:版本,如ver:1.0

  • os:操作系统,如os:windows

  • country:国家,如country:China

  • city:城市

  • hostname:主机名

  • site:网站域名

  • desc:描述

  • service:服务类型,如service:ftp

  • keywords:关键词

高级搜索:直接点击高级搜索

FoFa

偏向资产搜索

https://fofa.so

搜索语法:

  • title:从标题中搜索,例如title="gtfly"

  • header:从http头中搜索

  • body:从html正文中搜索

  • domain:搜索子域名

  • host:从url中搜索带有host的域名,如host=".gov.cn"

  • port:查找指定端口

  • ip:指定ip

  • protocol:指定协议类型

  • city:指定城市

  • region:指定行政区

  • country:指定国家(编码)的资产

  • cert:搜索证书中带有xxx的资产

组合拳:

  • &&:与
  • ||:或

censys

https://censys.io/

1.帮助文档:https://www.censys.io/certificates/help

2.ip查询:https://www.censys.io/ipv4?q=ip

3.域名查询:https://www.censys.io/domain?q=doamin