-
1 # 零零信安
-
2 # 世嘉benson
區塊鏈代幣漏洞安全事件程式碼審計是必要條件
目前,區塊130鏈整體9370還處於6165低迷期,但是智慧合約的發展卻非常穩定,根據獵豹區塊鏈安全中心的資料,近一個月以太坊的智慧合約平均每天以2000+的數量在增長。
智慧合約漏洞雖然數量不多,但是所造成的損失是非常巨大的,這與solidity語言的特性有關,也與ERC20協議使代幣發行變得便捷有關。
智慧合約漏洞的TOP10攻擊型別為:重入攻擊、許可權控制、整型溢位、未檢查的call返回值、交易順序依賴、時間戳依賴、條件競爭、短地址攻擊、可預測的隨機處理等。
所有智慧合約事件中,最著名的當屬美鏈事件。18年4月22日下午,才發行兩個月左右的BEC美蜜合約出現重大的溢位漏洞,駭客透過合約的批次轉賬方法無限生成代幣,天量BEC從兩個地址轉出,進而引發拋售潮。當日,BEC的價值幾乎歸零。損失金額超過10億。
由於區塊鏈的“程式碼即一切”的原則,導致目前沒有有效的安全防護手段來徹底避免智慧合約安全的問題。
對於智慧合約的開發,小豹建議摒棄“敏捷開發”的理念。而採用緩慢而有條理的方法來開發智慧合約,在最初設計和編碼時,就儘量謹慎和考慮周全。
開發管理者也不要對開發人員太大的壓力(比如制定嚴格的期限等),通常來說,趕出來的東西都多多少少會有問題。
另外,在上鍊之前,找到專業的區塊鏈安全公司對智慧合約進行安全審計是最最基礎和必要的。
以下是2018年智慧合約大事件,以及相關事件的一些細節:
(1)2018年 8月22日,GOD.GAME合約遭到駭客攻擊,GOD智慧合約上的以太坊總量歸零
(2)2018年4月25日,SmartMesh 出現重大安全漏洞,導致1.4億美元損失
(3)18年4月22日下午,才發行兩個月左右的BEC美蜜合約因為存在溢位漏洞,被駭客從兩個地址不斷轉出代幣,使BEC價格幾乎歸零,損失金額總計超過10億美元。
交易所安全
據網路安全公司 CiferTrace 10月釋出的一份報告顯示,2018年前9個月,透過駭客入侵交易所竊取的加密貨幣就已達9.27億美金,已經是整個2017年的2.5倍。
南韓科技部的調查報告稱:“大部分交易所都存在安全漏洞。”
那麼,為什麼加密貨幣交易所安全問題層出不窮?
一方面,數字貨幣的匿名性,不可篡改性以及無監管特性,導致了資產轉移便捷,溯源找回難度大。另一方面,數字貨幣交易行業出現時間短,發展又非常快,利潤高,導致本來技術積累就不足的情況下,仍然忽視資訊保安方面的建設,隱藏的安全漏洞多,攻擊起來相對容易。甚至還有一些加密數字交易所甚至完全沒有安全系統。
數字貨幣交易所面臨的安全威脅主要包括:伺服器軟體漏洞、配置不當、DDoS攻擊、服務端Web程式漏洞(包括技術性漏洞和業務邏輯缺陷)、辦公電腦安全問題、內部人員攻擊等。
對於規模較大,使用者較多的交易所,還會面臨使用者被攻擊者利用仿冒的釣魚網站騙取認證資訊的問題。
而針對這些安全威脅,小豹建議交易所在面向使用者之前,先進行滲透測試,程式碼審計等安全服務,挖掘並修復系統存在的安全漏洞。
另外,建議交易所對所有正式入職的員工進行必要的基礎的安全培訓。
最後,針對數字虛擬幣交易的網民,建議大家主動學習安全知識,並在電腦端、手機端使用安全軟體,千萬不要自信“裸奔”,以避免掉進網路釣魚陷阱以及錢包被盜事件的發生。
以下是2018年加密貨幣交易所被盜事件,以及相關事件的具體細節。
(1)1月,日本最大的數字加密貨幣交易所 Coincheck 被盜走價值5.34億美元的XEM。Coincheck 是日本第二大交易所,在之後的官方釋出會上,Coincheck 表示,XEM 被盜是因為儲存 XEM 的熱錢包的私鑰被駭客所竊取,但是沒有其他幣種被盜。受此事件影響,XEM 當天下跌9.8%。
(2)2月11日,義大利加密貨幣交易所 BitGrail 被攻擊,價值 1.7 億美元的加密貨幣 NANO 被盜。
(3)3月7日,Binance 遭到駭客入侵,駭客透過控制幣安部分賬戶,賣出這些賬戶持倉的BTC,買入 VIA 幣,導致 VIA 逆市大漲。幣安將異常交易進行了回滾處理,但此事件依然引起市場恐懼,隨後幾天比特幣跌幅超過15%。
(4)4月1日,Bit-Z 遭遇駭客攻擊,未造成資金損失。為此 Bit-Z 專門設立了10000個 ETH 安全基金,用於獎勵安全漏洞提交者。這筆獎勵在當時價值400萬美金。
(5)4月13日,印度三大比特幣交易所之一 Coinsecure 在官網釋出公告稱,該交易所438個 BTC 失竊,價值約330萬美元。該交易所首席安全官 Amitabh Saxena 被列為嫌疑人。這是印度最大的加密貨幣被盜事件。
(6)6月5日,Bitfinex 遭到“拒絕服務(denial-of-service)”攻擊,Bitfinex 隨即暫停了交易所的所有交易。
(7)6月10日,南韓數字加密貨幣交易所 Coinrail 遭到駭客攻擊,損失超過5000萬美元。Coinrail 加密貨幣總量的70%被儲存在冷錢包,被盜總量的三分之二已被追回。
(8)6月20日,南韓加密貨幣交易所 Bithumb 被駭客攻擊,價值3000萬美元的加密貨幣被盜,這是 Bithumb 第三次被駭客攻擊。
此前,該交易所還遭受了兩次“駭客攻擊”。
第一次:2017年4月,Bithumb 某員工電腦被黑,導致超過3萬名使用者的資料被竊,Bithumb 也因此被南韓監管機構罰款5.5萬美元。
第二次:2017年12月22日,南韓MBC電視臺僱傭了一家安保公司,對包括Bithumb 在內的5家南韓交易所進行安全測試。該安保公司成功“黑入”包括Bithumb 在內的5家交易所,並獲取了部分使用者資料和資金。受僱“駭客”聲稱僅使用了“基本的駭客技巧”。
但是,安全問題並未引起交易所足夠重視,這才導致了2018年6月份的駭客事件發生。
(9)9月20日,日本數字貨幣交易所 Zaif 宣佈遭受駭客攻擊,損失5967萬美元。其中1959萬美元屬於該交易所自有資金,其餘4007萬美元屬於客戶資金。
區塊鏈程式碼審計成就完美合約
區塊鏈智慧合約透過程式碼建立一套“法律合同”,軟體工程師創造一個完全無誤差的程式碼是不可能的,程式設計師總存在疏忽的地方。紅岸科技和國防科技大學的Ulord區塊鏈專案研究團隊對市面上的區塊鏈智慧合約進行了審計,他們的研究發現:
對所有的程式設計師來說,寫一個沒有bug的程式碼實在是太難了,即使採取了所有可能的預防措施,在複雜的軟體中也總會出現沒有預料到的執行路徑或可能的漏洞。
這是為什麼要程式碼審計最重要的原因之一。
區塊鏈中的 “法律合同”是一項受解釋和仲裁的約束,程式設計師很難去創造一個縝密的合約。在任意一個大的合約裡,可能出現的文稿錯誤以及一些條款需要解釋和仲裁。
同時,軟體工程師不是法律專家,反之亦然。起草一份好的合約需要各種各樣的技能,不一定與編寫的計算機程式相容。
因此,智慧合約程式碼在一定程度上都可能存在安全隱患。傳統的智慧合約程式碼審計主要利用人工,依靠code reviewer閱讀智慧合約程式碼。人工程式碼審計最終還是依賴人的經驗,程式碼審計效果不明顯,針對目前ETH大量代幣的智慧合約,人工審計工作量大,難以高效的完成工作。
在區塊鏈領域從事程式碼審計業務的專案公司較少,目前每個代幣在上交易所之前,其區塊鏈智慧合約程式碼由交易所進行審察和判定,但交易所有時並不能完全有效地判斷合約是否完美。
-
3 # Sjycalex
新發專案程式碼審計的重要性
隨著區塊鏈行業的發展,專案如雨後春筍般應運而生,但是在大力開拓新專案的同時,158很多人沒有6917注意到程式碼審計4431這一塊,那麼什麼是程式碼審計呢?所謂程式碼審計,就是檢查原始碼的安全缺陷。那麼程式碼審計有什麼作用呢?
透過程式碼審計,檢查原始碼中的安全缺陷,檢查程式原始碼是否存在安全隱患,或者有編碼不規範的地方,透過自動化工具或者人工審查的方式,對程式原始碼逐條進行檢查和分析。
程式碼審計是一種以發現程式錯誤,安全漏洞和違反程式規範為目標的原始碼分析,能夠找到普通安全測試所無法發現的安全漏洞。
那麼,為什麼需要做程式碼審計?程式碼審計能帶來什麼好處?
據統計,早在2018年全球區塊鏈領域發生近百起安全事件,損失超20億美元,相較於2017年增長了538%。比特幣的底層技術“區塊鏈”面臨著來自資料層、網路層、共識層、激勵層、合約層、應用層的安全風險,安全攻擊方式層出不窮,防不勝防。安全攻擊主要發生在應用層,其中智慧合約是區塊鏈安全的重災區。
99%的大型網站以及系統都被拖過庫,洩漏了大量使用者資料或系統暫時癱瘓,近日,英國機場遭勒索軟體襲擊,航班資訊只能手寫。
提前做好程式碼審計工作,非常大的好處就是將先於駭客發現系統的安全隱患,提前部署好安全防禦措施,保證系統的每個環節在未知環境下都能經得起駭客挑戰,進一步鞏固客戶對企業及平臺的信賴。
回覆列表
Gartner VPT技術原理——Tenable:專注於構成風險最大的漏洞
Gartner表示:“到2022年,使用基於風險的漏洞管理方法的組織,會減少80%的被攻擊可能”【選擇脆弱性評估解決方案的指南,Gartner,2019年4月】
傳統的漏洞管理方法無法適應當今的數字時代不管您在網路安全領域工作了多久,您都一定知道漏洞管理對於識別和降低網路風險至關重要。為什麼呢?因為在每一次重大的網路攻擊的背後,都有一個未被解決的漏洞。
但是,有一個大問題:在過去的20年裡,攻擊面在不斷演變,漏洞管理人員卻未能跟上演變的步伐。
當今的IT環境正在不斷變化。在數字轉型的推動下,現在我們的世界使用程式碼來編寫的,充斥著新技術、新平臺和新裝置。聯想雲、物聯網、可移動的、網路應用程式——甚至連工業裝置也能連線到這個混亂的景觀中。
不同型別的資產不斷的進入和離開企業當中。最重要的是,有些資產是短暫的——只持續幾秒鐘或幾分鐘。
再多的資產,再多的漏洞,事情也不會更復雜了。
考慮到不斷迅速演變膨脹的攻擊面,漏洞數量的增長也就不足為奇了。事實上,這個數字已經完全令人生畏了。從2016年到2018年,新發布的漏洞從每年9,837【脆弱性情報報告,Tenable研究報告,2018】激增到每年16,500個。【美國國家漏洞庫(NVD)】平均而言,這意味著企業每天會在960個IT資產中發現870個漏洞。【Tenable研究報告】
除了挑戰之外,漏洞的嚴重成都似乎還在增加。由於行業標準的常見漏洞評分系統(CVSS)發生了變化,大多數的漏洞現在被歸類為高危或嚴重漏洞。根據CVSSv3評級,60%的漏洞被認為是高危或者嚴重等級,而CVSSv2為31%(見圖1)。【脆弱性情報報告,Tenable研究報告,2018】
圖1:CVSSv2與CVSSv3的分類
因此,安全團隊正在處理的漏洞數量超過了他們可以處理的。太過於分散這些有限且有價值的資源會迅速導致低效率和工作過度勞累。由於CVSS是沒有風險區分的,你最不需要做的就是浪費寶貴的時間來修復那些幾乎沒有風險的漏洞。
與攻擊者的競爭仍在繼續,並且他們處於領先三個月期間,在分析了大約20萬個漏洞評估掃描中最常見的50個嚴重和高危漏洞後,Tenable研究發現,攻擊者比防禦者領先了7天的時間。【量化攻擊者的先發優勢,Tenable研究報告,2018】駭客在安全團隊意識到他們面臨風險之前就已經搶先開始利用漏洞。
如果不能不間斷的瞭解困擾組織的漏洞,就不可能知道自己的弱點在哪裡。傳統的漏洞管理主要是以遵從法規為導向,旨在證明遵守法規遵並檢查所有制定專案。這意味著漏洞掃描和補救計劃通常是間斷性的,被審計週期打斷,使安全人員痛苦地意識不到重大的漏洞。幸運的是,有一種方法可以克服這些危險——從本質上改變了攻擊者的優勢。
利用基於風險的漏洞管理來抓住這個機會每個安全行業的從業者都知道不可能完全躲避攻擊。但是積極防禦的方法是接下來最好的選擇。最簡單的實現方法是什麼呢?就是基於風險的漏洞管理。
透過進行基於風險的漏洞管理,您可以自信地回答這三個關鍵問題:
1、業務暴露點在哪裡?
2、基於可被利用性,我們應該優先考慮哪些問題?
3、如果漏洞被利用了,會對業務產生什麼影響?
基於風險的漏洞管理可以幫助您減少大量的漏洞,為您提供快速、有效地採取修復行動所需的準確關注點。
“開始將其作為一個關鍵指標進行監控:您有多少可被利用的漏洞在網路”
——Gartner【“Gartner的脆弱性管理戰略遠景”,Craig Lawson; Gartner安全與風險管理峰會演講,2019年8月,澳洲。悉尼】
首先,解決基本的可見性問題您無法保護您看不見的東西,也無法解決您不知道的問題。然而,在整個不斷擴充套件的攻擊面上獲得全面的可見性並不是一件容易的事情。
攻擊面和威脅環境都在不斷變化,所以不及時的評估為錯誤的資訊決策留下了很大的空間。基於風險的漏洞管理遠遠超出了傳統漏洞管理提供的靜態、分散的可見性,並提供了總體動態檢視——新增雲、容器、web應用程式、物聯網、操作技術以及任何計算機平臺上的任何資產(見圖2)。
無法使用傳統的漏洞管理攻擊來有效地檢視和分析紅色圈中的資產:
圖2:透過進行基於風險的漏洞管理來消除所有盲點
透過實施基於風險的漏洞管理,您可以準確地檢視組織中的所有潛在風險。
然後,回答優先順序問題基於風險的漏洞管理也回答了以下問題:“我們首先應該解決什麼?”僅使用CVSS來確定優先順序還不足夠,因為它僅限於漏洞可能引入的風險的理論觀點,因此將大多數漏洞歸類為高危或嚴重等級。CVSS不考慮該漏洞是否正在網際網路上被利用。它也不考慮該漏洞是否存在於關鍵業務或系統上。
例如,CVSSv2和CVSSv3優先考慮遠端可利用漏洞,不需要使用者互動。但是,攻擊者更喜歡使用經過驗證的、能夠持續利用的漏洞。他們通常利用客戶端漏洞,透過網路釣魚攻擊、惡意軟體驅動器、惡意轉換等方式執行。如果僅基於CVSS確定優先順序(例如,修補所有評分為9及以上的漏洞),最終會浪費時間和精力去修復永遠也不會被利用的和攻擊者不喜歡利用的漏洞。要有效地確認優先順序,您需要一種風險驅動的方法,對攻擊者關注的關鍵資產和漏洞進行優先順序排序。
透過基於風險的漏洞管理,您可以縮小嚴重漏洞的範圍,並從理論中提取實際風險(參見圖3)。它使用機器學習的方法自動分析、關聯漏洞的嚴重性、威脅程度和資產重要性,基於風險為您提供明確的重點修復指導。
圖3:使用 CVSS 與基於風險的優先順序排序對比
鑑於當今攻擊面產生的海量資料,資源緊張的團隊不可能全部手動處理。讓機器學習進行分析和關聯,這樣您就可以與 IT團隊合作修復重要的漏洞。
“隨著我們組織的有機發展,從傳統系統轉移到雲環境,如GCP、亞馬遜雲和微軟Azure,我們的攻擊面正在迅速擴大。我們有巨大數量的漏洞。最初檢測到大約25萬個漏洞,由於傳統應用程式的存在,其中一些漏洞被歸類嚴重漏洞和可利用漏洞。我的團隊必須有效地對我們的漏洞進行優先順序排序以降低我們的網路風險,並領先威脅一步。
——邁克·科斯(Mike Koss), NBrown 集團的IT安全和風險主管
基於風險與傳統漏洞管理將不可能變為可實現(並消除與 IT團隊之間的摩擦)Ponemon Institute最近的一項調查發現,51%的安全團隊花在研究人工流程上的時間多於響應漏洞,導致不可避免的響應阻塞【衡量和管理商業運營的網路風險,Ponemon Institute, 2018】。再加上行業內嚴重的技能短缺,很容易就能理解為什麼團隊效率至關重要。
基於風險的漏洞管理為您提供指導團隊所要關注的重點,同時向您展示您目前積極降低網路風險的工作成果。您會知道您正在採取的管理風險措施是正確的,因為您專注於可能被利用並造成最大傷害的少數漏洞。您還需要定期跟蹤這兩個KPI:
l 評估時間:從漏洞釋出到您的團隊評估漏洞需要多長時間?
l 修復時間:您的團隊需要多長時間來響應並與 IT團隊合作修復關鍵漏洞——這些漏洞在網際網路上被大量利用後,所造成的最大風險是什麼?
“我們不能向 IT 團隊提供一份包含10,000個“漏洞”的清單,並期望他們與我們合作。如果我給他們一份幾百個漏洞的清單,他們才會參與。”
– Dan Bowden,CISO,Sentara Healthcare
透過監控這些指標,您可以真實地瞭解哪些指標有效,哪些指標無效。這種新發現的清晰的漏洞優先順序,將使您更好地與IT團隊對話。您將與IT團隊合作修復真正需要注意的一小部分漏洞,而不是向他們扔一個包含成百上千個需要解決的漏洞的電子表格。在確定工作中的差距並朝著共同目標取得的進展時,擁有可以依賴的資料會大有不同。
衡量和管理業務系統的風險透過基於風險的漏洞管理,您將獲得保護業務系統所需的洞察力。如果業務系統的網路風險是不可被接受的,您可以快速確定將其他的安全重心集中在可以降低風險地方。
您還可以輕鬆地將攻擊面的網路風險傳達給業務領導。管理基於風險的漏洞管理計劃所依賴的資料會自動轉換為業務領導能夠理解的基於風險的指標。
想要將您的工作量直接減少97%嗎?嘗試預測優先順序。
預測優先順序結合了研究結果、威脅情報和漏洞評級,將需要立即修復的漏洞數量減少了 97%。看看它是如何工作的——檢視互動式演示。
明確您的優先順序——立即嘗試基於風險的漏洞管理大多數安全團隊表示,他們有X多人在處理Y數量的案例,或者他們的公司有Z數量的開放的嚴重漏洞。這些數字如何轉化才能使公司被攻擊的可能性降到最低?他們不知道。
僅減少數量並不能降低您的風險。消除造成直接危險的漏洞才是關鍵所在。
想了解基於風險的漏洞管理如何為您的安全團隊提供最大的幫助嗎?從今天開始吧。
文章內容譯自Tenable:《Focus on the vulnerabilities that pose the greatest risk》