基本用法
Shodan有一些基础用法,首先来了解第一个用于寻找位于指定城市的设备
iis city:Beijing
用Shodan搜索我们会发现内容是来自全球的,如果我们想要指定国家的话则可以用这个
iis country: China
也可以指定端口进行搜索
https port: 80
寻找特定的操作系统
microsoft-iis os:"windows xp"
根据经纬度和指定的半径来返回结果。只能有2个或3个参数,第三个参数是半径,默认数值之5km。
apache geo:42.9693,-74.1224
寻找指定ip地址和子网掩码的设备
iis net:216.0.0.0/16
搜索包含指定域名的主机
Akamai hostname:.com
搜索指定日期范围的设备
apache before:1/01/2015
nginx after:1/01/2013
Shodan是需要登录的,登陆之后大多数的参数都可以运作。
一般来说 auxiliary/gather/Shodan_search模块通过API可以向数据库查询前50个ip 地址。50个ip地址的限制可以通过购买无限制API key来扩大到查询10000个ip地址。
Shodan里也有一些组件:比如Exploits,Shodan Exploits 能够用于在ExploitDB 或Metasploit寻找针对不同系统、服务器、平台、应用的的exploits。
再比如Maps,这是个付费功能,我们能在地图上直观地看到Shodan提供的结果。他可以提供三种视图:卫星,街景(浅),街景(深)。可以同时在屏幕展示超过1000个结果。
还有Scanhub,Shodan Scanhubs可以用于创建陌生网络的搜索,它支持Nmap 和 Masscan类似的工具。要使用Scanhub,我们首先要设置好工具,输出一个XML格式的文件并上传到Scanhub的库里以获得结果。不过该功能也需要付费开通。
实例演示
Shodan无时无刻都在扫描全网设备,并抓取设备响应的banner信息,通过设备的banner信息,可以对设备的端口进行大致分类。
我们可以利用Shodan搜索网络中我们需要的信息。比如我们搜索:SSH,可以看到下面列出了很多SSH服务的Banner信息,左边对应着设备IP以及一些区域信息。右边的Banner信息中有SSH服务的版本等信息。
所以我们也可以通过一些特殊的语法,就像我们前面讲到的那些搜索我们想要的信息,我们可以动手操作一下。
尝试输入:hostname:baidu 去搜索包含baidu的主机
hostname:baidu
我们使用Shodan主要就是为了做资产收集,所以可以看到我们搜索出来的信息就和baidu相关性很大,它总能让我们发现一些平时发现不了的资产。
还可以搜索全网摄像头设备,比如一开始那一样。也可以尝试输入
Android Webcam Server –Authenticate
搜索DNS服务,可以尝试输入:
port:5353
也可以通过Shodan-exploits来搜索漏洞利用的信息:【Microsoft IIS 6.0 - WebDAV远程身份验证绕过】
https://exploits.shodan.io/?q=Microsoft+IIS+6.0
我们可以利用这样一个强大的搜索引擎来进行被动信息收集,完善我们对于目标的资产整理