当前位置: 首页 > article >正文

泷羽sec学习打卡-shodan扫描1

声明
学习视频来自B站UP主 泷羽sec,如涉及侵权马上删除文章 笔记的只是方便各位师傅学习知识,以下网站只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负


关于shodan的那些事儿-1

    • 一、shodan1
      • 什么是shodan?
      • shodan有哪些功能?
      • kail安装流程
      • search参数示例:
      • host参数示例:
    • 实践是检验真理的唯一标准


一、shodan1

什么是shodan?

shodan官网
shodan 是一个知名的互联网搜索引擎,专门用于搜索网络设备、服务和开放的端口。它被广泛用于网络安全和研究领域,因为它能够提供全球范围内的网络资产信息。当然是收费哈,具体费用官网可以查看。

shodan有哪些功能?

互联网连接设备搜索
Shodan 能够搜索到各种连接到互联网的设备,包括服务器、路由器、摄像头、打印机等。
开放端口和协议:
它可以识别开放的端口以及运行在这些端口上的服务和协议,如 HTTP、HTTPS、SSH、Telnet 等。
地理定位:
Shodan 提供了基于地理位置的搜索功能,可以按国家、城市或经纬度进行搜索。
数据丰富
Shodan 的数据库包含了大量的网络资产信息,这些信息来自于其爬虫定期扫描的互联网。
实时搜索:
用户可以执行实时搜索,获取最新的网络资产数据。
API 接口:
Shodan 提供了 API 接口,允许开发者将其搜索功能集成到自己的应用和服务中。
Shodan 的用途:
网络安全审计:
网络安全专家使用 Shodan 来识别暴露在互联网上的敏感资产,进行安全审计和漏洞扫描。
威胁情报:
通过 Shodan 收集的信息,可以用于威胁情报分析,识别潜在的安全威胁。
研究和教育:
研究人员和学生可以使用 Shodan 来研究互联网的架构和网络安全趋势。
合规性和政策评估:
企业可以使用 Shodan 来确保他们的资产符合特定的合规性和安全政策。
物联网安全:
随着物联网设备的增加,Shodan 被用来评估这些设备的安全性和隐私问题。
网络测绘:
Shodan 可以用来绘制互联网的地图,了解不同服务和设备的分布情况。
那么有什么缺点呢?唯一的缺点可能就是不够实时性,毕竟shodan是一直在24小时扫描的,但是这不太好说,大部分情况下西信息搜索都挺准确的。其次使用shodan测试容易测出错,尤其是参数命令需要十分谨慎的使用。道德第一。
然后shodan是有gui界面的,当然一般在kail中我们都是使用的terminal形式的

kail安装流程

1、克隆shodan

git clone https://github.com/achillean/shodan-python.git

2、切换到shodan-python文件夹中

cd shodan-python

3、安装shodan

python setup.py install

4、初始化shodan

shodan init api key
#这里的key需要购买后在官网中的account中进行查看才行,毕竟是收费软件,而且无法破解

6、查看帮助文档

shodan -h

这些都是基础命令就不再演示了,后续命令主要还是记笔记,一般不会截图。理解命令即可
现在我们就先熟悉下search参数和host参数,这两个参数已经足够寻找到部分洞洞

search参数示例:

shodan search --limit 10 country:jp

这条命令是什么意思呢?功能:搜索属于jp的10条ip

shodan search --limit 10 --fields ip,port 80 country:jp

这条命令是什么意思呢?功能:搜索属于jp的10条端口号为80的ip
以上命令有个缺点,就是返回的都是整数形式的ip地址,但是一般人们都习惯使用十进制数字表示ip,那么我们就可以加入ip_str参数转换成ipv4显示形式

shodan search --limit 10 --fields ip_str,port 80 country:jp

这条命令是什么意思呢?功能:**搜索属于jp的10条端口号为80的ip,并且返回的ip以ipv4形式展示

shodan search --color --limit 10 --fields ip_str port:3389 country:jp city:tokyo

这条命令是什么意思呢?功能:**搜索属于jp且城市为tokyo的10条端口号为3389的ip,并且返回的ip以ipv4形式展示

shodan search --color --limit 10 --fields ip_str,port:3389 country:jp city:Nagoya

这条命令是什么意思呢?功能:**搜索属于jp且城市为Nagoya的10条端口号为3389的ip,并且返回的ip以ipv4形式展示
**这里相信大家肯定有疑问对吧?为什么ip_ste 和port有时候用半角逗号隔开,有时候不隔开呢?**其次是很有区别的
有逗号的如下:
shodan search --color --limit 10 --fields ip_str,port "country:jp city:Nagoya port:3389",这才是正确的搜索,逗号主要是用来区分字段,如果有多个字段的时候需要逗号隔开,具体多看文档和问gpt
那么不用逗号的是什么情况呢?
在Shodan命令行工具中,使用–fields选项来指定要显示的字段时,字段之间可以用逗号,分隔,也可以不用逗号分隔,这取决于Shodan CLI工具的版本和具体实现。在某些版本的Shodan CLI中,字段之间可以不用逗号分隔,Shodan依然能够正确解析字段。例如:shodan search --limit 10 --fields ip_str port "country:jp city:Nagoya port:3389"这个命令中,ip_str和port之间没有用逗号隔开,但是Shodan CLI依然能够识别这两个字段,因为它们是由空格分隔的。这表明在该版本的Shodan CLI中,字段名之间可以通过空格来分隔,而不一定需要逗号
。因此,即使没有使用逗号分隔,命令依然可以成功执行。

shodan search --limit 10 --fields ip_str,port "country:jp city:Nagoya port:2289 os:windows7"

这条命令是什么意思呢?功能:搜索属于jp且城市为Nagoya的10条端口号为3389且操作系统未windows7的ip地址,并且返回的ip以ipv4形式展示以及展示端口号
关于逗号的问题:
所以这里不是纠结逗号的问题,--fields是个过滤器的作用,后面的字段都是需要过滤的字段,这里的ip_str,port本质就是过滤显示字段,而引号中的就是过滤的条件。故不需要纠结是否有逗号,但是标准的用法是用逗号分隔字段的。

host参数示例:

shodan host xxx.xxx.xxx.xxx(ip地址)

这条命令是什么意思呢?功能:搜索xxxip地址的详细信息
那么一般会返回什么信息呢?
地理位置信息:包括gj、city和经纬度等。
开放端口和服务:例如HTTP、FTP、SSH等开放的端口和服务。
服务的Banner信息:这可能包含服务的版本信息。
可能存在的漏洞信息:例如CVE编号。
组织信息:如ISP(互联网服务提供商)或组织名称。
端口:3389,这个端口的背景有什么?3389端口可能存在什么洞洞?
这个嘛,自行百度了解,这个端口很重要,3389的洞洞都是超高危的洞洞。
has_vuln:True
这个参数为true则开启扫描洞洞,false则关闭扫描洞洞
当然这个是需要shodan高级会员才有的权限功能。
但是我们可以去cve官方查找cve的十六进制特征码,然后转换成十进制即可进行查找。

shodan search has_vuln:True --limit 10 --fidleds ip_str port:3389 country:jp city:Nagoya 

这条命令是什么意思呢?功能:搜索属于jp且城市为Nagoya的10条端口号为3389且操作系统为windows7的ip地址且扫描是否存在洞洞,并且返回的ip以ipv4形式展示以及展示端口号

shodan search --limit 10 --fields ip_str port:3389 country:jp city:Nagoya devicce:router

这条命令是什么意思呢?功能:搜索属于jp且城市为Nagoya且设备为路由器的10条端口号为3389的ip地址,并且返回的ip以ipv4形式展示以及展示端口号
相信看到这里,应该懂shodan的强大了吧,懂得都懂。
那么我们都写一条详细得全面得shodan命令,具体意思就留给大家,我相信大家都能看懂

shodan search --limit 10 --fields ip_str,port "port:3389 country:jp city:Nagoya device:route \"\\x03\\x00\\x00\\x0b\\x06\\xd0\\x00\\x00\\x124\\x00\""

shodan search:这是Shodan的搜索命令。
–limit 10:限制搜索结果的数量为10条。
–fields ip_str,port:指定返回的字段,这里返回IP地址(ip_str)和端口(port)。
"port:3389 country:jp city:Nagoya device:route “\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00"”:搜索开启3389端口,位于日本名古屋,设备类型为路由器,并且响应包中包含CVE-2019-0708漏洞特征字符串的设备。

好好好,shodan真强大,请做一个好人好吧,只是学习,别搭进去,又到了该说不说的时候了

实践是检验真理的唯一标准


http://www.kler.cn/a/383403.html

相关文章:

  • CAS 详解
  • 【Spring】——SpringBoot项目创建
  • 【案例分享】借助 iSpring,创造客户真正欣赏的专业在线培训体验
  • 2-2.STM32之定时器TIM---输入捕获--实验2( PWMI模式测频率占空比)
  • 【无标题】123
  • QML —— QML调用C++两种方法(附完整测试源码)
  • 【短视频矩阵系统开发指南与源码构建技术分享】
  • Django命令行操作用户(manage.py工具)
  • Golang--面向对象
  • 智能指针std::shared_ptr
  • 音频怎么转换成二维码?扫码播放音频的制作方法
  • 《XGBoost算法的原理推导》12-7损失函数经验损失项二阶泰勒展开式 公式解析
  • 归并排序:高效算法的深度解析
  • 大模型LLama3!!!Ollama下载、部署和应用(保姆级详细教程)
  • K8s小白入门
  • 【C++笔记】模版的特化及其编译分离
  • 6.qsqlquerymodel源码分析
  • Java Agent使用、用途和优势
  • 第十九周机器学习笔记:GAN的数学理论知识与实际应用的操作
  • URL上的参数获取
  • C++之多态(3)
  • 鸿蒙next打包流程
  • 提升网站流量的有效网页优化方法指南
  • 力扣1 两数之和
  • 栈和队列相关题 , 用队列实现栈, 用栈实现队列 ,设计循环队列 C/C++双版本
  • C#字符串的不可变性:内存管理与线程安全的优势分析