Shodan搜索引擎学习手册
免责声明
学习视频来自 B 站up主泷羽sec,如涉及侵权马上删除文章。
笔记的只是方便各位师傅学习知识,以下代码、网站只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负。
B站学习地址:https://space.bilibili/350329294
目录
- Shodan搜索引擎的主要对象
- Shodan搜索引擎的原理
- Shodan的优缺点
- Shodan的功能
- 如何安装Shodan?
- Shodan的常用命令
- 6.1 搜索命令
- 6.2 Msfconsole简易使用
- 6.3 搜索特定网页信息
- 6.4 弱口令设备搜索
- 6.5 扫描特定网段
- 常见数据库及端口
- 下载与解析命令
- 常用查询命令
- 中间件和系统信息查询
- 结语
1. Shodan搜索引擎的主要对象
Shodan搜索引擎的主要对象是各种联网设备,包含但不限于:
- 手机
- 电脑
- 摄像头
- 路由器
- 服务器等
这些设备都有一个IP地址,并且通过Shodan可以进行扫描和查询。
2. Shodan搜索引擎的原理
Shodan通过以下方式工作:
- 使用各种扫描器对IP地址进行24小时不间断批量扫描,涵盖漏扫、硬件扫、目录扫等。
- 根据地区的不同,IP扫描的范围也会有所不同(例如:中国、北美、南美等)。
3. Shodan的优缺点
优点:
- 不够实时,但速度快速且便捷。
缺点:
- 数据更新不够即时,可能存在延迟。
4. Shodan的功能
Shodan具有以下功能:
- 监控IP地址
- 漏洞扫描并返回结果
- 调用API接口等
5. 如何安装Shodan?
按照以下步骤安装Shodan:
- 克隆Shodan Python库:
git clone https://github/achillean/shodan-python.git
- 进入
shodan-python
目录:cd shodan-python
- 安装:
python setup.py install
- 初始化Shodan并输入API密钥(在Shodan官网注册后可获得API密钥):
shodan init api_key
6. Shodan的常用命令
6.1 搜索命令
-
随机查找日本地区的IP:
shodan search --limit 10 country:jp
-
筛选信息(例如:筛出IP和危险端口3389):
shodan search --limit 10 --fields ip_str port:3389 country:jp
- 查找存在漏洞的IP:
shodan search has_vuln:true --limit 10 country:jp
- 查找特定指纹漏洞(例如:绕过高级会员搜索远程桌面漏洞):
shodan search --limit 10 --fields ip_str,port '"/x03/x00/x00/x0b/x06/xd0/x00/x00/x124/x00"'
6.2 Msfconsole简易使用
- 搜索:
Search 0708
- 使用脚本:
USE脚本使用
- 命令:
Show options/show targets
Set rhosts file:/check //文件直接拖入终端执行
6.3 搜索特定网页信息
后台网页HTML查询(例如:查找中国地区带有登录页的IP):
shodan search --limit 10 --fields ip_str,port country:cn http.html:login
查找历史被黑入的网站:
shodan search --limit 10 --fields ip_str,port http.title:hacked by
查找某某后台或者系统:
shodan search --limit 10 --fields ip_str,port http.title:管理系统
查找某某登录页面:
shodan search --limit 10 --fields ip_str,port country:cn http.html:"某某防火墙系统登录"
shodan search --limit 10 --fields ip_str,port country:cn http.html:login
6.4 弱口令设备搜索
-查找思科设备的弱口令并使用Finalshell尝试链接:
shodan search --limit 10 --fields ip_str,port "cisco -authorised port:23" country:jp
6.5 扫描特定网段
广域资产搜索(例如:美国国家安全局的一个网段):
shodan search --limit 10 --fields ip_str,port net:208.88.84.0/24
组织IP搜索(例如:NASA组织):
shodan search --limit 10 --fields ip_str,port org:nsa has_vuln:true
-已安装Waf安全狗的网站ip搜索::
shodan search --limit 10 --fields ip_str,port country:jp http.waf:safedog
Mongodb未授权登录:
shodan search --limit 10 --fields ip_str "Mongodb server information -authentcation" port:27017 country:jp
Vnc空密码(远程链接)行为:
shodan search --limit 30 --fields ip_str "authentication disabled" port:5900
Jenkins组件:
- 这个组件有什么用?: Jenkins可以用于自动化渗透测试过程中的一些任务,通过编写任务,可以定期对目标系统进行安全测试,提高测试效率和覆盖范围任务:漏洞扫描、安全测试等
- **搜索组件的作用是什么?:**借助组件可以利用这个组件的漏洞间接进入其他人的服务器或者设备
- 组件搜索命令:
shodan search --limit 10 --fields ip_str,port country:jp "X-Jenkins" OR "Set-cookie:JSESSIONID" http.title:"Dashboard" has_vuln:True
- X-Jenkins" OR “Set-cookie:JSESSIONID”:表示搜索结果中要包含X-Jenkins或者Set-cookie的值都包含JSESSIONID
- http.title:“Dashboard”: 表示Http响应的标题中包含Dashboard字符串
7. 常见数据库及端口
- MySQL: 3306端口
- Oracle: 1521端口
- SQL Server: 1433端口
- Redis: 6379端口
- MongoDB: 27017端口
- PostgreSQL: 5432端口
8. 下载与解析命令
- 下载漏洞信息:
shodan download 0708 --limit 10 '"/x03/x00/x00/x0b/x06/xd0/x00/x00/x124/x00"'
- 解析下载后的信息:
shodan parse --fields ip_str
9. 常用查询命令
- 统计搜索结果:
shodan count xxx
- 查找IP的历史数据:
shodan host 某某ip --history
- 查看每个月允许查询次数:
shodan info
- 域名信息查询:
shodan domain 某某域名
- 实时查询某Ip的现状:
shodan scan submit 1.1.1.1(单个ip扫描)
Shodan scan submit 192.168.1.1,192.168.1.2,192.168.1.3(多Ip扫描)
shodan scan submit 192.168.1.0/24(网段扫描)
Shodan scan list(扫描历史)
10. 中间件和系统信息查询
- 查找Apache服务器:
shodan search --limit 10 --fields ip_str,port product:Apache httpd
- 查找Tencent Cloud资源:
shodan search --limit 10 --fields ip_str,port org:Tencent Cloud
常用端口和协议
使用实例
- MySQL:
3306
常见端口列表
端口号 | 协议 | 功能描述 |
---|---|---|
80 | HTTP | 网页浏览 |
443 | HTTPS | 安全网页浏览 |
21 | FTP | 文件传输 |
22 | SSH | 安全远程登录 |
25 | SMTP | 发送邮件 |
110 | POP3 | 接受邮件 |
143 | IMAP | 接受邮件 |
53 | DNS | 域名解析 |
3306 | MySQL | 数据库服务器默认端口 |
5432 | PostgreSQL | 数据库服务器默认端口 |
3389 | RDP | 远程连接 Windows |
69 | TFTP | 文件传输 |
137-139 | NetBIOS | 文件打印和共享 |
67-68 | DHCP | 动态分配 IP |
为什么要了解这些查询语法?
通过组合地区、漏洞、版本、IP、计数等参数,结合端口(port)与对应服务,能够实现限定条件查询的目的。
组合查询示例
- 获取与腾讯云相关的远程桌面协议
shodan search --limit 10 --fields ip_str,port org:"Tencent cloud" port:3389
官网搜索
- 查找可能存在截图泄露的重要信息的设备:
has_screenshot:true cisco
谷歌搜索引擎语法补充
- 管理后台入口查询:
inurl:admin
- 登录页面查询:
inurl:login
- 可能存在 SQL 注入漏洞的页面查询:
- PHP 页面:
inurl:php?id=
- ASP 页面:
inurl:asp?id=
- JSP 页面:
inurl:jsp?id=
- PHP 页面:
- 特定格式文件查询:
- PDF 文件:
filetype:pdf
- Word 文档:
filetype:doc
- Excel 表格:
filetype:xls
- PDF 文件:
- 标题中包含关键词的网页查询:
- 后台管理页面:
intitle:后台管理
- 登录页面:
intitle:登录页面
- 后台管理页面:
- 特定网站类型查询:
- 教育机构网站中的论坛页面:
site:edu inurl:forum
- 政府网站中可能存在文件上传漏洞的页面:
site:gov inurl:upload
- 非营利组织网站中可能泄露密码信息的页面:
site: inurl:password
- 商业网站中的 phpMyAdmin 管理页面:
site: inurl:phpmyadmin
- 域名中的备份文件:
site: inurl:backup
- 特定公司网站中包含“confidential”(机密)的页面:
site:company inurl:confidential
- 特定域名中上传文件的目录:
site:domain inurl:uploads
- 教育机构网站中特定关键词的 PPT 文件:
site:edu filetype:ppt 关键词
- 教育机构网站中的论坛页面:
FOFA/鹰图 搜索语法补充
- 教育系统查询:
"系统" && org="China Education and Research Network Center"
- 1day 查询:
title="移动管理平台-企业管理" && country="CN"
- 教育机构注册接口查询:
host="某某edu" && "注册" && country="CN"
- 教育机构登录页面查询:
status_code="200" && host="edu" && body="用户名"
- 摄像头漏洞查询:
body="Hikvision Digital Technology Co" && country="JP" icon_hash="-596308075" && country="CN"
其他补充参数信息
- 操作系统:
OS:Windows7,8,10 \ Linux \ Mac
- 漏洞:
has_vuln:true
- 摄像头设备:
device:webcam
- 路由器设备:
device:router
- 部分 web 端设备:
tp-link
- 截图功能已开启的设备:
has_screenshot:true cisco
- Shodan官网功能
- 实时监控资产是否存在漏洞:
- 使用
Alert
命令或者官网可视化功能进行监控。 - 示例:
shodan alert -h
- 使用
官网可视化监控
11. 结语
经过这一系列的学习和探索,相信大家已经对Shodan的功能和应用有了深刻的理解。Shodan不仅仅是一个“搜索引擎”,更是一个面向物联网、网络安全的强大工具,让我们能够探索并分析互联网的“暗角”,甚至发现平时难以察觉的网络威胁和脆弱性。无论是研究安全漏洞、监控网络资产,还是分析全球互联网设备的分布,Shodan都为安全研究人员和技术爱好者提供了宝贵的数据支持和洞察能力。
在使用Shodan的过程中,我们不仅掌握了基础查询、过滤条件、API接口的应用,还学会了如何在实际场景中利用Shodan来发现潜在的安全问题。在未来的实践中,我们可以将Shodan作为日常信息安全工作的一部分,为我们的网络防御提供情报支持,及时识别风险,预防安全事件的发生。
但是,学习Shodan只是网络安全领域的一个起点。信息安全涉及的知识广泛而深厚,还包括漏洞扫描、渗透测试、逆向工程等诸多方面。因此,强烈建议大家在掌握Shodan的同时,进一步拓展自己的安全知识体系。多了解安全领域的最新动态,不断更新技术,才能在这个快速变化的行业中保持竞争力。
希望这篇Shodan学习笔记能够帮助到大家。如果你觉得有所收获,欢迎点赞、评论并分享给更多志同道合的朋友。如果在使用Shodan的过程中遇到任何问题,也可以在评论区留言交流,我们共同进步。安全之路漫长而艰辛,但也充满了无限的可能性。让我们携手并肩,共同探索网络安全的世界!