溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Jenkins插件漏洞的示例分析

發(fā)布時(shí)間:2021-12-22 16:36:49 來源:億速云 閱讀:235 作者:小新 欄目:安全技術(shù)

這篇文章主要介紹Jenkins插件漏洞的示例分析,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

   Jenkins是一個(gè)廣泛使用的開源自動(dòng)化服務(wù)器,它允許DevOps開發(fā)人員高效、可靠地構(gòu)建、測試和部署軟件。

   為了充分利用Jenkins的模塊化架構(gòu),開發(fā)人員利用插件來擴(kuò)展其核心功能。截至目前,Jenkins的插件索引中有1600多個(gè)社區(qū)貢獻(xiàn)的插件。其中一些插件存儲(chǔ)未加密的純文本憑據(jù)。在數(shù)據(jù)泄露的情況下,網(wǎng)絡(luò)犯罪分子可以在用戶不知情的情況下訪問這些信息。

我們將專門討論以下信息泄露漏洞以及受影響的相應(yīng)插件:

Jenkins插件漏洞的示例分析

在撰寫本文時(shí),Port Allocator、testlink和caliper-ci插件中的漏洞尚未修復(fù)。當(dāng)前版本的eggplant插件已棄用。

訪問存儲(chǔ)的憑據(jù)

可以利用Jenkins插件漏洞獲取用戶憑據(jù)。當(dāng)具有擴(kuò)展讀取權(quán)限或訪問主文件系統(tǒng)的用戶憑據(jù)泄漏時(shí),攻擊者也可訪問其他集成服務(wù),尤其是當(dāng)用戶對(duì)不同平臺(tái)或服務(wù)使用相同的密碼時(shí)。

插件配置通常以XML文件的形式存儲(chǔ)在$jenkins_home root中,該文件定義了每個(gè)插件結(jié)構(gòu)和設(shè)置。通常插件的配置保存為工作配置文件的一部分,例如$jenkins_home/job s/new job/config.xml。如果憑證是插件配置的一部分,那么它們應(yīng)該以加密的形式存儲(chǔ),而對(duì)于Gogs, Port Allocator, Caliper CI, TestLink, and eggPlant插件則不是這樣。

憑證存儲(chǔ)在未加密的純文本中:

存儲(chǔ)憑據(jù)的正確方法是將其委托給第三方憑據(jù)提供程序,然后由配置文件中的CredentialSid引用該插件。

如果用戶能夠讀取配置文件,則只能查看CredentialSid引用,實(shí)際憑證存儲(chǔ)在引用中。

Jenkins插件漏洞的示例分析

包含在默認(rèn)建議插件列表中的憑據(jù)插件用于存儲(chǔ)加密的憑據(jù)。以下描述了憑據(jù)存儲(chǔ)的詳細(xì)信息。

Jenkins插件漏洞的示例分析

此插件將加密的憑據(jù)存儲(chǔ)在$jenkins_home/credentials.xml中。

Jenkins插件漏洞的示例分析

在上面的示例中,密碼存儲(chǔ)以base64為編碼。通過使用base64解碼器,我們可以觀察到某些不可打印的字符被編碼。

Jenkins插件漏洞的示例分析

事實(shí)上,加密的密碼和加密元數(shù)據(jù)是使用base64編碼的。

用于解密的密鑰是在Jenkins中硬編碼的。Jenkins的不同安裝會(huì)導(dǎo)致不同的key。密鑰被加密存儲(chǔ)在$jenkins_home/secrets/hudson.util.secret文件中。hudson.util.secret文件是通過aes使用從主密鑰派生的密鑰加密的,這在每個(gè)jenkins安裝中也有所不同。

這意味著,保護(hù)$jenkins_home/secrets目錄對(duì)于防止泄露存儲(chǔ)的憑證至關(guān)重要。在master上執(zhí)行作業(yè)或構(gòu)建可能會(huì)影響Jenkins的整體安全性,例如安裝插件、創(chuàng)建新作業(yè)、讀取和刪除憑據(jù)以及其他私有數(shù)據(jù)。在master上運(yùn)行的作業(yè)還可以授予較低訪問權(quán)限,并允許其使用shell命令打印數(shù)據(jù)。

安全建議

以純文本形式存儲(chǔ)的憑證可能構(gòu)成直接威脅。但是,管理員還應(yīng)該記住,有權(quán)訪問$jenkins_home/secrets目錄的用戶也可以訪問存儲(chǔ)的憑證。$jenkins\u home/hudson.util.secret和$jenkins\u home/secrets/master.key是用于解密保存的密碼的文件,它們的暴露會(huì)使攻擊者對(duì)存儲(chǔ)的密碼進(jìn)行解密。

像所有DevOps工具一樣,Jenkins應(yīng)該考慮到安全性。在其默認(rèn)設(shè)置中,Jenkins不執(zhí)行安全檢查。因此,Jenkins建議用戶執(zhí)行最佳實(shí)踐,包括對(duì)用戶進(jìn)行身份驗(yàn)證、強(qiáng)制訪問控制,而不是在大型系統(tǒng)的主節(jié)點(diǎn)上構(gòu)建。

如果作業(yè)必須在主節(jié)點(diǎn)上運(yùn)行,Jenkins建議使用作業(yè)限制插件,該插件可以基于用戶權(quán)限限制作業(yè)執(zhí)行或節(jié)點(diǎn)配置。

以上是“Jenkins插件漏洞的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI