三款主流的源版本控制系統(tǒng)Git、Subversion(svn)、Mercurial,今日發(fā)布了更新補(bǔ)丁,修復(fù)了一個(gè)客戶端代碼執(zhí)行漏洞。
該漏洞由GitLab的BrianNeel,RecurityLabs的JoanSchneeweiss和GitHub的JeffKing發(fā)現(xiàn)和報(bào)告的。
應(yīng)用于Linuxkernel、GitHub和Gitlab背后的開源版本控制系統(tǒng)Git。今天發(fā)布了多個(gè)更新版本,Gitv2.14.1、2.7.6、v2.8.6、v2.9.5、v2.10.4、v2.11.3、v2.12.4和v2.13.5,用于修復(fù)該漏洞。
“此次更新修復(fù)了編號(hào)為CVE-2017-1000117的漏洞,與Subversion和Mercurial的維護(hù)者協(xié)調(diào)發(fā)布,共享了這個(gè)類似的問題。”Git維護(hù)者JunioHamano在郵件列表中寫道。
該漏洞需要結(jié)合一些社會(huì)工程學(xué)技巧才能更好的利用。
Git在其公告中警告:“惡意的攻擊者可以向受害者發(fā)送一條精心構(gòu)造的ssh://URL鏈接,當(dāng)受害者訪問這條URL則會(huì)觸發(fā)漏洞導(dǎo)致執(zhí)行惡意代碼”。
攻擊者通過精心構(gòu)造一個(gè)"ssh://..."URL鏈接發(fā)送給受害者,如果受害者訪問了這個(gè)URL,則會(huì)導(dǎo)致惡意指令在客戶端執(zhí)行。
惡意URL可以放在項(xiàng)目的".gitmodules"文件中,受害者執(zhí)行“gitclone--recurse-submodules”則會(huì)觸發(fā)該漏洞。
ApacheSubversion(SVN)1.9.7修補(bǔ)了CVE-2017-9800問題,它與Git中修補(bǔ)的內(nèi)容是類似的。
“在svn:externals和svn:sync-from-url中通過構(gòu)造惡意svn+sshURL則會(huì)導(dǎo)致客戶端任意代碼執(zhí)行”在此次SVN更新中修復(fù)了該安全問題。
開源的Mercurial版本控制系統(tǒng)在4.3和4.2.3修復(fù)了該漏洞,漏洞編號(hào)為CVE-2017-1000115。