shodan 简单使用教程

article/2025/9/25 6:51:11

shodan使用指南

查询

  • 基础查询:

    语法

    type:xxx
    

    注意:冒号左右没有空格

    搜索指定的主机或域名:

    hostname:"google"
    

    搜索指定的端口或服务(数字可以不用双引号包裹):

    port:21
    

    搜索指定的国家:

    country:"CN"
    

    搜索指定的城市:

    city:"Hefei"
    

    搜索指定的组织或公司:

    org:"google"
    

    搜索指定的ISP供应商:

    isp:"China Telecom"
    

    搜索指定的操作系统/软件/平台:

    product:"Apache httpd"
    

    搜索指定的软件版本:

    version:"1.6.2"
    

    搜索指定的地理位置,参数为经纬度:

    geo:"31.8639, 117.2808"
    

    搜索指定收录时间前后的数据before/after,格式为dd-mm-yy:

    before:"11-11-15"
    

    搜索指定的IP地址或子网:

    net:"210.45.240.0/24"
    

    搜索有shodan结果状态:

    status:200
    
  • 并集查询(A & B):

    语法

    type1:xxx type2:xxx
    

    用空格将两个查询条件隔开就可以了


    搜索指定主机为Google并且端口为80:

    hostname:'google' port:80
    
  • 差集查询(A - B):

    语法

    type1:xxx -type2:xxx
    

    用空格将两个查询条件隔开就可以了


    搜索指定主机为Google并且端口不为80:

    hostname:'google' -port:80
    

    注意:port前有个 -,代表减去

查询结果获取

1. 点击页面上的 Download Results 按钮下载

在这里插入图片描述

2. 使用 shaodan 官方提供 shodan 下载数据

下载速度比较慢,且数据始终会少于查询结果数据,偶尔会中断

1、 安装 shodan (请先安装python和pip)

pip install shodan

2、 初始化工具

shodan init [API Key]

提示: 登录 shodan 后在网站获取这个 API Key

3、 查询数据的结果数量

shodan count "查询条件"

例如查询主机为google的数据:

shodan count hostname:'google'

例如查询主机为google并且端口为80的数据:

shodan count "hostname:'google' port:80"

注意: 这里的查询条件的引号格式不要弄错了

4、 下载查询结果数据

  • 语法:
shodan download [保存文件名] "查询条件" [--limit n](条数限制)

说明: 如果不给保存文件名,则会以query为文件名保存。
如果不限制条数,则会默认为1000。
查询条件格式与上面查询数量的查询条件格式一致。

例如下载100条主机为Google并且端口不为80的数据并保存为google:

shodan download google "hostname:'google' -port:80" --limit 100

下载的数据每行为一个json

5、 可以直接使用shodan对数据进行分析(也可以不下载直接分析)

  • 提取下载数据中的ip和端口

    shodan parse --fields ip_str,port --separator , google.json.gz
    
  • 直接提取查询数据中的ip和端口

    shodan search --fields ip_str,port "查询条件" 
    

3. 使用代码下载数据

数据可能有重复,故下载是数量多于查询出来的结果数量(主要是会多用积分,费钱)

这里使用python语言,使用其他语言请自行查看官方文档

1、 按照第二种方式所述安装shodan
2、 代码示例:

import shodan
SHODAN_API_KEY = "API Key"
api = shodan.Shodan(SHODAN_API_KEY)
results = api.search(query, facets=page, limit=5, minify=True)
doing...

search函数参数说明:

  • query ( str ) – 搜索查询;与网站相同的语法
  • page ( int ) –(可选)搜索结果的页码
  • lint ( int )–(可选)要返回的结果数
  • offset ( int )–(可选)搜索偏移量以开始从中获取结果
  • facets ( str ) –(可选)用于获取摘要信息的属性列表
  • minify ( bool ) –(可选)是否缩小横幅并只返回重要数据

更多查询请查看官方文档 https://shodan.readthedocs.io/en/latest/api.html


http://chatgpt.dhexx.cn/article/7pEkqSY3.shtml

相关文章

shodan基础用法

基本用法 Shodan有一些基础用法,首先来了解第一个用于寻找位于指定城市的设备 iis city:Beijing 用Shodan搜索我们会发现内容是来自全球的,如果我们想要指定国家的话则可以用这个 iis country: China 也可以指定端口进行搜索 https port: 80 寻找特定…

Shodan在渗透测试及漏洞挖掘中的一些用法

渗透测试中,第一阶段就是信息搜集,这一阶段完成的如何决定了你之后的进行是否顺利,是否更容易。而关于信息收集的文章网上也是有太多。今天我们来通过一些例子来讲解如何正确使用Shodan这一利器。 想要利用好这一利器,首先得知道他…

shodan的几个功能点

目录 介绍网络监控器Firefoxshodan命令行 介绍 Shodan是用于搜索连接到互联网设备的工具。与搜索引擎可以帮助你找到网站不同,Shodan可以帮助你找到有关台式机、服务器、loT设备等的信息。此信息包括元数据,例如在每个设备上运行的软件。 网络监控器 …

shodan(黑暗谷歌)信息收集

shodan介绍 与谷歌不同的是,Shodan不是在网上搜索网址,而是直接进入互联网的背后通道。Shodan可以说是一款“黑暗”谷歌,一刻不停的在寻找着所有和互联网关联的服务器、摄像头、打印机、路由器等等。每个月Shodan都会在大约5亿个服务器上日夜…

Shodan新手使用指南

什么是 Shodan? 首先,Shodan 是一个搜索引擎,但它与 Google 这种搜索网址的搜索引擎不同,Shodan 是用来搜索网络空间中在线设备的,你可以通过 Shodan 搜索指定的设备,或者搜索特定类型的设备,其…

几种古典密码

1.单表代换密码 2.多表代换密码

古典密码之乘法密码

学习目标: 熟练掌握多表古典密码简单乘法加密算法原理及实现。掌握多表古典密码简单乘法加密算法的应用。 预备知识: 乘法密码是简单代替密码的一种。 它需要预先知道消息元素的个数,加密的过程其实是相当于对明文消息所组成的数组下标进行…

古典密码及现代密码分组密码与流密码总结

古典密码及现代密码分组密码与流密码总结 古典密码大部分加密方式是利用替换式密码或移项式密码,有时是二者的混合。一般情况下,一种古典密码体制包含一个字母表,以及一个操作规则或一种操作设备,到了现代基本不可信赖。 1.凯撒…

古典密码体制

文章目录 一、置换密码1、列置换密码2、周期置换密码 二、代换密码1、单表代换密码2、多表代换密码: 一、置换密码 置换密码门又称换位密码,是根据一定的规律重新排列明文,以打乱明文的结构特性。 常见的置换密码有两种,一种是列…

信息安全导论 实验一 古典密码学

一、实验目的与原理 1.实现古典密码学中的移位密码算法和维吉尼亚算法。 2.了解两种算法的原理,并且编写出来。 3.使用语言为C或者Python等。 二、实验内容与记录 位移密码算法: 移位密码算法 在加密的时候需要注意大小写的转换,这个可…

古典密码之维吉尼亚密码实验

学习目标: 维吉尼亚密码是古典密码中非常具有代表的例子。本实验要求用高级语言编写和调试一个简单的维吉尼亚密码实现及解密程序,通过本实验可以加深理解维吉尼亚密码原理。 预备知识: 人们在单一恺撒密码的基础上扩展出多表密码&#xff…

【密码学算法实现】古典密码

文章目录 2.1 代替技术2.1.1 仿射密码2.1.2 单表代替密码2.1.3 Hill密码Hill密码的已知明文攻击 2.1.4 Vigenere密码 2.2 置换技术2.2.1 栅栏密码2.2.2 矩阵密码 作为较为朴素的密码体系,古典密码通常都是对称的。如下图所示,对称密码通常是加密方与解密…

密码学-古典密码学习笔记

文章目录 参考资料替代技术单字母表替代密码凯撒密码移位密码仿射密码针对单字母表替代密码的攻击 多字母表替代密码Vigenere密码Hill密码(希尔密码) 置换技术置换密码的定义案例 本文作为一篇学习笔记,在图片和文字上大量参考了各种密码学书籍,并添加了…

古典密码算法实验c语言,古典密码实验报告.doc

古典密码实验报告.doc 哈尔滨工程大学实验报告实验名称古典密码算法班级学号姓名实验时间2014年4月成绩指导教师实验室名称哈尔滨工程大学实验室与资产管理处制一、实验名称古典密码算法2、实验目的通过编程实现经典的代替密码算法和置换密码,包括移位密码、维吉尼…

古典密码学学习笔记

1.历史 古典密码阶段:1949年以前 近代密码阶段:1949-1975年 现代密码阶段:1976年至今 2.加密方法 古典密码学的加密方法主要有两大类:替代和置换,或者是两者的结合 3.基本密码 1.键盘布局加密 这是一种比较简单也…

古典密码

古典密码将明文的每一个字母代换为字母表中的另一个字母,代换前现将明文字母用等价的十进制数字代替,使用十进制进行运算。 字母abcdefghijklm数字0123456789101112 字母nopqrstuvwxyz数字13141516171819202122232425 根据代换是对每个字母逐个进行还是…

初学古典密码

古典密码 目录 古典密码 Wiki篇 二,凯撒密码Caesar: 三,移位密码 四,Atbash Cipher(埃特巴什码): 五,简单替换密码 六,仿射密码(affine cipher) 多表…

简单古典密码

1. 简单移位密码 m "{easy_easy_crypto}" k 3124 明文所在位置1234密文所在位置3124 flag{easy_easy_crypto}lafgea{s_eyay_scyprt}o 攻击方法:肉眼识别/爆破秘钥/根据flag字符串逆推 2. 曲路密码 明文填入一个表中,并按照一定的曲路遍历攻击方法…

古典密码技术

古典密码技术 古典密码是密码学中的其中一个类型,其大部分加密方式都是利用替换式密码或移项式密码,有时则是两者的混合。其于历史中经常使用,但在现代由于计算机的出现,使得古典密码解密已经不再困难,已经很少使用&a…

古典密码简记

目录 概述 传统隐写 替换密码技术 换位密码技术: 安全性分析 概述 古典密码只是对字母进行变换,而现代密码算法是对比特流进行变换。 古典密码技术比较简单,通常 采用手工或机械操作来对明文进行加密和解密的。(例&#xf…