發(fā)布時(shí)間 :2023年10月12日
類型 :勒索軟件
近日,亞信安全CERT監(jiān)測(cè)到curl項(xiàng)目組發(fā)布了curl SOCKS5 存在堆溢出漏洞的安全公告,該漏洞同時(shí)影響curl命令行工具和libcurl庫部分版本。當(dāng)使用curl請(qǐng)求目標(biāo)主機(jī)過程中使用SOCKS5代理時(shí),如果目標(biāo)主機(jī)名大于255字節(jié),curl會(huì)使用本地解析主機(jī)代替遠(yuǎn)程解析造成堆緩沖區(qū)溢出。
鑒于curl和libcurl庫使用廣泛,亞信安全CERT建議廣大客戶排查受影響產(chǎn)品,但該漏洞利用條件較為苛刻,如暫時(shí)無法升級(jí)的客戶,可以通過亞信安全提供的臨時(shí)方案或?qū)?yīng)產(chǎn)品進(jìn)行防護(hù)。
libcurl是一個(gè)跨平臺(tái)的網(wǎng)絡(luò)協(xié)議庫,支持http、https、ftp、gopher、telnet、dict、file、和ldap協(xié)議。libcurl同樣支持HTTPS證書授權(quán),HTTP POST、HTTP PUT、FTP 上傳、HTTP基本表單上傳、代理、cookies和用戶認(rèn)證。libcurl 用于提供處理網(wǎng)絡(luò)通信和數(shù)據(jù)傳輸?shù)?Api 接口。
漏洞編號(hào)、類型和等級(jí)
編號(hào):CVE-2023-38545
類型:代碼執(zhí)行
等級(jí):高危
漏洞狀態(tài)
漏洞細(xì)節(jié) | PoC | EXP | 在野利用 |
已公開 | 已公開 | 未公開 | 未發(fā)現(xiàn) |
受影響的版本
7.69.0<= libcurl <= 8.3.0
漏洞利用條件
libcurl庫,以下任一條件
CURLOPT_PROXYTYPE 設(shè)置為CURLPROXY_SOCKS5_HOSTNAME,如:curl_easy_setopt(handle, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5_HOSTNAME)
CURLOPT_PROXY 或CURLOPT_PRE_PROXY使用socks5h://代理地址,如:curl_easy_setopt(handle, CURLOPT_PROXY, "socks5h://...")
代理環(huán)境變量設(shè)置為 socks5h://
curl命令行工具(7.x版本,以下任一條件)
使用--socks5-hostname參數(shù)
使用-x參數(shù)值為socks5h://格式
代理環(huán)境變量設(shè)置為 socks5h://
curl命令行工具(8.x版本)
受影響版本排查
curl
libcurl庫
針對(duì)系統(tǒng) lib 目錄及應(yīng)用目錄中的文件分析,如strings libcurl.so | egrep -o 'libcurl[ -/]([678]+\.[0-9]+\.[0-9]+)'
針對(duì)運(yùn)行中的應(yīng)用可以通過分析進(jìn)程打開文件來判斷,如sudo lsof | egrep -o '/.\.so.*' | xargs -I {} bash -c "strings {} | egrep -o 'libcurl[ -/]([678]+\.[0-9]+\.[0-9]+)'"
修復(fù)建議
建議受影響用戶升級(jí)至 curl >= 8.4.0
暫時(shí)無法升級(jí)的用戶建議:
參考鏈接
https://github.com/curl/curl/commit/fb4415d8aee6c1
https://curl.se/docs/CVE-2023-38545.html
https://access.redhat.com/security/cve/cve-2023-38545
https://jfrog.com/blog/curl-libcurl-october-2023-vulns-all-you-need-to-know/
https://www.tenable.com/blog/cve-2023-38545-cve-2023-38546-frequently-asked-questions-for-new-vulnerabilities-in-curl