如何防止企業(yè)的數(shù)據(jù)和機密從GitHub存儲庫泄露

2022-10-02    分類: 網站建設

如何防止企業(yè)的數(shù)據(jù)和機密從GitHub存儲庫泄露

研究表明,網絡攻擊者不斷在GitHub等公共代碼存儲庫中搜索開發(fā)人員可能留下的秘密,任何微小的錯誤都可能被他們利用。

安全研究員Craig Hays在疫情期間進行了一個實驗。他將其SSH用戶名和密碼泄露到GitHub存儲庫中,看看是否有網絡攻擊者可能會找到它。他認為可能需要等待幾天才會有人注意到。事實證明更加殘酷,第一次未經授權的登錄發(fā)生在其泄露用戶名和密碼之后的34分鐘內。他說:“對我來說,最讓我大開眼界的是它被利用的速度有多快?!?/p>

在最初的24小時內,六個不同的IP地址9次登錄他的帳號。一名網絡攻擊者試圖安裝僵尸網絡客戶端,另一名網絡攻擊者試圖使用其服務器發(fā)起拒絕服務攻擊。Hays還看到有人想從他的服務器竊取敏感信息,也有人只是查看信息。

實驗表明,威脅行為者不斷掃描GitHub和其他公共代碼存儲庫,尋找開發(fā)人員留下的敏感數(shù)據(jù)。隨著企業(yè)從內部部署軟件過渡到云平臺以及越來越多的開發(fā)人員在家工作,包括用戶名、密碼、Google密鑰、開發(fā)工具或私鑰在內的機密不斷增加。法國安全初創(chuàng)廠商GitGuardian公司的聯(lián)合創(chuàng)始人Eric Fourrier表示,僅在今年,數(shù)據(jù)泄露就比去年至少增加了20%,該公司主要提供掃描公共存儲庫以識別網絡攻擊者可能利用的數(shù)據(jù)的服務。

黑客如何找到GitHub的秘密

黑客知道GitHub是查找敏感信息的好地方,聯(lián)合國機構、Equifax、Codecov、星巴克和優(yōu)步等機構和組織為此付出了代價。一些企業(yè)可能會爭辯說他們不會面臨風險,因為他們不使用開源代碼,但事實上更微妙;開發(fā)人員經常將他們的個人存儲庫用于工作項目。根據(jù)針對GitHub的調查報告,85%的數(shù)據(jù)泄漏發(fā)生在開發(fā)人員的個人存儲庫中,其他15%的數(shù)據(jù)泄漏發(fā)生在企業(yè)擁有的存儲庫中。

開發(fā)人員會留下shell命令歷史、環(huán)境文件和受版權保護的內容。有時他們也會犯錯誤,因為試圖簡化流程。例如,他們在編寫代碼時可能會包含他們的憑據(jù),因為這樣更容易調試。然后,他們可能會忘記刪除并提交。即使他們稍后執(zhí)行刪除提交或強制刪除機密,這些私人信息通常仍然可以在Git歷史記錄中訪問。

GitHub上最常見的機密類型

Hays說,“我在舊版本的文件中發(fā)現(xiàn)了很多密碼,而這些密碼已被更新的、更干凈的版本替換,而這些版本中沒有密碼?!盙it提交歷史會記住所有內容,除非明確刪除它。

無論是初級開發(fā)人員還是高級開發(fā)人員都可能犯錯誤。Fourrier說。,“即使你是一位出色的開發(fā)人員,并且在安全問題上受過教育,在某些時候編碼時,可能會犯錯誤,而泄露秘密通常是人為的錯誤?!?/p> 在GitHub上發(fā)現(xiàn)的最常見的文件類型

任何開發(fā)人員都會出錯,那些剛進入職場的開發(fā)人員通常會泄露更多的機密。當Crina Catalina Bucur多年前還是一名軟件工程專業(yè)的學生時,就開設了一個用于開發(fā)目的的AWS賬戶,但不久收到了2000美元的賬單,其中只有0.01美元是她應該支付的費用。

她說,“我開發(fā)的項目是一個聚合文件管理平臺,用于大約10種云存儲服務,包括亞馬遜的S3。這發(fā)生在GitHub提供免費私有存儲庫之前,所以我的AWS訪問密鑰和相應的密鑰與代碼一起發(fā)布到我的公共存儲庫。而我當時并沒有考慮太多?!?/p>

幾天后,她開始收到來自AWS的電子郵件,警告她的賬戶已被盜用,但她沒有仔細閱讀這些郵件,直到收到賬單。對她來說,幸運的是AWS公司免除了其他額外費用。但Bucur還是犯了一些被黑客利用的錯誤,包括為方便起見對密鑰進行硬編碼并將它們發(fā)布到公共代碼存儲庫中。

Hays表示,如今想要發(fā)現(xiàn)此類錯誤的黑客只需要很少的資源。他在業(yè)余時間是一名漏洞的賞金獵人,并且經常依賴開源情報(OSINT),這些都是可以在網上找到的信息。他說,“我選擇的方法是使用標準的Github.com界面人工搜索,我使用搜索運算符限制特定的文件類型、關鍵字、用戶和組織,具體取決于針對的公司?!?/p>

一些工具可以使過程更快、更有效。HUMAN公司的安全研究員Gabriel Cirlig說:“網絡攻擊者運行自動機器人來抓取GitHub內容并提取敏感信息。這些機器人可以一直運行,這意味著黑客可以在幾秒鐘或幾分鐘內檢測到錯誤?!?/p>

一旦發(fā)現(xiàn)秘密,網絡攻擊者就可以輕松利用它。Fourrier說,“例如,如果找到AWS密鑰,就可以訪問某公司的所有云計算基礎設施。而針對為特定公司工作的開發(fā)人員并嘗試查看該公司的一些資產非常簡單?!备鶕?jù)機密的性質,黑客可以做很多事情,其中包括發(fā)起供應鏈攻擊和危害企業(yè)的安全。

隨著機密數(shù)量的增加,企業(yè)需要在為時已晚之前更好地發(fā)現(xiàn)它們。GitHub有自己的“秘密掃描合作伙伴程序”,它可以查找類似密碼、SSH密鑰或API令牌的文本字符串。GitHub與40多家云計算服務提供商合作,自動修復公共存儲庫中公開的API密鑰。

GitHub發(fā)言人表示,“我們一直在尋求擴大這些合作伙伴關系,以更好地保護生態(tài)系統(tǒng)。我們目前每天注銷100多個公開的GitHub API密鑰,在我們這樣做時,通常會安全地向新開發(fā)人員介紹憑證安全的重要性?!?/p>

Hays表示,“秘密掃描合作伙伴程序”是朝著正確方向邁出的一步,因為它使網絡攻擊者更難找到有效憑據(jù)。不過他表示,該計劃并不好。他說,“當人們不小心檢查他們自己的SSH密鑰、密碼、令牌或任何其他敏感的東西時,仍然留下了空白。這更難以檢測和管理,因為沒有合作的憑證提供者可以提出諸如‘這是真的嗎?想撤銷它嗎?我們中的一方應該告訴所有者嗎?’之類的問題?!?/p>

與此同時,他建議開發(fā)人員注意他們編寫和部署代碼的方式。他說,“首先要做的事情之一是將正確的設置添加到.gitignore文件中,這個文件告訴Git和GitHub.com哪些文件不應該被跟蹤和上傳到互聯(lián)網。”

一些安全初創(chuàng)廠商也在試圖填補這一空白。GittyLeaks、SecretOps、gitLeaks和GitGuardian旨在為業(yè)務用戶和獨立專業(yè)人士提供更多的保護層。有些人可以在幾秒鐘內檢測到泄露的機密,從而使開發(fā)人員和公司能夠立即采取行動。Fourrier說,“我們在整個開發(fā)生命周期、Docker容器、不同類型的數(shù)據(jù)中掃描軟件上的所有代碼,我們找到并試圖撤銷它們?!?/p>

在理想情況下,最好的策略是根本不泄露數(shù)據(jù)或盡可能少地泄露,提高對這一問題的認識有助于做到這一點。Cirlig說:“教育開發(fā)人員編寫安全代碼并主動阻止攻擊總比事后應對數(shù)據(jù)泄露事件要好得多?!?/p>

標題名稱:如何防止企業(yè)的數(shù)據(jù)和機密從GitHub存儲庫泄露
分享網址:http://www.bm7419.com/news2/200552.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供微信小程序、域名注冊、虛擬主機、定制網站、做網站網站建設

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

網站建設網站維護公司