[渗透测试]热门搜索引擎推荐— — shodan篇
[渗透测试]热门搜索引擎推荐— — shodan篇
免责声明:本文仅用于分享渗透测试工具,大家使用时,一定需要遵守相关法律法规。
- 除了shodan,还有很多其他热门的,比如:fofa、奇安信的鹰图、钟馗之眼等,这里就不一一介绍了,感兴趣的同学可以下来自行了解~
1. 介绍
Shodan 是一个网络搜索引擎,它与一般的搜索引擎有所不同,主要侧重于搜索互联网上连接的设备、服务和网络。以下是 Shodan 的一些详细特点和用途:
- 设备搜索:Shodan 允许用户通过关键字、IP地址、端口号等搜索连接到互联网的设备。这包括摄像头、路由器、工控系统、服务器等各种设备。
- 服务搜索:用户可以搜索特定的网络服务,例如开放的FTP、SSH、HTTP等端口。通过这种方式,用户可以查看连接到这些服务的设备,了解设备所提供的服务类型。
- 漏洞扫描:Shodan 提供漏洞扫描服务,用户可以使用该服务检查设备和服务是否存在已知的安全漏洞。这对于进行漏洞评估和安全审计非常有用。
- 可视化工具:Shodan 提供交互式的地图和图形工具,使用户能够以可视化方式探索互联网上的设备分布、服务分布和漏洞情况。
- 历史数据: 用户可以查看设备和服务的历史数据,了解它们随时间的变化。这有助于追溯特定设备或服务的演变和安全状态。
- API 支持: Shodan 提供 API,允许用户通过编程方式进行搜索和获取数据。这使得用户能够自动化他们的工作流程,并集成 Shodan 数据到他们的安全工具中。
- 监视和提醒: 用户可以设置监视规则,以便在发现满足特定条件的设备或服务时收到提醒。这有助于及时发现网络中的变化和潜在威胁。
Shodan 主要服务于安全专业人员、网络管理员和研究人员,用于进行网络安全评估、威胁情报收集以及漏洞研究。使用 Shodan 需要合法合规,严格遵循其使用条款。
2. 使用
- 进入官网:https://www.shodan.io/
- 搜索框输入内容,并点击搜索
- 查看搜索结果列表
左侧展示国家及IP地址等,右侧展示服务器响应内容
shodan原理:像一个“侦察兵”,不停地在全球范围内扫描、检查所有连接到互联网的设备。它通过发送特定的请求(类似访问一个网页的过程),但不同的是,它并不是查看网页内容,而是查看设备的响应。例如,当你访问一个网站时,浏览器会向网站的服务器发送请求,服务器返回网页内容。Shodan 也发送类似的请求,但它是去检查设备的“服务”是否正常,并且收集关于设备的信息(比如设备的类型、软件版本、是否有安全问题等)。
4. 点击左侧箭头,可直接跳转到搜索网页
5. 点击搜索结果,查看搜索详情,包含网站使用的技术、存在的漏洞、开放的端口等
shodan的搜索结果也可以进行翻页,但免费使用最多只能看两页结果,如果需要查看更多则需订阅购买:
3. 常用语法
官方教程地址:https://www.shodan.io/search/filters
3.1 指定国家/城市:country:CN/city:beijing
-
指定国家:country:“CN”
-
指定城市:city:beijing,不区分大小写
3.2 限定主机名或域名:hostname:baidu.com
hostname:.edu
hostname:“baidu”
hostname:baidu.com
3.3 限定组织或机构:org:“alibaba”
org:“alibaba”
3.4 限定服务器系统版本:os:“Linux 2.6.x”
os:“Windows Server 2008 R2”
os:“Linux 2.6.x”
3.5 限定端口/网段:port:22 / net:59.56.19.0/24
-
限定端口:
port:22
port:80 -
限定网段:
net:59.56.19.0/24 -
组合使用,探测某个网段下的端口
port:443 net:146.190.166.0/24
3.6 指定服务器使用软件:product:mysql
product:“Apache httpd”
product:“nginx”
product:“Microsoft IIS httpd”
product:“mysql”
3.7 指定 CVE 漏洞编号:vuln:CVE-2014-0723
vuln:“CVE-2014-0723”
该功能需要花钱购买订阅
3.8 指定网页内容:http.html:“hello world”
http.html:“hello world”
3.9 指定网页标题:http.title:“hello”
http.title:“hello”
3.10 指定返回响应码:http.status:200
http.status:200
3.11 指定ISP提供商:isp:“China Telecom”
isp:“China Telecom”
3.12 指定协议及其漏洞:ssl:“heartbleed”
ssl:“heartbleed”
3.13 指定 ASN自治系统号:asn:“AS4134”
ASN介绍:https://blog.browserscan.net/zh/docs/what-is-an-asn
指定自治系统号,表明指定了一个范围,例如:特定的几个市
asn:“AS4134”
3.14 多条件查询:空格隔开单条件即可
例如:查询域名为baidu.com且服务器位于上海的服务
hostname:baidu.com city:“Shanghai”
4. 实战
4.1 蜜罐:诱饵,触发后会暴露攻击者信息
①概念
蜜罐(Honeypot)是一种网络安全防护技术,指的是故意设置的伪装目标(比如服务器、设备、服务等),目的是吸引攻击者并监控他们的行为。蜜罐看起来像是一个正常的系统,但实际上它被专门设计为一个诱饵,用来:
- 记录和分析攻击者的行为。
- 收集恶意软件样本。
- 提高网络防御的效果。
蜜罐通常不会真正存储重要的数据,而是通过伪装的漏洞或服务引诱攻击者,让他们以为自己攻陷了一个目标系统。
②工作原理
设置蜜罐并不复杂,只要在外部因特网上有一台计算机运行没有打上补丁的微软Windows或者Red Hat Linux即行,然后在计算机和因特网连接之间安置一套网络监控系统,以便悄悄记录下进出计算机的所有流量。然后只要坐下来,等待攻击者自投罗网。
- 伪装为真实目标:蜜罐可以模拟网站、数据库、IoT设备、企业服务器等,模仿它们的工作状态。
- 引诱攻击者:它可能会故意暴露一些看似“存在漏洞”的端口或服务,例如开放一个旧版本的 FTP 服务。
- 记录攻击行为:一旦攻击者开始对蜜罐进行攻击,系统会记录攻击者的行为,包括攻击工具、入侵路径、执行的命令等。
- 无害化的隔离:蜜罐和真实系统隔离,攻击者实际上无法对真实环境造成任何威胁。
③蜜罐分类
- 低交互蜜罐:模拟简单的服务或端口(如伪装为开放的 SSH 或 HTTP),目标是引诱扫描器或简单的自动化攻击工具。简单且易于部署,但只能收集有限的信息。
- 高交互蜜罐:模拟一个完整的系统(如一台真实的服务器)。攻击者可以执行更复杂的操作,甚至获得“控制权”。能收集详细的攻击过程,但部署和维护复杂。
- 特定应用蜜罐:针对特定的应用程序或设备,比如物联网设备、ATM机、数据库等。用于研究针对特定领域的攻击。
④危害
对于渗透测试人员或网络攻击者而言,蜜罐是一种 反制手段,如果不小心攻击了蜜罐,可能会暴露以下信息:
- 暴露真实身份
蜜罐会记录攻击者的 IP 地址、地理位置等信息,可能会被网络管理员追踪或报警。
即使使用代理或 VPN,也可能因失误泄露真实信息。 - 暴露攻击手法
攻击者使用的工具、脚本、漏洞利用手法可能会被记录,安全研究人员可以利用这些数据加强防御。 - 浪费时间
蜜罐不包含真正有价值的数据,对蜜罐进行攻击只会浪费时间和资源。
攻击蜜罐后,可能会被标记为高风险来源,进一步攻击目标时会被防火墙拦截。 - 法律后果
蜜罐可以作为法律证据,证明有人试图入侵网络。如果攻击者被追踪到,可能面临法律责任。
对于shodan而言,它会识别出对应网址是否是蜜罐,并打上标识:
4.2 shodan入侵摄像头
-
输入内容,点击搜索,点击搜索结果查看详情
-
结果中会展示该网站所用技术、开放端口、存在的漏洞等
-
点击跳转视频监控后台
-
尝试使用弱口令爆破。主流的视频大都存在弱口令漏洞,这个JWAS的默认密码为: 无密码 || 111111 || 666666 || 888888
-
我这里直接无密码点击登录进入了后台,因为我没安装flash插件,所以看不到内容,但已经进入了监控管理后台
因此大家需要注意,拿到互联网设备时,一定要记得修改默认初始密码,否则很容易被爆破
下载flash插件后,刷新页面:
参考文章:
https://blog.csdn.net/2302_82189125/article/details/135906275
https://get-shell.com/forum-post/6493.html
https://www.shodan.io/search/filters
https://blog.browserscan.net/zh/docs/what-is-an-asn
相关文章:

[渗透测试]热门搜索引擎推荐— — shodan篇
[渗透测试]热门搜索引擎推荐— — shodan篇 免责声明:本文仅用于分享渗透测试工具,大家使用时,一定需要遵守相关法律法规。 除了shodan,还有很多其他热门的,比如:fofa、奇安信的鹰图、钟馗之眼等࿰…...
JavaScript 在 VSCode 中的优势与应用
JavaScript 在 VSCode 中的优势与应用 引言 随着前端技术的发展,JavaScript 已经成为了网页开发中最流行的编程语言之一。Visual Studio Code(简称 VSCode)作为一款轻量级、可扩展的代码编辑器,因其强大的功能和良好的用户体验,深受广大开发者的喜爱。本文将探讨 JavaSc…...
深度学习之StyleGAN算法解析
StyleGAN 算法解析及详细介绍 1. StyleGAN 算法由来 StyleGAN(Style-Based Generative Adversarial Network)是 NVIDIA 于 2018 年 提出的 高质量图像生成算法,由 Tero Karras 等人在论文 《A Style-Based Generator Architecture for Generative Adversarial Networks》 …...
数据结构之排序
排序 参考链接: https://zq99299.github.io/dsalg-tutorial/dsalg-java-hsp/07/09.html#%E7%AE%80%E5%8D%95%E4%BB%8B%E7%BB%8D 基数排序 计数排序 https://www.hello-algo.com/chapter_sorting/counting_sort/...
Vue.js 与第三方插件的集成
Vue.js 与第三方插件的集成 今天我们来聊聊如何在 Vue 项目中集成第三方插件。随着项目功能不断增多,我们常常需要引入各种第三方库和插件,比如国际化、图表、日期处理等,来提升开发效率和用户体验。下面就跟大家分享一下集成第三方插件的常…...

基于Docker搭建ES集群,并设置冷热数据节点
1.背景 存在三台服务器分别是 192.168.2.91(master节点、data-content节点、data-hot节点)、192.168.2.92(data-cold节点、ingest节点)、192.168.2.93(master节点、data-content节点、data-hot节点) 冷热数据分离搭建教程 2.搭建91节点 热数据节点 (1࿰…...
MyBatis常见知识点
#{} 和 ${} 的区别是什么? 答: ${}是 Properties 文件中的变量占位符,它可以用于标签属性值和 sql 内部,属于原样文本替换,可以替换任意内容,比如${driver}会被原样替换为com.mysql.jdbc. Driver。 一个…...

Redis --- 使用GEO实现经纬度距离计算
什么是GEO? Spring Boot 项目中可以通过 Spring Data Redis 来使用 Redis GEO 功能,主要通过 RedisTemplate 和 GeoOperations 接口来操作地理位置数据。 Service public class GeoService {Autowiredprivate RedisTemplate<String, Object> red…...
【0403】Postgres内核 检查(procArray )给定 db 是否有其他 backend process 正在运行
文章目录 1. 给定 db 是否有其他 backend 正在运行1.1 获取 allPgXact[] 索引1.1.1 MyProc 中 databaseId 初始化实现1.2 allProcs[] 中各 databaseId 判断1. 给定 db 是否有其他 backend 正在运行 CREATE DATABASE 语句创建用户指定 数据库名(database-name)时候, 会通过 …...
[数据结构] Set的使用与注意事项
目录 Set的说明 常见方法说明 注意事项 TreeSet使用案例 Set的说明 Set与Map主要的不同有两点: Set是继承自Collection的接口类,Set中只存储了Key. 常见方法说明 方法解释boolean add(E e)添加元素,但重复元素不会被添加成功void clear()清空集合boolean contains(Object…...

amis组件crud使用踩坑
crud注意 过滤条件参数同步地址栏 默认 CRUD 会将过滤条件参数同步至浏览器地址栏中,比如搜索条件、当前页数,这也做的目的是刷新页面的时候还能进入之前的分页。 但也会导致地址栏中的参数数据合并到顶层的数据链中,例如:自动…...
离线统信系统的python第三方库批量安装流程
一、关于UOS本机 操作系统:UOS(基于Debian的Linux发行版) CPU:海光x86 二、具体步骤 1、在联网的电脑上用控制台的pip命令批量下载指定版本的第三方库 方法A cd <目标位置的绝对路径> pip download -d . --platform many…...

韶音科技:消费电子行业售后服务实现数字化转型,重塑客户服务体系
韶音科技:消费电子行业售后服务实现数字化转型,重塑客户服务体系 在当今这个科技日新月异的时代,企业之间的竞争早已超越了单纯的产品质量比拼,**售后服务成为了衡量消费电子行业各品牌实力与客户满意度的关键一环。**深圳市韶音…...

神经网络|(九)概率论基础知识-泊松分布及python仿真
【1】引言 在前序学习进程中,我们已经知晓二项分布是多重伯努利分布,二伯努利分布对应的是可以无限重复、结果只有两种可能的随机试验。 相关文章链接为: 神经网络|(八)概率论基础知识-二项分布及python仿真-CSDN博客 上述文章还调用nump…...

114,【6】攻防世界 web wzsc_文件上传
进入靶场 传个桌面有的 直接空白了 我们 访问一下上传的东西 /index 没显示用于解析的.htaccess和.user.ini 文件,还两个都不显示 .htaccess 和 .user.ini 文件分别用于 Apache 服务器和 PHP-FPM 环境的目录级配置 但上传的时候bp查看状态码是200,…...
【Kubernetes的SpringCloud最佳实践】有Service是否还需要Eureka?
在 Kubernetes 中部署 Spring Cloud 微服务时,是否还需要 Eureka 取决于具体场景和架构设计。以下是详细的实践建议和结论: 1. Kubernetes 原生服务发现 vs Eureka Kubernetes 自身提供了完善的服务发现机制(通过 Service 资源)&…...
SQL最佳实践(笔记)
写在前面: 之前baeldung的Java Weekly Reviews里面推荐了一篇关于SQL优化的文章,正好最近在学习数据库相关知识,记一些学习笔记 原文地址:SQL Best Practices Every Java Engineer Must Know 1. 使用索引 使用索引…...

vue3学习四
七 标签ref属性 设置标签ref属性,类似于设置标签id。 普通标签 <template name"test4"> <p ref"title" id"title" click"showinfo">VIEW4</p> <View3/><script lang"ts" setup>…...
C# LiteDB 使用教程
一、引言 在软件开发中,数据存储和管理是至关重要的一环。对于小型项目或者对性能和便捷性有较高要求的场景,传统的大型数据库可能显得过于笨重。而 LiteDB 作为一款轻量级的嵌入式 NoSQL 数据库,为开发者提供了一个简洁、高效的解决方案。它…...

Python Pandas(3):DataFrame
1 介绍 DataFrame 是 Pandas 中的另一个核心数据结构,类似于一个二维的表格或数据库中的数据表。它含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔型值)。DataFrame 既有行索引也有列索引,它可以被看做由…...
<6>-MySQL表的增删查改
目录 一,create(创建表) 二,retrieve(查询表) 1,select列 2,where条件 三,update(更新表) 四,delete(删除表…...

【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器
一.自适应梯度算法Adagrad概述 Adagrad(Adaptive Gradient Algorithm)是一种自适应学习率的优化算法,由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率,适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...
Oracle查询表空间大小
1 查询数据库中所有的表空间以及表空间所占空间的大小 SELECTtablespace_name,sum( bytes ) / 1024 / 1024 FROMdba_data_files GROUP BYtablespace_name; 2 Oracle查询表空间大小及每个表所占空间的大小 SELECTtablespace_name,file_id,file_name,round( bytes / ( 1024 …...

练习(含atoi的模拟实现,自定义类型等练习)
一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...
大语言模型如何处理长文本?常用文本分割技术详解
为什么需要文本分割? 引言:为什么需要文本分割?一、基础文本分割方法1. 按段落分割(Paragraph Splitting)2. 按句子分割(Sentence Splitting)二、高级文本分割策略3. 重叠分割(Sliding Window)4. 递归分割(Recursive Splitting)三、生产级工具推荐5. 使用LangChain的…...
【论文笔记】若干矿井粉尘检测算法概述
总的来说,传统机器学习、传统机器学习与深度学习的结合、LSTM等算法所需要的数据集来源于矿井传感器测量的粉尘浓度,通过建立回归模型来预测未来矿井的粉尘浓度。传统机器学习算法性能易受数据中极端值的影响。YOLO等计算机视觉算法所需要的数据集来源于…...

多种风格导航菜单 HTML 实现(附源码)
下面我将为您展示 6 种不同风格的导航菜单实现,每种都包含完整 HTML、CSS 和 JavaScript 代码。 1. 简约水平导航栏 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport&qu…...
Android第十三次面试总结(四大 组件基础)
Activity生命周期和四大启动模式详解 一、Activity 生命周期 Activity 的生命周期由一系列回调方法组成,用于管理其创建、可见性、焦点和销毁过程。以下是核心方法及其调用时机: onCreate() 调用时机:Activity 首次创建时调用。…...

九天毕昇深度学习平台 | 如何安装库?
pip install 库名 -i https://pypi.tuna.tsinghua.edu.cn/simple --user 举个例子: 报错 ModuleNotFoundError: No module named torch 那么我需要安装 torch pip install torch -i https://pypi.tuna.tsinghua.edu.cn/simple --user pip install 库名&#x…...
Spring AI Chat Memory 实战指南:Local 与 JDBC 存储集成
一个面向 Java 开发者的 Sring-Ai 示例工程项目,该项目是一个 Spring AI 快速入门的样例工程项目,旨在通过一些小的案例展示 Spring AI 框架的核心功能和使用方法。 项目采用模块化设计,每个模块都专注于特定的功能领域,便于学习和…...