0X1 漏洞概述
Serv-U是Windows平台和Linux平台的安全FTP服务器(FTPS,SFTP,HTTPS),是一个优秀的,安全的文件管理,文件传输和文件共享的解决方案。同时也是应用最广泛的FTP服务器软件。
在近日,有安全研究人员公布了一个该软件15.1.6版本的一个本地权限提升漏洞。在Linux上,ftp服务器是SUID可执行文件并以root身份运行 因此,即使只能在本地执行的攻击仍然是一种威胁,因为它会为攻击者提供root权限。
漏洞原因在于代码中传递给系统的命令是“ chmod u + s <some filename> ”,其中<some filename>设置为argv [0]!这是危险的,因为如果我们设法达到这个易受攻击的流程,我们可以使用exec *函数之一(前面讨论过)控制argv [0]并实现代码执行!此外,由于可执行文件是SUID,即使我们从exec *函数运行它,它也将以root身份运行,为任何攻击用户提供root权限。详情,请参考文章
https://blog.vastart.dev/2019/06/cve-2019-12181-serv-u-exploit-writeup.html
0X2 环境搭建
下载源码包,并在ubuntu16.04中安装
下载链接:https://hrtsea.com/224.html
在终端中直接安装,默认安装目录在/usr/local/Serv-U/中,启动环境之后,浏览器访问链接
http://ip:8080 即可访问Web管理界面。
0X3 漏洞利用
在exploit-db中下载exp脚本
https://www.exploit-db.com/exploits/47009
按照使用方法在本地编译该脚本并运行,可以看到会得到root权限
0X4 漏洞修复
升级到最新15.1.7版本