【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)

admin 2022年1月13日09:25:23评论180 views字数 3703阅读12分20秒阅读模式

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)

网安教育

培养网络安全人才

技术交流、学习咨询



FTP后门漏洞复现

01
漏洞简述


vsftpd-2.3.4 手工触发漏洞:当进行FTP认证时,如果用户名USER中包含:),那么直接就触发监听6200端口的连接的shell。

02
风险等级


漏洞评定结果如下:

评定方式 等级

威胁等级 严重

影响面 广泛


03
 漏洞详情


FTP是文件传输协议(File Transfer Protocol)的缩写,是用于在网络上进行文件传输的一套标准协议,它工作在 OSI 模型的第七层, TCP 模型的第四层, 即应用层, 使用 TCP 传输的, 客户在和服务器建立连接前要经过一个“三次握手”的过程, 保证客户与服务器之间的连接是可靠的, 而且是面向连接, 为数据传输提供可靠保证。


FTP允许用户以文件操作的方式(如文件的增、删、改、查、传送等)与另一主机相互通信。然而,用户并不需要真正登陆到自己想要存取的计算机上面而成为完全用户,可用FTP程序访问远程资源,实现用户往返传输文件、目录管理以及访问电子邮件等等,即使双方计算机可能配有不同的操作系统和文件存储方式。


如果目标使用了含有漏洞的vsftpd2.3.4开启FTP服务,通过FTP来访问开放的目录和文件来进行信息收集进行下一步的攻击。


04
 知识拓展


FTP工作原理?


FTP基于TCP协议服务,是互联网中进行文件传输的协议,默认使用20、21号两个端口,一个数据端口和一个命令端口,端口20是数据端口,用于文件在客户端和服务器之间传输数据流。端口21是命令端口,用于传输控制流,接受客户端发出的相关FTP命令与参数。

FTP客户端在计算机网络中向FTP服务器发送服务请求,FTP服务器接收与响应FTP客户机的请求,并向FTP客户机提供所需的文件传输服务。根据TCP协议的规定,FTP服务器使用熟知端口号20、21来提供服务,FTP客户机使用临时端口号来发送请求。FTP协议为控制连接与数据连接规定不同的熟知端口号,为控制连接规定的熟知端口号是21,为数据连接规定的熟知端口号为20。FTP协议采用的是持续连接的通信方式,它所建立的控制连接的维持时间通常较长。

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


ftp基本模型


05
 影响版本


含有漏洞的vsftpd2.3.4


06
 漏洞环境搭建


测试环境

FTP版本:vsftpd2.3.4

靶机:Centos 7    IP: 192.168.3.2

攻击机:Kali      IP: 192.168.3.22

靶机:Centos里安装vsftpd2.3.4


一、永久关闭网络管理(因为刚安装完Centos后我发现网卡丢失了所以关闭了网络管理)

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


二、查看当前是否默认安装vsftpd

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


三、卸载当前已安装的vsftpd

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


四、查看是否移除默认安装版本

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


五、将含有漏洞的vsftpd2.3.4解压放入CentOS中,cd进入该目录,查看builddefs.h文件

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


六、编辑builddefs.h文件

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


七、确认打开所有权限

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


八、编辑opts.c文件并解决编码问题

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


九、编译安装发现没有gcc,安装gcc

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)



十、安装完gcc后编译安装又报错

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


解决方法:install tcp_wrappers

install tcp_wrappers-devel

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


解决办法:yum install openssl*

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


十一、再次编译安装

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)



十二、测试一下编译结果

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


十三、vsftp缺省配置需要“nobody”用户,如果系统中没有就先创建(system default have create this useraccount)

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


vsftpd缺省配置需要目录“/usr/share/empty”,没有该目录的话就创建一个(system default have create this directory) 

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)

这里显示目录已经存在


十四、匿名文件传输协议(anonymous FTP)需要创建用户“ftp”,创建一个主目录(属主不能是用户ftp,且用户ftp不可写)

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


用户ftp已存在,转至下面的命令(更改ftp目录的属主、数组及权限):

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


将配置样例拷贝到etc目录下

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


十五、编辑/etc/vsftpd.conf,在底部增加“listen=YES”(作用是让vsftpd不从inetd启动)

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)



十六、运行vsftpd

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


十七、关闭防火墙(与Linux版本有关,我这里是CentOS 7)

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


十八、随便复制几个文件到“/var/ftp”目录下,然后链接FTP

安装一下FTP命令

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)

至此环境搭建成功


07
漏洞验证


一、首先用nmap脚本扫描目标21号端口漏洞(应该用nmap –script vuln -p 21 xxx.xxx.xxx.xxx),关闭匿名登录:

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


手工触发:当ftp验证时,攻击者登录输入用户名后加笑脸,(密码任意输)后触发6200端口获得shell,连接目标6200端口:

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


利用msf脚本触发:

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


08
修复建议


不同 FTP 服务软件可能有不同的防护程序,本修复方案以Linux 中的vsftpd服务为例,您可参考以下方案对您的 FTP 服务进行安全加固。

请确保您的 FTP 服务软件为官方最新版本。同时,建议您不定期关注官方发布的补丁,并及时进行更新。

强烈建议不要将此类型的服务在互联网开放,您可以使用 VPN 等安全接入手段连接到 FTP 服务器端,同时使用 安全组 来控制访问源IP。


Linux 系统 vsftpd 服务安全加固

1)及时安装更新补丁

在安装更新补丁前,备份您的 vsftp 应用配置。从 VSFTPD官方网站 获取最新版本的 vsftp 软件安装包,完成升级安装。或者,您可以下载最新版 vsftp 源码包,自行编译后安装更新。您也可以执行yum update vsftpd命令通过 yum 源进行更新。

2)禁止匿名登录服务

A.添加一个新用户(test),并配置强密码。例如,执行useradd -d /home -s /sbin/nologin test命令:

其中,/sbin/nologin参数表示该用户不能登录 Linux shell 环境。

test为用户名。

通过passwd test命令,为该用户配置强密码。密码长度建议八位以上,且密码应包括大小写字母、特殊字符、数字混合体,且不要使用生日、姓名拼音等常见字符串作为密码。

B.修改配置文件 vsftpd.conf,执行#vim /etc/vsftpd/vsftpd.conf命令:

anonymous_enable=NO,将该参数配置为 NO 表示禁止匿名登录,必须要创建用户认证后才能登录 FTP 服务

3)禁止显示 banner 信息

修改 VSFTP 配置文件 vsftpd.conf,设置ftpd_banner=Welcome。重启 vsftp 服务后,即不显示 banner 信息。

4)限制FTP登录用户

在 ftpusers 和 user_list 文件中列举的用户都是不允许访问 FTP 服务的用户(例如 root、bin、daemon 等用户)。除了需要登录 FTP 的用户外,其余用户都应该添加至此拒绝列表中。

5)制FTP用户目录

A.修改 VSFTP 配置文件 vsftpd.conf

1chroot_list_enable=YES
2chroot_list_file=/etc/vsftpd/chroot_list


B.新建 /etc/vsftpd/chroot_list 文件,并添加用户名。例如,将 user1 添加至该文件,则 user1 登录 FTP 服务后,只允许在 user1 用户的 home 目录中活动。

6)修改监听地址和默认端口

7)启用日志记录

修改 VSFTP 配置文件 vsftpd.conf,启用日志记录。

1xferlog_enable=YES
2xferlog_std_format=YES


如果您需要自定义日志存放位置,可以修改xferlog_file=/var/log/ftplog。

8)其他安全配置

修改 VSFTP 配置文件 vsftpd.conf。

1#限制连接数
2max_clients=100
3max_per_ip=5
4#限制传输速度
5anon_max_rate=81920
6local_max_rate=81920


09
学习链接


https://blog.csdn.net/qq_34412985/article/details/86737163

————————————————


【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


版权声明:本文为CSDN博主「GuRan」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/m0_60883328/article/details/120244930

版权声明:著作权归作者所有。如有侵权请联系删除


开源聚合网安训练营

战疫期间,开源聚合网络安全基础班、实战班线上全面开启,学网络安全技术、升职加薪……有兴趣的可以加入开源聚合网安大家庭,一起学习、一起成长,考证书求职加分、升级加薪,有兴趣的可以咨询客服小姐姐哦!

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)

加QQ(1005989737)找小姐姐私聊哦



精选文章


环境搭建
Python
学员专辑
信息收集
CNVD
安全求职
渗透实战
CVE
高薪揭秘
渗透测试工具
网络安全行业
神秘大礼包
基础教程
我们贴心备至
用户答疑
 QQ在线客服
加入社群
QQ+微信等着你

【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)


我就知道你“在看”
【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)



本文始发于微信公众号(开源聚合网络空间安全研究院):【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年1月13日09:25:23
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【漏洞学习】FTP后门漏洞复现(含有漏洞的vsftpd2.3.4)https://cn-sec.com/archives/542871.html

发表评论

匿名网友 填写信息