shodan搜索引擎——土豆片的网安之路

时间:2024-10-27 15:17:23

工作原理:

在服务器上部署了各种扫描器,如漏洞扫描器,硬件扫描器,目录扫描器等等,24小时不停的扫描,批量对IP地址扫描

优点:方便,很快得到最新扫描结果,漏洞信息

缺点:不够实时(可能扫到的信息是三个月之前的),24小时扫,浪费资源,收费

功能:在线查询,和离线的客户端,monitor(监控)一些IP地址,漏洞bug,然后保存,通过api接口调用,主要用于信息收集这个东西老找到有问题的点位

Shodan搜索引擎概述

Shodan搜索引擎是一个专门用于搜索互联网上连接的设备和服务的工具。它由约翰·马瑟利(John Matherly)在2009年开发,与传统的搜索引擎不同,Shodan索引的是服务器发送回客户端的元数据,而不是网页内容。这意味着它可以揭示哪些设备连接到互联网,它们的位置,以及它们正在运行的服务和软件。Shodan常被描述为“黑客的搜索引擎”,因为它能够暴露潜在的安全漏洞和未受保护的设备。

Shodan的主要用途

Shodan的主要用途包括:

  1. 设备发现:可以搜索特定类型的设备,如网络摄像头、路由器、工业控制系统等。
  2. 漏洞发现:帮助安全研究人员和渗透测试人员发现潜在的安全漏洞。
  3. 地理定位:可以通过城市、国家或IP地址来定位设备。
  4. 端口扫描:可以搜索特定端口开放的设备,如VPN端口(1723)或远程桌面协议端口(3389)。

Shodan的使用方法

使用Shodan进行搜索通常涉及到使用一系列字符串格式的过滤器。例如,可以使用city:、port:、os:等参数来限制搜索结果。Shodan还提供了API接口,允许用户通过编程方式访问其搜索功能。此外,Shodan可以与其他工具如Maltego和Metasploit结合使用,以增强其功能

Shodan与其他搜索引擎的区别

Shodan与Google等传统搜索引擎的主要区别在于,Google的爬虫抓取网页内容并为其创建索引,而Shodan则主要寻找端口并抓取拦截到的信息,然后为这些信息建立索引。因此,Shodan是一个基于拦截器的搜索引擎,专注于设备和服务的信息,而不是网页内容2

Shodan的安全影响

虽然Shodan可以作为一个强大的工具来发现和分析互联网上的设备,但它也可能被恶意用户利用来发现和攻击未受保护的系统。因此,了解如何使用Shodan以及如何保护自己的设备免受其影响是非常重要的

结论

总的来说,Shodan是一个功能强大的搜索引擎,它提供了对互联网上连接设备的深入了解。然而,它的使用应当谨慎,以免无意中暴露或成为安全威胁的目标。对于网络安全专业人士来说,掌握Shodan的使用方法是提高技能的重要一步。

Shodan扫描原理

Shodan搜索引擎的工作原理主要是通过扫描互联网上的设备,并抓取解析这些设备返回的banner信息。Banner信息通常包含了设备的类型、操作系统、开放的服务等重要信息。以下是Shodan扫描原理的详细解释:

设备扫描

Shodan通过扫描全网设备来收集数据。这个过程涉及到了解网络中各种设备的分布情况,包括哪些Web服务器是最受欢迎的,或是网络中到底存在多少可匿名登录的FTP服务器等。Shodan的扫描范围非常广泛,它可以搜索到各种类型的设备,如网络摄像头、路由器、工业控制系统等

Banner信息抓取与解析

当Shodan扫描到一个设备时,它会尝试与该设备建立连接,并请求其banner信息。Banner信息是设备在响应连接请求时发送的一段文本,通常包含了设备的类型、版本号、操作系统等信息。Shodan通过解析这些banner信息,可以获取到关于设备的各种细节。

数据索引与搜索

Shodan将抓取到的设备信息进行索引,以便用户可以通过关键词进行搜索。用户可以使用各种过滤器来限制搜索结果,例如通过城市、国家、IP地址、端口、操作系统等参数来查找特定的设备。这种索引和搜索机制使得Shodan成为一个强大的工具,可以帮助用户快速找到他们感兴趣的在线设备。

安全性考虑

尽管Shodan提供了一个方便的方式来发现和分析互联网上的设备,但它也可能被恶意用户利用来发现和攻击未受保护的系统。因此,在使用Shodan时,用户需要注意隐私和安全问题,避免泄露敏感信息或成为攻击目标12

kali安装shodan过程(kali-linux好像自带了)

解决无法访问下载github的资源

无法访问GitHub,原因以及快速解决办法_github无法访问-****博客

克隆shodan

git clone GitHub - achillean/shodan-python: The official Python library for Shodan

切换到shodan-python

cd shodan-python

安装

python setup.py install

初始化shodan

shodan init api_key

查看使用帮助文档

shodan -h

国家代码:

中国:cn,日本jp,韩国kr

世界各国和地区名称代码表 - MBA智库百科

host/search参数用法

shodan search --limit 10 --fields ip_str,port country:jp  (fields是对信息做筛选)

  • “--limit 10”表示限制查询结果为10条。
  • “--fields ip_str,port”表示只显示查询结果中的IP地址(ip_str)和端口(port)这两个字段的信息。
  • “country:jp”表示搜索位于日本(Japan)的设备。

shodan search --color --limit 10 --fields ip_str port:3389 country:cn city:shenzhen

  • “--color”可能是用于给搜索结果添加颜色(不过搜索结果未明确提及此参数的具体效果,可能是命令行界面的显示效果相关)。
  • 同样“--limit 10”限制结果为10条。
  • “--fields ip_str”表示只显示IP地址(ip_str)字段信息。
  • “port:3389”表示搜索设备的3389端口(3389端口常用于远程桌面服务)。
  • “country:cn city:shenzhen”表示在中国(China)深圳市的设备。

参数信息:

--limit 10 显示信息数量

--fields ip_str,port 过滤IP信息

--color 深色表示

country:国家

city:城市

3389端口:微软远程桌面

os:windows7操作系统

has_vuln:true 漏洞

device:webcam设备:摄像头

device:router设备:路由器

tp-link web端的一些设备

三、搜索语法

  • 限定国家和城市
    限定国家 country:"CN"
    限定城市 city:"ShangHai"
  • 限度主机名或域名

host:.edu

hostname:”hubstc”

hostname:hubstc.com

  • 限定组织或机构

org:”alibaba”

  • 限定系统 OS 版本
    os:"Windows Server 2008 R2"
    os:"Linux 2.6.x"
  • 限定端口

port:22

port:80

  • 指定网段
    net:"59.56.19.0/24"
  • 指定使用的软件或产品

product:”Apache httpd”

product:”nginx”

product:”Microsoft IIS httpd”

product:”mysql”

  • 指定 CVE 漏洞编号
    vuln:"CVE-2014-0723"
  • 指定网页内容

http.html:“hello world“

  • 指定网页标题

http.title:”hello”

  • 指定返回响应码

http.status:200

  • 指定地理位置

geo:"31.25,121.44"

  • 指定 ISP 供应商

isp:"China Telecom"

  • 指定协议及其漏洞

ssl:"heartbleed"

  • 指定 ASN 自治系统号

asn:"AS4134"

  • 指定历史数据

timestamp:"2022-01-01"

补充内容:3389端口的网络安全问题

3389端口作为Windows远程桌面协议(RDP)的默认端口,虽然为用户提供了一种便捷的远程管理和控制计算机的方式,但同时也带来了一些潜在的网络安全风险和问题。

未经授权的访问

如果3389端口没有进行适当的保护,攻击者可能会尝试使用暴力破解、字典攻击或已知漏洞来获取远程桌面的访问权限。一旦获得访问权,就可以控制整台计算机,进而访问敏感数据、安装恶意软件或进行其他非法活动。

数据泄露

远程桌面会话中的数据传输,如果未加密,可能会被中间人攻击者截获,导致敏感信息泄露。这不仅会对个人隐私造成威胁,也可能对企业造成严重的经济损失。

恶意软件感染

攻击者可能会通过远程桌面会话上传恶意文件,并在目标计算机上执行,从而感染整个系统。这可能导致系统崩溃、数据丢失或其他严重的安全问题。

性能影响

如果大量用户同时通过3389端口进行远程连接,可能会对服务器的性能产生较大影响,导致响应速度变慢、资源占用率高等问题。这对于企业级应用来说,可能会严重影响工作效率和服务质。

管理复杂性

开启3389端口意味着需要更多的安全管理措施来确保远程连接的安全性。这包括设置强密码、限制访问权限、定期更新补丁等,增加了管理的复杂性和成本。对于IT管理人员来说,这无疑增加了额外的工作负。

封禁必要性

鉴于3389端口存在的安全风险和问题,封禁危险端口成为了保障系统安全的重要措施之一。通过封禁危险端口,可以限制未经授权的远程访问,降低系统被攻击的风险。同时,封禁不必要的端口还可以减少潜在的安全漏洞和攻击面,提高系统的整体安全性。

3389端口存在的CVE漏洞:

CVE-2019-0708

这是一个影响广泛的Windows RDP漏洞,影响的系统包括Windows 2003、2008、2008 R2、XP及Win7。该漏洞允许攻击者通过远程桌面端口3389,利用RDP协议进行攻击,可能导致系统蓝屏。建议的修复措施包括打补丁、关闭3389端口或启用NLA。

MS12-020

这个漏洞可导致服务器重启或蓝屏,影响范围从XP到2003、2008、Win7等多个版本。这个漏洞的存在使得许多系统容易受到攻击,因此强烈建议用户及时打上补丁。

CVE-2016-2183

这是一个SSL/TLS协议信息泄露漏洞,虽然不是直接针对3389端口,但与通过该端口进行的SSL通信有关。这个漏洞可能被攻击者利用来获取敏感信息,建议避免使用DES算法来加强安全性。