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

shodan用法(完)

声明

学习视频来自B 站up主泷羽sec,如涉及侵权马上删除文章。

笔记的只是方便各位师傅学习知识,以下网站只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负。

shodan

今天,我们把shodan完结了,因为也没几条命令了,不过今天仍然是干货满满呦!

mongodb数据库

MongoDB未授权登录数据库是一个严重的安全问题,以下是相关情况:

一、漏洞产生原因

启动Mongodb的时候未设置--auth,并且很少有人会给数据库添加上账号密码(默认空口令),这将导致恶意攻击者无需进行账号认证就可以登陆到数据服务器。

二、漏洞利用方式

环境安装(以Kali系统为例)

导入MongoDB公共GPG密钥: 如果提示错误运行sudo apt - get install gnupg之后,重新运行相关命令。

创建一个列表文件来配置下载列表和下载源。

重新加载更新源: sudo apt - get update

安装MongoDB的最新稳定版本: sudo apt - get install - y mongodb - org

启动进程: sudo systemctl start mongod,若失败(如提示Failed to start mongod.service: Unit mongod.service not found.)

首先运行特定命令,然后再次运行开始命令。

配置开机自启: sudo systemctlenable mongod

漏洞利用步骤

扫描或者通过FOFA发现端口或者服务(默认端口27017)。

使用mongo连接数据库,命令格式: mongo--host目标ip--port目标端口

查看用户、数据库信息等。

创建系统用户管理员,例如创建一个用户名为myUserAdmin,密码为Passw0rd的系统用户管理员账号:

切换到admin库:use admin。

创建用户:

db.createUser({user:myUserAdmin ,pwd:Passw0rd,roles:[{role:userAdminAnyDatabase,db:admin}]}),创建成功后会有提示信息:Successfully added user:{user:myUserAdmin,roles:[{role:userAdminAnyDatabase,db:admin}]}。

可以通过ssh直接登录系统完成利用。

shodan search --limit 10 --fields ip_str "Mongodb server information -authentication" port:27017

第一个直接就来连接成功了,成功率还是挺高的。

不过显然这个数据库已经被别人挟持了,没有任何价值。

jenkins组件

Shodan搜索基础

这是一个Shodan搜索命令。Shodan是一个网络搜索引擎,主要用于搜索网络上的设备、服务等信息。

命令参数含义

--limit 10: 这个参数表示限制搜索结果的数量为10条。这样做可以避免得到过多的搜索结果,方便查看和分析与特定条件匹配的结果。

--fields ip_str: 表示只显示搜索结果中的IP地址字段。这样能聚焦于目标的IP信息,去除其他可能的多余信息。

"X - Jenkins" OR "Set - cookie:JSESSIONID": 这是搜索的条件之一。它表示查找包含X - Jenkins或者Set - cookie:JSESSIONID信息的目标。这里X - Jenkins可能与Jenkins服务相关的特定HTTP头信息有关,JSESSIONID通常是在基于Java的Web应用(如可能使用Jenkins服务的应用)中用于跟踪用户会话的Cookie标识。

http.title:"Dashboard" : 这是另一个搜索条件,表示查找HTTP标题为Dashboard的目标。在很多系统(包括Jenkins)中,Dashboard通常是管理界面或者控制面板的标题。

shodan search --limit 10 --fields ip_str "X-Jenkins" OR "Set-cookie:JSESSIONID" http.title:"Dashboard"

可以看到,很轻松的进到dashboard的面板,也说明确实存在漏洞。

Jenkins特性

Jenkins具有易于安装、易于配置等特点。所有配置都可以通过Jenkins提供的Web界面完成,也可以通过手动修改XML文件进行配置。Jenkins能跟踪每次构建生成哪些jar包以及使用哪个版本的jar包。此外,Jenkins还支持分布式构建,可以通过第三方插件扩展,也可以根据团队需要开发插件。

Jenkins中的任务和构建

在Jenkins中,任务(Job)是一个执行计划,是一系列操作的集合,构建是Jenkins的任务的一次运行。在持续集成中,团队成员频繁集成他们的工作成果,一般每人每天至少集成一次,也可以多次。每次集成会经过自动构建(包括自动测试)的检验,以尽快发现集成错误。

Jenkins的应用场景

Jenkins广泛应用于软件开发领域,特别是在敏捷开发和DevOps实践中。它可以帮助团队实现自动化构建、测试和部署,从而加快软件交付的速度,提高软件质量。同时,Jenkins的插件系统使其能够与各种工具和服务集成,进一步扩大了其应用范围。

jenkins在渗透测试过程中的辅助作用

Jenkins简介

Jenkins是一个开源的持续集成和持续交付/部署(CI/CD)平台,广泛用于自动化软件的构建、测试和部署过程。它支持多种插件,可以与各种开发工具和流程集成,极大地提高了软件开发的效率和质量。

Jenkins在渗透测试中的作用

自动化测试脚本管理

Jenkins可以用来管理和执行自动化测试脚本,这对于渗透测试来说非常重要。渗透测试过程中,测试者需要编写和执行大量的测试脚本来发现系统的安全漏洞。Jenkins可以自动化这一过程,每当有新的代码提交或更新时,都可以触发Jenkins执行相应的测试脚本,从而及时发现潜在的安全问题。

构建和部署

在渗透测试中,可能需要频繁地构建和部署测试环境。Jenkins可以自动化这一过程,使得测试环境的搭建和更新变得更加高效。例如,可以配置Jenkins在每次代码提交时自动构建一个新的测试环境,并部署最新的代码,以便测试者可以立即在最新的环境中进行测试。

数据收集和分析

渗透测试过程中会产生大量的数据,包括扫描结果、漏洞信息等。Jenkins可以通过插件与其他工具集成,自动收集和分析这些数据。例如,可以使用插件将扫描结果导出到数据库或报表中,便于测试者进行进一步的分析和处理。

团队协作

Jenkins支持多用户协作,可以方便地进行任务分配和进度跟踪。在渗透测试团队中,不同成员可能负责不同的测试任务。Jenkins可以提供一个统一的平台,使得团队成员可以共享资源、协调工作,并及时了解项目的进展。

Stats

** Shodan Stats 功能介绍**

Shodan Stats 提供了搜索结果的概要信息,帮助用户快速了解搜索到的设备分布情况。

这些信息包括但不限于以下几个方面:

Top Services (Ports): 显示使用最多的服务/端口,帮助用户了解网络中最常见的服务类型。

Top Organizations (ISPs): 列出使用最多的组织/ISP,这对于市场研究和网络风险分析非常有用。

Top Operating Systems: 展示使用最多的操作系统,有助于了解不同操作系统在网络中的普及程度。

Top Products (Software Name): 列出使用最多的产品/软件名称,这对于软件开发和安全研究人员来说是非常有价值的。

使用 Shodan Stats 功能非常简单,用户只需在 Shodan 的搜索栏中输入关键词,然后点击搜索。在搜索结果页面,用户可以看到一系列的汇总数据,包括上述提到的各项统计信息。此外,Shodan 还提供了多种过滤选项,允许用户进一步细化搜索结果,例如按国家、城市、ISP、产品、版本等进行筛选。

shodan stats --facets ssl.version country:jp has_ssl:true http

命令理解

用户想要使用Shodan的stats命令来获取关于中国境内启用了SSL的HTTP服务器的统计信息,特别是关于SSL版本的分组统计。

命令解析

shodan stats: 这是Shodan CLI工具的一个命令,用于获取统计信息。

--facets ssl.version: 这指定了要分组统计的字段是SSL版本。

country:jp: 这限制了搜索结果仅包括jp的服务器。

has_ssl:true: 这确保只统计启用了SSL的服务器。

http: 这进一步限制了搜索结果仅包括HTTP协议的服务器。

为了扩大搜索范围,需要学习多种参数的组合,国家地区,城市,漏洞,版本,ip ,端口配合起来过滤出更精准的信息:

1. Echo (7) - 回声协议,用于网络中的诊断和调试。
2. Chargen (19) - 字符发生器协议,主要用于测试和诊断。
3. FTP (20-21) - 文件传输协议,用于文件在网络上的传输。
4. SSH/SCP (22) - 安全外壳协议,用于安全的远程登录和传输文件。 [加密 (Encrypted)]
5. Telnet (23) - 远程终端协议,用于远程登录,不安全的明文传输。
6. SMTP (25) - 简单邮件传输协议,用于发送电子邮件。
7. WINS复制 (42) - Windows Internet 名称服务,用于Windows网络中的名称解析。
8. WHOIS (43) - 查询域名注册信息的协议。
9. TACACS (49) - 终端访问控制器访问控制系统,用于网络设备的身份验证。
10. DNS (53) - 域名系统,将域名转换为IP地址。
11. DHCP/BOOTP (67-68) - 动态主机配置协议和引导协议,为设备分配IP地址。
12. TFTP (69) - 简单文件传输协议,基于UDP,常用于设备启动。
13. Gopher (70) - 一种较早的互联网文档搜索和检索协议。
14. Finger (79) - 用户信息查询协议,显示用户的信息。
15. HTTP (80) - 超文本传输协议,用于浏览网页。
16. Kerberos (88) - 一种网络认证协议,提供安全的身份验证。 [加密 (Encrypted)]
17. MS Exchange (102) - Microsoft Exchange邮件服务使用的端口。
18. POP3 (110) - 邮局协议版本3,用于接收电子邮件。
19. Ident (113) - 用于标识连接的用户身份。
20. NNTP (119) - 网络新闻传输协议,用于Usenet新闻组。
21. NTP (123) - 网络时间协议,同步网络时间。
22. Microsoft RPC (135) - Microsoft的远程过程调用协议。
23. NetBIOS (137-139) - 网络基本输入输出系统,用于局域网通信。
24. IMAP4 (143) - 互联网邮件访问协议,用于邮件接收和管理。
25. SNMP (161) - 简单网络管理协议,用于网络设备管理。
26. XDMCP (177) - X显示管理控制协议,用于远程显示。
27. BGP (179) - 边界网关协议,用于互联网路由。
28. AppleTalk (201) - Apple的网络协议栈,用于设备通信。
29. BGMP (264) - 边界组播网关协议,用于组播路由。
30. TSP (318) - 传输层安全协议,用于网络安全通信。
31. HP Openview (381-383) - HP网络管理工具使用的端口。
32. LDAP (389) - 轻量目录访问协议,用于访问目录服务。
33. Direct Connect (411-412) - 点对点文件共享协议。 [点对点 (Peer to Peer)]
34. HTTPS (443) - HTTP的安全版本,使用SSL/TLS加密。 [加密 (Encrypted)]
35. SMTP over SSL (465) - 安全的SMTP端口。 [加密 (Encrypted)]
36. Microsoft DS (445) - Microsoft目录服务,用于文件共享。
37. ISAKMP (500) - Internet安全关联和密钥管理协议。 [加密 (Encrypted)]
38. MyDoom (1090) - MyDoom病毒常用的端口。 [恶意 (Malicious)]
39. Kazaa (1214) - 点对点文件共享应用Kazaa使用的端口。 [点对点 (Peer to Peer)]
40. Microsoft SQL (1433-1434) - Microsoft SQL数据库服务。
41. MS Media Server (1755) - 用于Microsoft媒体流服务。 [流媒体 (Streaming)]
42. RADIUS (1812-1813) - 远程身份验证拨入用户服务,用于身份验证和授权。 [加密 (Encrypted)]
43. MSN (1863) - Windows Live Messenger使用的端口。 [聊天 (Chat)]
44. cPanel (2078-2083) - 网站管理工具cPanel使用的端口。
45. Xbox Live (3074) - Xbox Live服务的游戏端口。 [游戏 (Gaming)]
46. HTTP Proxy (3128) - HTTP代理服务器常用的端口。
47. MySQL (3306) - MySQL数据库服务的默认端口。
48. Terminal Server (3389) - 远程桌面服务端口。
49. iTunes (3689) - Apple iTunes共享服务。 [流媒体 (Streaming)]
50. World of Warcraft (3724) - 魔兽世界游戏使用的端口。 [游戏 (Gaming)]
51. Google Desktop (4664) - Google桌面搜索。
52. UPnP (5000) - 通用即插即用协议,用于设备发现。
53. SIP (5060) - 会话初始协议,用于VoIP。 [聊天 (Chat)]
54. AIM/ICQ (5190) - AOL即时通讯和ICQ服务。 [聊天 (Chat)]
55. XMPP/Jabber (5222-5223) - 即时通讯协议。 [聊天 (Chat)]
56. PostgreSQL (5432) - PostgreSQL数据库服务。
57. VNC Server (5800-5900) - 虚拟网络计算,用于远程控制。
58. Battle.net (6112) - 游戏平台Battle.net使用的端口。 [游戏 (Gaming)]
59. IRC (6665-6669) - 互联网中继聊天协议。 [聊天 (Chat)]
60. BitTorrent (6881-6999) - 点对点文件传输协议。 [点对点 (Peer to Peer)]
61. Windows Live (6891-6901) - Windows Live Messenger使用的端口。 [聊天 (Chat)]
62. Quicktime (6970) - Apple Quicktime视频流端口。 [流媒体 (Streaming)]
63. TeamSpeak (8767) - 语音聊天软件TeamSpeak使用的端口。 [聊天 (Chat)]
64. Call of Duty (28960) - 游戏《使命召唤》使用的端口。 [游戏 (Gaming)]
65. Back Orifice (31337) - 恶意软件Back Orifice使用的端口。 [恶意 (Malicious)]
66. traceroute (33434+) - 一种网络诊断工具,用于追踪数据包从源到目的地经过的路由。通常从端口 **33434** 开始,然后逐步增加端口号。通过发送带有递增TTL(生存时间)值的数据包,traceroute 能显示每一跳的路由节点,以帮助定位网络问题和查看数据包路径。

相关文章:

shodan用法(完)

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

【若依框架】代码生成详细教程,15分钟搭建Springboot+Vue3前后端分离项目,基于Mysql8数据库和Redis5,管理后台前端基于Vue3和Element Plus,开发小程序数据后台

今天我们来借助若依来快速的搭建一个基于springboot的Java管理后台,后台网页使用vue3和 Element Plus来快速搭建。这里我们可以借助若依自动生成Java和vue3代码,这就是若依的强大之处,即便你不会Java和vue开发,只要跟着石头哥也可…...

转子侧串级调速系统和双馈调速系统

转子侧串级调速系统和双馈调速系统是两种不同的电机调速技术,它们在基本原理、效率以及应用场景等方面存在区别。以下是详细的对比分析: 基本原理 转子侧串级调速系统:通过在绕线式异步电动机的转子回路中串入一个可调节的附加电势&#xff0…...

AI学习指南自然语言处理篇-Transformer模型的实践

AI学习指南自然语言处理篇 - Transformer模型的实践 目录 引言Transformer模型概述 自注意力机制编码器-解码器结构 环境准备Transformer模型的实现 编码器实现解码器实现Transformer模型整体实现 Transformer在NLP任务中的应用 文本分类机器翻译 总结与展望 引言 在过去的数…...

【LVGL速成】LVGL修改标签文本(GUI Guider生成的字库问题)

目录 前置篇章: 一.问题背景 二.失败方案 三.成功方案 1.Gui guider的源码结构 2.手动生成字体 3.Keil中配置相关文件 ​编辑 4.修改文字 四.字体样式函数说明 前置篇章: 【LVGL快速入门(二)】LVGL开源框架入门教程之框架使用(UI界面设计)_lvgl…...

C语言项目实践-贪吃蛇

⽬录: 1. 游戏背景 2. 游戏效果演⽰ 3. 实现的⽬标 4. 实现的定位 5. 技术要点 6. 贪吃蛇游戏设计与分析 7. 贪吃蛇游戏数据结构设计 8. 相关Win32API介绍 9. 参考代码 正文开始 1. 游戏背景 贪吃蛇是久负盛名的游戏,它也和俄罗斯⽅块&#xf…...

在kanzi 3.9.8里使用API创建自定义材质

1. kanzi studio设置 1.1 创建一个纹理贴图,起名Render Target Texture 1.2 创建一个Image节点,使用该贴图 2. 代码设置 2.1 创建一个自定义节点类 class mynode2d : public Node2D { public: virtual void renderOverride(Renderer3D& renderer…...

IDEA中通义灵码的使用技巧

大家好,我是 V 哥。在日常写代码的过程中,通过 AI 工具辅助开发已是当下程序员惯用的方式,V 哥在使用了众多的 AI 工具后,多数情况下,选择通义灵码来辅助开发,尤其是解释代码和生成单元测试功能甚是好用&am…...

JS中let var 和const区别

在JavaScript中,let、var 和 const 都是用来声明变量的关键字,但它们之间有几个关键的区别: 作用域(Scope): var 声明的变量拥有函数作用域(function scope),这意味着如果 var 变量在…...

ansible详细介绍和具体步骤

Ansible简介 1.1 Ansible的基本概念 Ansible是一款开源的自动化工具,旨在简化IT操作的复杂性。它由Michael DeHaan创建,并于2012年发布,随后在2015年被Red Hat收购。Ansible的核心理念是“简单即美”,它通过使用YAML&#xff08…...

利用LangChain与LLM打造个性化私有文档搜索系统

我们知道LLM(大语言模型)的底模是基于已经过期的公开数据训练出来的,对于新的知识或者私有化的数据LLM一般无法作答,此时LLM会出现“幻觉”。针对“幻觉”问题,一般的解决方案是采用RAG做检索增强。 但是我们不可能把…...

linux中的软、硬链接

目录 引言 简单介绍 如何理解软硬链接 链接的应用 环路问题 引言 在Linux操作系统的广阔天地中,文件管理是其核心功能之一。而软链接和硬链接作为Linux文件系统中的两种特殊链接方式,它们为用户提供了灵活的文件访问途径和高效的磁盘空间利用手段。…...

Ubuntu 系统、Docker配置、Docker的常用软件配置(下)

前言 书接上文,现在操作系统已经有了,作为程序的载体Docker也安装配置好了,接下来我们需要让Docker发挥它的法力了。 Docker常用软件的安装 1.Redis 缓存安装 1.1 下载 docker pull redis:7.4.1 #可改为自己需要的版本 1.2 创建本地目录存储…...

jdk,openjdk,oraclejdk

Java是开发语言,不是软件。JDK是软件,使用OpenJDK是免费的,一直免费。而且OpenJDK正儿巴经的Java社区推出来的JDK。 Oracle JDK主要是面向付费能力强的企业用户,收费已经好多年了,不是一两年的事,JDK8是JDK…...

Docker Hub 镜像加速器

零、参考资料 https://gist.github.com/y0ngb1n/7e8f16af3242c7815e7ca2f0833d3ea6Daemon proxy configuration | Docker Docs 一、解决方案 1、问题现象 Error response from daemon: Get "https://index.docker.io/v1/search?qcarlasim%2Fcarla&n25": dia…...

DevOps赋能:优化业务价值流的实战策略与路径(上)

上篇:价值流引领与可视化体系构建 一、前言 在快速迭代的软件项目和产品开发生态中,我们始终围绕两个核心目标:一是确保每一项工作都能为客户创造实际价值,这是产品团队的核心使命;二是确保这些有价值的工作能够高效…...

int的取值范围

原码(True form):原码是一种计算机中对数字的二进制表示方法,数码序列中最高位为符号位,符号位为0表示正数,符号位为1表示负数;其余有效值部分用二进制的绝对值表示。 反码&#xf…...

图文检索(16):IDC: Boost Text-to-Image Retrieval via Indirect and Direct Connections

IDC: Boost Text-to-Image Retrieval via Indirect and Direct Connections 摘要3 方法3.1 直接连接3.2 间接连接3.3 DLB 正则化 结论 发布时间(2024 LREC-COLING) 标题:IDC:通过间接和直接连接增强文本到图像的检索 摘要 本文&…...

企业数字化转型:重识、深思、重启新征程-亿发

在当下这个日新月异的时代,企业数字化转型已然成为众多企业竞相追逐的发展方向,可真正能将其领悟透彻并有效落地实施的企业,却并非比比皆是。此刻,亿发软件针对企业数字化转型展开一次更为深入的重识、全面的深思,进而…...

仓颉刷题录-字符串数字转换(一)

文章目录 背景题目:交换后字典序最小的字符串个人感受 这是双子专栏: Cangjie仓颉程序设计-个人总结 本专栏还在持续更新: 仓颉编程cangjie刷题录 背景 报名了一个仓颉的比赛,感觉条件要求挺低的,就想上。哈哈哈。但…...

从零实现富文本编辑器#5-编辑器选区模型的状态结构表达

先前我们总结了浏览器选区模型的交互策略,并且实现了基本的选区操作,还调研了自绘选区的实现。那么相对的,我们还需要设计编辑器的选区表达,也可以称为模型选区。编辑器中应用变更时的操作范围,就是以模型选区为基准来…...

【Java学习笔记】Arrays类

Arrays 类 1. 导入包:import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序(自然排序和定制排序)Arrays.binarySearch()通过二分搜索法进行查找(前提:数组是…...

解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八

现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet,点击确认后如下提示 最终上报fail 解决方法 内核升级导致,需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...

ffmpeg(四):滤镜命令

FFmpeg 的滤镜命令是用于音视频处理中的强大工具,可以完成剪裁、缩放、加水印、调色、合成、旋转、模糊、叠加字幕等复杂的操作。其核心语法格式一般如下: ffmpeg -i input.mp4 -vf "滤镜参数" output.mp4或者带音频滤镜: ffmpeg…...

聊一聊接口测试的意义有哪些?

目录 一、隔离性 & 早期测试 二、保障系统集成质量 三、验证业务逻辑的核心层 四、提升测试效率与覆盖度 五、系统稳定性的守护者 六、驱动团队协作与契约管理 七、性能与扩展性的前置评估 八、持续交付的核心支撑 接口测试的意义可以从四个维度展开,首…...

【开发技术】.Net使用FFmpeg视频特定帧上绘制内容

目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法,当前调用一个医疗行业的AI识别算法后返回…...

深度学习习题2

1.如果增加神经网络的宽度,精确度会增加到一个特定阈值后,便开始降低。造成这一现象的可能原因是什么? A、即使增加卷积核的数量,只有少部分的核会被用作预测 B、当卷积核数量增加时,神经网络的预测能力会降低 C、当卷…...

Docker 本地安装 mysql 数据库

Docker: Accelerated Container Application Development 下载对应操作系统版本的 docker ;并安装。 基础操作不再赘述。 打开 macOS 终端,开始 docker 安装mysql之旅 第一步 docker search mysql 》〉docker search mysql NAME DE…...

NXP S32K146 T-Box 携手 SD NAND(贴片式TF卡):驱动汽车智能革新的黄金组合

在汽车智能化的汹涌浪潮中,车辆不再仅仅是传统的交通工具,而是逐步演变为高度智能的移动终端。这一转变的核心支撑,来自于车内关键技术的深度融合与协同创新。车载远程信息处理盒(T-Box)方案:NXP S32K146 与…...

【Go语言基础【13】】函数、闭包、方法

文章目录 零、概述一、函数基础1、函数基础概念2、参数传递机制3、返回值特性3.1. 多返回值3.2. 命名返回值3.3. 错误处理 二、函数类型与高阶函数1. 函数类型定义2. 高阶函数(函数作为参数、返回值) 三、匿名函数与闭包1. 匿名函数(Lambda函…...