shodan最恐怖的黑客搜索引擎


0x01 shodan 是什么 :

同样是搜索引擎,但它并不像谷歌,bing...那样,只单单针对web 中的各类html数据进行爬取shodan 是基于各类在线网络设备的旗标的全网搜索如,各类边界网络摄像头,路由器,交换机... ,中间件服务[如,各类web服务器,数据库,分布式中间件,文件共享服务等...]默认只能看到一部分搜索结果,具体是多少条已经忘记了可能需要付点费才能看到更多的搜索结果,同样它也提供查询api,这就非常方便按照我们自己的扫描需求定制脚本在渗透一些特定的网络设备或者自己手握0day批量打的时候还是非常好使的,俗称"工控设备渗透"...1

0x02 那,我们到底可以用它来干些什么呢

利用0day实施大规模批量入侵,前提是不要把自己的0day撞到别人的蜜罐里面去了,否则就可惜了全网批量统计所有感染有某一数据特征的后门,可以专门用来检测某种定向攻击批量扫描各种中间件的高危错误配置及能被远程利用的各类已知漏洞,也就是说完全可以把它当成一个高级的漏洞扫描器来用批量探测各种弱口令批量抓各种shell [ 不仅限于webshell,backdoor ... ]等……...1

0x03 关于shodan本身的更多详情,请直接参考其官方站点 [注册个账号是必须的]:

https://www.shodan.io/  

0x04 跟google hacking一样,shodan也有一套属于自己的语法规则,下面是shodan 内置的几个简单过滤器:

city:       城市,貌似只支持英文,而且不是能是简称,如,TOKYO,Hong Kong,Seoul...country:    指定国家或地区后缀,比如:cn,us,jp,tw,br,ph,vn,hk...hostname:   指定主机名,其实就是目标域名[域名如果是子域还需要在前面加个.]net:        指定网络范围,可以是单个ip或者cidr格式的ip段os :        指定操作系统 centOS,win32,red hat,suse 等...port:       指定端口,HTTP (80),FTP (21),SSH (22),SNMP (161),SIP (5060)等...product:    指定具体的产品名称,如,各类web服务器,数据库服务器,网络设备名称等......1

0x05 下面是一些简单的搜索实例:

搜集某个城市的特定设备 [这里暂以不同类型的web服务器为例] 标识 [自己可以事先多收集一些常见的软件和设备标识]:Microsoft-IIS/5.0 city:"TOKYO"   可逐个尝试能否直接写shellMicrosoft-IIS/6.0 city:"Seoul"   可逐个尝试能否直接 RCEMicrosoft-IIS/7.5 city:"Hong Kong" apache city:"Nagoya" Apache/2.2.27 city:"Nagoya"Tomcat city:"Seoul" 可逐个尝试能否直接 RCEcisco city:"Osaka"tplink city:"nanjing"1
搜索特定版本的操作系统及端口:os:"linux" net:"72.34.62.0/24"os:"windows" net:"195.40.91.0/24"Apache city:"Hong Kong" port:"8080"  product:"Apache Tomcat/Coyote JSP engine"Apache city:"Seoul" port:"8080"hostname:".polyu.edu.hk" os:"windows"1
搜索指定国家地域特定类型的工具服务 (还是那句话,多搜集一些高质量的工具banner):product:"tomcat"  net:"158.132.18.0/24"product:"apache"  net:"158.132.18.0/24"product:"iis"     net:"158.132.18.0/24"port:"8080" jboss country:CNport:"8080" jboss country:IN1
扫描指定网段内的所有特定数据库服务器:product:"Mysql"  net:"140.117.13.0/24" port:"3306"port:"1433" net:"78.131.197.0/24"port:"5432" net:"77.55.149.0/24"port:"1521" net:"78.143.192.0/12"port:"1521" city:"Osaka"1
搜索特定远程管理终端端口:os:"windows" port:"3389" net:"107.160.1.0/24"os:"linux" port:"22" net:"107.160.1.0/24"os:"linux" port:"23" net:"107.160.1.0/24"os:"linux" port:"23" net:"87.124.0.0/15"1
搜各类路由的特定web管理端口:
搜索ftp / tftp :port:"21" net:"107.160.1.0/24"port:"69" net:"218.242.16.0/24"1
在某个城市中搜索指定的端口,操作系统及在线网络设备:city:"Hong Kong" port:"69"city:"Hong Kong" port:"3389"city:"Hong Kong" port:"22"city:"Hong Kong" port:"23"city:"Hong Kong" port:"3306"city:"Hong Kong" port:"110"city:"Hong Kong" os:"windows"city:"Hong Kong" product:"cisco"city:"Hong Kong" port:"8080"1
搜索指定国家的特定设备,端口,服务器:port:"23" country:CNport:"1433" country:CNport:"3389" country:CNtplink country:CNhuawei country:CNnetcam  country:CNcountry:CN net:"115.225.113.0/24" port:"22"country:CN routeradmin login  country:HKhacked by country:HK1
搜缺省密码:"default password" city:"Hong Kong"country:CN "default password"1
搜exp[其实,就是把exploit上的东西扒下来]:https://exploits.shodan.io/welcome1
搜索各类漏洞摄像头:netcam net:"187.189.82.0/24"1
批量搜集一些开源web程序,尝试0day批量利用:
针对某个端口,批量搜集感染了某种数据标志的木马:
批量搜集一些经典漏洞尝试利用,比如:iis,tomcat,jboss... RCE,心脏滴血,bash远程执行,等等……:

0x06 下面是一些常见的默认用户名密码,可以尝试撞撞运气:

ACTi: admin/123456 or Admin/123456Axis (traditional): root/pass,Axis (new): requires password creation during first loginCisco: No default password, requires creation during first loginGrandstream: admin/adminIQinVision: root/systemMobotix: admin/meinsmPanasonic: admin/12345Samsung Electronics: root/root or admin/4321Samsung Techwin (old): admin/1111111Samsung Techwin (new): admin/4321Sony: admin/adminTRENDnet: admin/adminToshiba: root/ikwdVivotek: root/<blank>WebcamXP: admin/ <blank>1
关于shodan 的入门用法到这里基本就差不多了,建议大家如果真的想用好,可以付点费自己写脚本,当然,你也可以直接用别人提供好的py shodan库国内利用此api衍生出来的工具还是蛮多的,这里就不一一细说了总之来讲,批量抓shell效果还是非常不错的从上面我们也不难发现,利用的核心还是各种特征 [banner] 质量加上你自己的想象力,因为它直接决定了你的命中率...1

0x07 另外,再介绍两个国内的小工具站,使用非常简单,纯图形化的,这里就不细说了:

https://www.punkspider.org/   在线web漏洞扫描http://ics.zoomeye.org/       基于shodan实现...1

0x08 最后再提下bing(目前已经费掉了,很多人的C段旁站工具想必都是基于此api写的),下面是常见使用方法:

ip:ip地址    它就会把这个ip所对应的所有域名都列出来

0x09 基于此api的各种C段旁站工具编写原理:

编写过程其实也很简单,就是把bing搜索的结果格式化截取输出一下不过,在此之前你需要事先去bing申请一下搜索用的api去微软的开发者中心申请一个即可如果旁站能想通,那么C段也只不过是把254台机器在线的ip又轮训一遍而已,我想你应该懂了1

0x10 一点小结:
      关于google和shodan的用法,大概就介绍到这里了,使用都比较简单,基本就是几个过滤器来回的组装,随意的根据自己的实际需求拼装特征,说道底,还是看大家的想象力和对现有信息特征的敏感度,大家也看到了,如果完全手工的话,确实挺累的,为什么不写成自动化的脚本来帮我们完成呢,当然,这类的工具也有很多现成的,不过并不是按照咱们的想法来的,所以,最好自己动手……不过在写脚本之前,自己首先要能熟练使用才是,这样写出来的工具杀伤力才能更大些,当然,关于这类web搜索引擎所能产生的渗透效果的强弱,主要是还是看搜索引擎对目标收录的多少,如果目标站点建立的时间比较长,而且各大搜索引擎的收录量也比较好的话,这时候你利用谷歌固然成效显著,但如果一个站点刚建立不久,谷歌收录量也非常少,这时谷歌对你来讲也许就只是个摆设,这里说到的内容可能还只是各个搜索引擎利用的冰山一角,更多更强大的功能,还要靠大家一起来慢慢挖掘,对了,最后再说明一点,用这些搜索引擎的时候,最好全程挂上vpn,推荐美国的,原因大家应该都明白,自家人对自家人的限制几乎是最少的,不要问我为什么不介绍百度没办法,太不堪(原因大家都懂……)



0x10 一点心得:
       一般我们在搜索引擎上搜集目标信息的时候,首先,应该直奔一些比较高危的漏洞特征,比如能快速getshell的,比如,默认账号密码,进去以后就只可以直接传shell的,此外,如果目标有支持jsp脚本的机器,我们首先就应该从jsp开始入手,因为jsp程序的权限一般都非常高,几乎是服务器的管理员权限,所以我们平时在搜集信息过程中,也尽量先找一些最好能直取权限的信息,孰轻孰重,自己心里一定要有分寸,这样可以避免我们做太多的无用功,当然,如果你手上有个开源的web程序未公开的0day,然后配合类似的搜索引擎利用,那结果可想而知,反正我们利用各种搜索引擎的最终目的无非就是想尽快找个目标边界先进去……

1. Shodan语法

常见用的过滤命令

    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"

   apache city:"Hefei":查找位于合肥的Apache服务器

   nginx country:"CN":查找位于国内的Nginx服务器

  "Server: gws" hostname:"google" :查找GWS(Google Web Server)服务器

  huawei net country:"CN":查找指定国家的华为设备

2. shodan搜索摄像头

Basic realm="IP Camera" country:CN

搜索关键字 Server: uc-httpd 1.0.0 200 OK Country:"CN" 这种方式可以搜索到大量可以登录的摄像头

3. python安装shodan库

pip install shodan

4. 代码中引用shodan

shodan界面账号生成api,api.search('shodan语法‘)

import shodan

SHODAN_API_KEY= "api"

api= shodan.Shodan(SHODAN_API_KEY)

try:

    # 搜索Shodan

    results= api.search('host www.baidu.com')

print(results)

except shodan.APIErroras e:

    print ('Error: %s' % e)

5.kali msf使用shodan

msf5 > use auxiliary/gather/shodan_search

msf5 auxiliary(gather/shodan_search) > options 查看参数

msf5 auxiliary(gather/shodan_search) > set SHODAN_APIKEY shodanapi

msf5 auxiliary(gather/shodan_search) > set QUERY "webcamXP"  设置搜索摄像头

msf5 auxiliary(gather/shodan_search) > run

更多高质量干货文章,欢迎大家直接去关注 我的博客
或者扫码关注自己的公众号 'apt攻防指南' , 也会不定期更新推送 🙂

本文由 泓源视野 作者:admin 发表,其版权均为 泓源视野 所有,文章内容系作者个人观点,不代表 泓源视野 对观点赞同或支持。如需转载,请注明文章来源。

发表评论

Protected with IP Blacklist CloudIP Blacklist Cloud

您是第8239949 位访客, 您的IP是:[3.230.1.126]