CVE-2019-12181 Serv-U 15.1.6 Privilege Escalation漏洞復現

  • 2019 年 10 月 6 日
  • 筆記

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版本