简要记录一下Samba远程代码执行漏洞(CVE-2017-7494)环境搭建和利用的过程,献给那些想自己动手搭建环境的朋友。(虽然已过多时)

  快捷通道:Docker ~ Samba远程代码执行漏洞(CVE-2017-7494)

  演      示:服务器版“永恒之蓝”高危预警 (Samba远程命令执行漏洞CVE-2017-7494) 攻击演示


漏洞描述

影响版本

  Samba 3.5.0到4.6.4/4.5.10/4.4.14的中间版本。

  这句话应该这么来理解,该漏洞影响Samba 3.5.0之后的所有版本,在4.6.4/4.5.10/4.4.14修复了这个漏洞。

利用条件

  • 服务器打开了文件/打印机共享端口445
  • 共享文件拥有访问以及写入权限
  • 攻击者知道共享的目录路径

环境搭建

简要介绍

  靶机环境:ubuntu-14.04.1-server-amd64   (安装系统时记的勾选samba哦)

  攻击机:kali2.0

  关于虚拟机的创建就不过多介绍了,可以参考其他资料,查看下samba的版本:

/usr/sbin/samba -V

  该版本是属于上述范围,存在远程代码执行漏洞。

配置

  首先,我们创建一个共享目录,并且赋予写权限,为了简便直接赋予全部权限:

mkdir /home/share
chmod /home/share

  然后修改配置文件/etc/samba/smb.conf, 可在配置文件最后添加如下内容:

[myshare]
comment=smb share test
browseable=yes #可读
writeable=yes #可写
path=/home/share #设置目录(上一步创建的共享目录)
public = yes #允许匿名登录

  ubuntu下可以用如下命令来运行和停止服务:

/etc/init.d/smbd start  #开启
/etc/init.d/smbd stop #关闭
/etc/init.d/smbd restart #重启
或:
service smbd start
service smbd stop
service smbd restart

测试演示

匿名

  在kali2.0中运行metasploit,可以直接搜索该漏洞编号或脚本名称,就能找到相应的漏洞利用脚本的路径,如下:

search CVE--
search is_known_pipename

  靶机:192.168.1.102, 我们设置如下:

非匿名

  在需要用户名密码的情况下,我们需要修改一下配置文件:

[myshare]
comment=smb share test
browseable=yes #可读
writeable=yes #可写
path=/home/share #设置目录(上一步创建的共享目录)
public = no #不允许匿名登录

  在 [global] 设置选项中添加配置:

security = user

  我们需要添加一下用户以备登陆之需:

useradd user
smbpasswd -a user
service smbd restart

  我们需要在kali上设置samba用户名和密码,其他的跟上面的一样。

修复

  简单来说就是升级版本,升级到如上所说的4.6.4/4.5.10/4.4.14。

References

  CVE-2017-7494

  Samba远程代码执行漏洞(CVE-2017-7494)

  Samba远程代码执行漏洞(CVE-2017-7494)

Samba远程代码执行漏洞(CVE-2017-7494)复现的更多相关文章

  1. Samba远程代码执行漏洞(CVE-2017-7494)本地复现

    一.复现环境搭建 搭建Debian和kali两个虚拟机: 攻击机:kali (192.168.217.162): 靶机:debian (192.168.217.150). 二.Debian安装并配置s ...

  2. Office远程代码执行漏洞(CVE-2017-11882)复现

    昨晚看到的有复现的文章,一直到今天才去自己复现了一遍,还是例行记录一下. POC: https://github.com/Ridter/CVE-2017-11882/ 一.简单的生成弹计算器的doc文 ...

  3. Samba远程代码执行-分析(CVE-2017-7494)

    经历了前一阵windows的EternalBlue之后,某天看见了360的 samba高危预警,这个号称linux端的EternalBlue(EternalRed),于是便研究了一波 概述(抄) Sa ...

  4. 【漏洞公告】CVE-2017-12615/CVE-2017-12616:Tomcat信息泄漏和远程代码执行漏洞

    2017年9月19日,Apache Tomcat官方确认并修复了两个高危漏洞,漏洞CVE编号:CVE-2017-12615和CVE-2017-12616,该漏洞受影响版本为7.0-7.80之间,在一定 ...

  5. 服务器版“永恒之蓝”高危预警 (Samba远程命令执行漏洞CVE-2017-7494) 攻击演示

    漏洞信息: 2017年5月24日Samba发布了4.6.4版本,中间修复了一个严重的远程代码执行漏洞,漏洞编号CVE-2017-7494,漏洞影响了Samba 3.5.0 之后到4.6.4/4.5.1 ...

  6. 【漏洞公告】Tomcat信息泄漏和远程代码执行漏洞:CVE-2017-12615/CVE-2017-12616

    2017年9月19日,Apache Tomcat官方确认并修复了两个高危漏洞,漏洞CVE编号:CVE-2017-12615和CVE-2017-12616,该漏洞受影响版本为7.0-7.80之间,在一定 ...

  7. Apache Struts 远程代码执行漏洞(CVE-2013-4316)

    漏洞版本: Apache Group Struts < 2.3.15.2 漏洞描述: BUGTRAQ ID: 62587 CVE(CAN) ID: CVE-2013-4316 Struts2 是 ...

  8. MongoDB ‘conn’Mongo 对象远程代码执行漏洞

    漏洞名称: MongoDB ‘conn’Mongo 对象远程代码执行漏洞 CNNVD编号: CNNVD-201307-497 发布时间: 2013-07-25 更新时间: 2013-07-25 危害等 ...

  9. Struts2再爆远程代码执行漏洞

    Struts又爆远程代码执行漏洞!在这次的漏洞中,攻击者可以通过操纵参数远程执行恶意代码.Struts 2.3.15.1之前的版本,参数action的值redirect以及redirectAction ...

随机推荐

  1. ERROR 1698 (28000): Access denied for user 'root'@'localhost' 解决方法

    之前MySQL服务端本机上使用密码登陆root账号是没有问题的,但是今天不知道是因为动了哪里,登陆失败并有这个错误代码: ~$ mysql -u root -p Enter password: ERR ...

  2. DTCping 的简单使用与排错

    1. 工具下载路径 https://support.microsoft.com/zh-cn/help/918331/how-to-troubleshoot-connectivity-issues-in ...

  3. [转贴]Linux的SUID SGID 等知识内容

    作者:sparkdev 出处:http://www.cnblogs.com/sparkdev/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接, ...

  4. Mininet 系列实验(六)

    写在前面 这次实验遇到了非常多问题,非常非常多,花了很多时间去解决,还是有一些小问题没有解决,但是基本上能完成实验.建议先看完全文再开始做实验. 实验内容 先看一下本次实验的拓扑图: 在该环境下,假设 ...

  5. 【BZOJ2281】【Sdoi2011】黑白棋 解题报告

    [BZOJ2281][Sdoi2011]黑白棋 Description ​ 小A和小B又想到了一个新的游戏. ​ 这个游戏是在一个\(1\)*\(n\)的棋盘上进行的,棋盘上有\(k\)个棋子,一半是 ...

  6. 解题:CF825E Minimal Labels

    题面 看起来似乎是个水水的拓扑排序+堆,然而并不对,因为BFS拓扑排序的话每次只会在“当前”的点中排出一个最小/大的字典序,而我们是要一个确定的点的字典序尽量小.正确的做法是反向建图,之后跑一个字典序 ...

  7. Webpack 学习笔记总结

    Webpack安装 Linux系统默认已经安装了node&npm,但版本比较低,而且没法升级,可以重新下载Node然后通过软链接替换系统自带的node和npm; ln -s /path_to/ ...

  8. python之旅:三元表达式、列表推导式、生成器表达式、函数递归、匿名函数、内置函数

    三元表达式 #以下是比较大小,并返回值 def max2(x,y): if x > y: return x else: return y res=max2(10,11) print(res) # ...

  9. JavaScript演示下Singleton设计模式

    单例模式的基本结构: MyNamespace.Singleton = function() { return {}; }(); 比如: MyNamespace.Singleton = (functio ...

  10. IEEE 754浮点数表示标准

    二进制数的科学计数法 C++中使用的浮点数包括采用的是IEEE标准下的浮点数表示方法.我们知道在数学中可以将任何十进制的数写成以10为底的科学计数法的形式,如下 其中显而易见,因为如果a比10大或者比 ...