開源軟件信息安全實(shí)踐與思考_第1頁
開源軟件信息安全實(shí)踐與思考_第2頁
開源軟件信息安全實(shí)踐與思考_第3頁
開源軟件信息安全實(shí)踐與思考_第4頁
開源軟件信息安全實(shí)踐與思考_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、開源軟件信息安全實(shí)踐與思考技術(shù)創(chuàng)新,變革未來1、開源軟件安全現(xiàn)狀2、開源軟件安全實(shí)踐3、思考與展望目錄1、開源軟件安全現(xiàn)狀2、開源軟件安全實(shí)踐3、思考與展望目錄開源軟件數(shù)量飛速增長注:數(shù)據(jù)來源于SONATYPE 2019 STATE OF THE SOFTWARE SUPPLY CHAIN REPORTGartner:99%的組織在其IT系統(tǒng)中使用了開源軟件Gartner:現(xiàn)代軟件大多數(shù)是被“組裝”出來的,不是被“開發(fā)”出來的Forrester:軟件開發(fā)中,80-90%的代碼來自于開源軟件開源軟件已經(jīng)成為IT系統(tǒng)建設(shè)必不可少的部分注:數(shù)據(jù)來源于SONATYPE 2019 STATE OF TH

2、E SOFTWARE SUPPLY CHAIN REPORT開源軟件安全形勢嚴(yán)峻開源軟件安全形勢嚴(yán)峻1、開源軟件安全現(xiàn)狀2、開源軟件安全實(shí)踐奇安信開源項(xiàng)目檢測計(jì)劃奇安信固件安全檢測計(jì)劃企業(yè)開源軟件安全治理實(shí)踐3、思考與展望目錄美國:自2006年開始,美國國土安全部資助開展了“開源項(xiàng)目檢測計(jì)劃”, 目前已檢測7000多款開源軟件2015年初,奇安信代碼安全實(shí)驗(yàn)室基于自研產(chǎn)品和漏洞研究能力,發(fā)起了國 內(nèi)最大的“開源項(xiàng)目檢測計(jì)劃”,該計(jì)劃目前已檢測3000余款開源項(xiàng)目,積 累了大量的開源軟件安全缺陷基礎(chǔ)數(shù)據(jù)2018開源項(xiàng)目檢測計(jì)劃數(shù)據(jù):缺陷密度:14.22/KLOC,高危缺陷密度:0.72/KLOC

3、十類重要缺陷檢出率:61.7%奇安信開源項(xiàng)目檢測計(jì)劃開源軟件之間依賴關(guān)系錯綜復(fù)雜,漏洞的隱蔽傳染和放大效果顯著,給漏洞 發(fā)現(xiàn)、漏洞消控帶來了很大的挑戰(zhàn)某個(gè)開源軟件出現(xiàn)漏洞,你可能會“躺槍”奇安信開源項(xiàng)目檢測計(jì)劃開源組件功能介紹歷史漏洞直接關(guān)聯(lián) 組件數(shù)量間接關(guān)聯(lián) 組件數(shù)量Jsoup一款Java 的HTML解析器,可直接解析某 個(gè)URL地址、HTML文本內(nèi)容。在Web開 發(fā)中應(yīng)用廣泛。CVE-2015-6748等182916607Log4jApache的一個(gè)開源項(xiàng)目,用于日志控制 生成等的管理和操作。 廣泛應(yīng)用于 Apache的Java日志管理中。、CVE-2017-5645等414346006C

4、ommons Collections一款對JDK已有的數(shù)據(jù)結(jié)構(gòu)進(jìn)行補(bǔ)充和擴(kuò) 展的集合庫,廣泛應(yīng)用于Java程序開發(fā)中。CVE-2015-6420等492281374MySQLConnector/ JMySQL的官方JDBC驅(qū)動程序,廣泛用于 MySQL數(shù)據(jù)存儲中。CVE-2019-2692等360736049奇安信固件安全檢測計(jì)劃108926054534541403836LINUXLINUXLINUXLINUXLINUXLINUXLINUXLINUXLINUXLINUX KERNEL KERNEL KERNEL KERNEL KERNEL KERNEL KERNEL KERNEL KERNEL

5、 KERNEL .222.6.302.6.3.353.10.492.6.3.20838813522460436427339298146103BUSYBOX OPENSSL IPTABLES DNSMASQ LIBPCAP OPENSSHCURLUDHCPSAMBA PROFTPD奇安信代碼安全實(shí)驗(yàn)室2019年初發(fā)起的,針對聯(lián)網(wǎng)設(shè)備固件的安全檢測計(jì)劃, 其中一項(xiàng)重要檢測內(nèi)容是針對固件中引用的開源軟件的檢測和漏洞分析2019年上半年,選取了13個(gè)廠商935個(gè)設(shè)備的最新版固件進(jìn)行分析(以無線路由器、智能攝像頭等可公開獲得固件的設(shè)備為主)89.6

6、%基于Linux開源生態(tài)使用的開源軟件版本五花八門,Linux內(nèi)核版本50個(gè),版本最多的開源軟件是Openssl,存 在77個(gè)版本Linux Kernel版本TOP 10開源軟件使用TOP 1086.4%的固件存在至少一個(gè)老舊開源軟件漏洞漏洞最多的固件存在74個(gè)老舊開源軟件漏洞奇安信固件安全檢測計(jì)劃開源軟件CVE漏洞數(shù)漏洞影響 固件數(shù)固件 總數(shù)OpenSSL200745813OpenSSH92291427curl63235339Dnsmasq13294460BusyBox1280883813989766850494330OPENSSL 0.9.8E OPENSSL 1.0.2L OPENSSL

7、 1.0.1H OPENSSL 0.9.8Z OPENSSL 1.0.1A- OPENSSL 0.9.8B OPENSSL 1.0.1L OPENSSL 0.9.7EFOpenSSL版本排行3個(gè)大型開發(fā)團(tuán)隊(duì),67個(gè)軟開項(xiàng)目具體實(shí)踐內(nèi)容:1、開源軟件識別與關(guān)聯(lián)分析用了哪些?2、開源軟件漏洞分析有沒有漏洞?3、開源軟件漏洞修復(fù)怎么修復(fù)?企業(yè)開源軟件安全治理實(shí)踐100%使用開源軟件67個(gè)項(xiàng)目均使用了開源軟件,無一例外使用的開源軟件數(shù)量,最少的2個(gè),最多的567個(gè),平均157個(gè)使用的開源軟件的數(shù)量超出自己的想象層層嵌套的組件依賴當(dāng)前的開發(fā)生態(tài),包管理器替程序員自動做了很多他并沒有意識到的決定開源軟件資

8、產(chǎn)的梳理需要系統(tǒng)化的方法,自動化的工具開源軟件識別和關(guān)聯(lián)分析項(xiàng)目我以為我用了這么多實(shí)際上我用了這么多項(xiàng)目178252項(xiàng)目278237項(xiàng)目324113項(xiàng)目430178項(xiàng)目530106項(xiàng)目62214588%的項(xiàng)目因使用開源軟件引入了安全漏洞59個(gè)項(xiàng)目存在開源軟件漏洞,占比88%53個(gè)項(xiàng)目存在高危以上漏洞,占比79%28個(gè)項(xiàng)目存在超危漏洞,占比42%平均每個(gè)項(xiàng)目存在44個(gè)開源軟件漏洞漏洞最多的項(xiàng)目存在149個(gè)開源軟件漏洞開源組件漏洞情報(bào)的收集和漏洞精確匹配是一個(gè)很大的挑戰(zhàn)漏洞情報(bào)源分散組件間的依賴關(guān)聯(lián),給漏洞情報(bào)的建立帶來很大挑戰(zhàn)開源軟件漏洞分析Kubernetes Kubelet本地提權(quán)漏洞NVD

9、的描述沒有?Github上的詳細(xì)信息In kubelet v1.13.6 and v1.14.2, containers for pods that do not specify an explicit runAsUserattempt to run as uid 0 (root) on container restart, or if the image was previously pulled to the node. If the podspecified mustRunAsNonRoot: true, the kubelet will refuse to start the cont

10、ainer as root. If the pod did not specify mustRunAsNonRoot: true, the kubelet will run the container as uid 0./kubernetes/kubernetes/issues/78308CVE-2019-11245Apache Log4j安全漏洞NVD的描述In Apache Log4j 2.x before 2.8.2, when using the TCP socket server or UDP socket server to receive serialized log event

11、s from another application, a specially crafted binary payload can be sent that, when deserialized, can execute arbitrary code.實(shí)際上,Apache Ant的1.9.9/1.10.1以及之前的版本,都會受到這個(gè)漏洞的影響,因?yàn)锳pache Ant Log4jListener中使用了Apache Log4j庫的受影響版本而我們從漏洞庫的相關(guān)信息,找不到任何關(guān)于apache ant的蛛絲馬跡CVE-2017-5645Pippo安全漏洞?NVD的描述parseObject i

12、n Fastjson before 1.2.25, as used in FastjsonEngine in Pippo1.11.0 and other products, allows remote attackers to execute arbitrary code via a crafted JSON request, as demonstrated by a crafted rmi:/ URI in the dataSourceName field of HTTP POST data to the Pippo /json URI, which is mishandled in Aja

13、xApplication.java.實(shí)際上根源是Fastjson的反序列化漏洞/alibaba/fastjson/wiki/security_update_20170315我們從漏洞庫的參考信息中可以得到一些線索,但是其NVD給出的受影響產(chǎn)品版本中, 還是不包含F(xiàn)astjson的版本而Fastjson這個(gè)反序列化的洞,一直在持續(xù)進(jìn)行修復(fù)/alibaba/fastjson/wiki/update_faq_20190722/alibaba/fastjson/releasesCVE-2017-18349謹(jǐn)慎,謹(jǐn)慎,再謹(jǐn)慎不能簡單通過升級新版本或打補(bǔ)丁來修補(bǔ)漏洞修復(fù)漏洞前,需全面評估對業(yè)務(wù)的影響業(yè)務(wù)系

14、統(tǒng)復(fù)雜,不同部件協(xié)同工作,需考慮兼容性Spark,Cassandra,Spark-Cassandra-Connector開源軟件間的依賴關(guān)聯(lián),牽一發(fā)動全身A被B,C,D依賴需求:精準(zhǔn)修復(fù)漏洞,不更改功能特性需要專業(yè)的漏洞研究隊(duì)伍開源軟件漏洞修復(fù)2019.04.10 Jquery 發(fā)布版本3.4.0,更新內(nèi)容包含對CVE-2019-11358的修 復(fù),但是沒有針對1.x、2.x版本的補(bǔ)丁客戶軟開項(xiàng)目中使用1.x,2.x 版本,無法升級到最新版本,故需要漏洞分析 專業(yè)人員提供修復(fù)解決方案分析漏洞原理,完成漏洞詳情分析報(bào)告詳細(xì)分析官方修復(fù)代碼,基于此制作多版本修復(fù)patch對patch進(jìn)行兼容性驗(yàn)證

15、,分析驗(yàn)證patch后對原有系統(tǒng)產(chǎn)生的影響制作POC,以驗(yàn)證patch的有效性Patch+驗(yàn)證生效CVE-2019-11358 JQUERY 原型污染漏洞修復(fù)1、開源軟件安全現(xiàn)狀2、開源軟件安全實(shí)踐3、思考與展望目錄開源軟件的使用形成了非常寬廣、復(fù)雜、隱蔽的攻擊面代碼的復(fù)用漏洞的復(fù)用,類似病毒的傳播效應(yīng)國內(nèi)大型金融機(jī)構(gòu)開源軟件使用統(tǒng)計(jì)直接使用的開源軟件1500+,再加上依賴的開源軟件?漏洞都修復(fù)了嗎?版本繁多,最多的一個(gè)開源軟件,有14個(gè)版本同時(shí)在使用,考慮了運(yùn)維成本嗎,考 慮了安全問題嗎?開源軟件安全治理工作應(yīng)盡量左移從軟件開發(fā)階段就建立開源軟件使用的統(tǒng)一策略用什么、用什么版本、確認(rèn)來源建立

16、安全準(zhǔn)入機(jī)制,引入開源軟件前先評估安全風(fēng)險(xiǎn)持續(xù)檢測,持續(xù)跟蹤漏洞情報(bào)和響應(yīng)外包開發(fā)的軟件應(yīng)在立項(xiàng)之初提出要求,并在驗(yàn)收時(shí)進(jìn)行檢查開源軟件安全治理是軟件安全開發(fā)的首要事軟件開發(fā)中,開源軟件的不當(dāng)使用是最大的安全風(fēng)險(xiǎn)開源軟件治理對安全的促進(jìn)作用成效顯著,立竿見影開源軟件安全治理應(yīng)盡量左移漏洞情報(bào)CVE,開源軟件的五種漏洞Nday:已公開的漏洞,通常CVE收錄0Day:未公開的漏洞0.5Day:半公開的漏洞,隱藏在代碼提交日志、缺陷管理系統(tǒng)等關(guān)聯(lián)漏洞:由組件依賴導(dǎo)致的漏洞克隆漏洞:代碼Copy&Paste導(dǎo)致的漏洞要描述Dev階段的安全威脅,漏洞庫需要全新升級多方數(shù)據(jù)來源,尤其是開源開發(fā)社區(qū)的信息來源漏洞情報(bào)數(shù)據(jù)的治理,建立漏洞-組件之間的全關(guān)聯(lián)CPE/CVE - new SWID/VULID,自動化是目標(biāo),還要保持兼容開源軟件漏洞

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論