比特幣價格 比特幣價格
Ctrl+D 比特幣價格
ads
首頁 > DAI > Info

區塊鏈:首發 | 區塊鏈瀏覽器如何防止被DoS攻擊?_API

Author:

Time:1900/1/1 0:00:00

說到瀏覽器,大家腦海里蹦出來的一定是“百度一下,你就知道”、“上網從搜狗開始”......

這些家喻戶曉甚至大爺都說的上來的瀏覽器,是互聯網的代言人,更是互聯網的入口。

但是如果說有誰和互聯網是勾肩搭背的關系,那就是現今如日中天的區塊鏈技術了。

互聯網改變生活,區塊鏈技術改變互聯網。那么毫無疑問,作為互聯網的入口,瀏覽器必然也與區塊鏈技術脫不開關系。由此誕生的區塊鏈瀏覽器,作為大家耳熟能詳的落地產品,更是為區塊鏈用戶帶來了相當程度的便利。

區塊鏈瀏覽器安全性如何

區塊鏈瀏覽器是區塊鏈的搜索引擎,用戶可使用此工具搜索區塊鏈上的特定信息。

舉個例子,Etherscan是以太坊的區塊鏈瀏覽器,通過Etherscan,用戶可以輕松獲取以以太坊上的區塊、地址、交易和其他活動的信息。也就是說,區塊鏈瀏覽器,更像是一個區塊鏈官方查詢網站。

那么在如今大部分區塊鏈應用都面臨安全威脅的場景下,區塊鏈瀏覽器的安全性又如何呢?

區塊鏈瀏覽器應用程序的可被攻擊點相對較少。原因如下:

不涉及身份驗證或授權,因此不會泄漏任何私人信息;

Web框架的廣泛使用使得XSS的發生可能性降低;

這代表著區塊鏈瀏覽器不會受到攻擊嗎?

還是說,被攻擊了也沒事?

答案是:No

區塊鏈瀏覽器攻擊類型分類

先來看看區塊鏈瀏覽器可能會受到什么類型的攻擊。

因為區塊鏈瀏覽器中的大多數功能都涉及從后端數據庫中搜索數據,或直接從區塊鏈節點中查詢數據。而當提到搜索查詢功能時,大家一般會想到兩個可能存在的漏洞:

LBANK藍貝殼于3月22日18:00首發 DORA,開放USDT交易:據官方公告,3月22日18:00,LBANK藍貝殼首發DORA(Dora Factory),開放USDT交易,現已開放充值。

資料顯示,Dora Factory 是基于波卡的 DAO 即服務基礎設施,基于 Substrate 的開放、可編程的鏈上治理協議平臺,為新一代去中心化組織和開發者提供二次方投票、曲線拍賣、Bounty 激勵、跨鏈資產管理等可插拔的治理功能。同時,開發者可以向這個 DAO 即服務平臺提交新的治理模塊,并獲得持續的激勵。[2021/3/22 19:07:06]

SQL注入;

DoS;

然而,在考察不同的瀏覽器時,CertiK技術團隊僅發現一例SQL注入,另外超過50%的區塊鏈瀏覽器面臨著被DoS攻擊的危險。

DoS攻擊是什么

舉個通俗易懂的例子,某白胡子爺爺眼看某小丑大叔店的炸雞越賣越好,因此找了幾個混混去搞事情。他們站在點餐臺前,顧左右而言他,提出了各種問題和需求,店員焦頭爛額,點了兩個小時的餐也不知道混混到底想要什么,饑腸轆轆的客人等不下去紛紛離店了。這還不夠,如果小丑大叔店內部本來店員脾氣就不好,一旦被外部矛盾激化,直接上演全武行,店鋪一片狼藉..................

DoS:DenialofService的簡稱,既拒絕服務,造成DoS的攻擊行為被稱為DoS攻擊,往往是被用來阻止系統向合法用戶提供服務。

在服務器里,有一個事實就是:客戶端可以不費任何力氣發送HTTP請求,但是服務器可能需要消耗大量資源對請求進行處理和響應。應用層DoS正是利用這樣的特性來進行攻擊。

一般來說,DoS攻防類似于就像是這樣的過程,最終結果取決于誰擁有更多的資源。但是,如果后端代碼實現有漏洞,單個請求就足以讓服務器崩潰了。

首發 | 歐科云鏈推出“天眼方案”推動鏈上安全系統再升級:8月28日,區塊鏈產業集團歐科云鏈宣布推出區塊鏈“天眼方案”,主要通過鏈上數據追蹤系統研發、對外技術支持、凝聚企業眾力等途徑,全面助力區塊鏈安全提升和產業平穩健康發展。

據了解,在“天眼方案”下,歐科云鏈集團將打造鏈上數據追蹤系統,通過溯源數字資產、監控非法交易等手段,全力遏制洗錢等非法行為;協助執法機關辦案,并為打造法務等區塊鏈系統提供技術支持;為聯盟鏈和基于各類業務的鏈上數據提供區塊鏈+大數據的解決方案。[2020/8/28]

本文即將為你分享:DoS攻擊的一些案例、DoS攻擊的影響以及保護應用程序的相關建議。

DoS攻擊案例分析

對服務器進行DoS攻擊的途徑多種多樣。一般來說,目標會選擇:

消耗所有CPU和內存資源;

占用所有的網絡鏈接;

下面對一些可被DoS攻擊的服務器進行案例分析,其中一些是由于代碼實現錯誤引起的,而另一些是由于配置錯誤而引起的:

1.資源訪問API缺少數量限制

https://fake.sample.com/api/v1/blocks?limit=10

以上請求以“limit”參數中指示的數量獲取區塊信息。當限制設置為10時,它將返回最后10個區塊的信息。當數字較小時,該請求可以正常工作。

但是,后端可能沒有對“limit”參數設置上限。當CertiK技術團隊將“limit”參數設置為9999999并發送請求時,請求在被處理很久之后回復了“504gatewaytime-out”錯誤。在服務器處理以上請求的同時,其他API的響應時間顯著增加。

首發 | 百度財報體現區塊鏈 BaaS平臺成為新戰略重點:金色財經報道,2020年2月28日,百度(股票代碼BAIDU)公布財報,其中將區塊鏈BaaS平臺相關的進展進行了單獨敘述,依托于百度智能云的區塊鏈平臺有望成為技術創新方向的新增長引擎。在AI服務上,百度與上海浦東發展銀行達成合作,共建區塊鏈聯盟,在百度區塊鏈服務(BaaS)平臺上實現跨行信息驗證。[2020/2/28]

9999999也超過了該鏈中的區塊總數。

假設是后端嘗試獲取區塊鏈中每個區塊的數據。如果攻擊者發送了大量的高“limit”參數的請求,該服務器會無法對正常請求進行響應甚至可能直接崩潰。

2.嵌套的GraphQL查詢

在調查過程中,CertiK技術團隊遇到了一些使用GraphQL的區塊鏈資源。GraphQL是一種用于API的查詢語言。相比于典型的RESTAPI使用多個請求來請求多個資源,GraphQL以通過一次請求就獲取應用所需的所有數據。GraphQL的使用率很高,但是如果使用過程中沒有部署相應的保護措施,很可能會存在安全隱患。

測試區塊鏈瀏覽器時,CertiK技術團隊發現了其中一個瀏覽器使用了GraphQL接口,其定義的兩個類型存在著相互包含的關系,這就允許用戶構造一個非常復雜的的嵌套查詢。

發送這樣的嵌套查詢可能會導致服務器上的CPU使用率大幅上升。一般情況下,幾個這樣的請求就能使CPU使用率提高到100%以上,從而導致服務器無法響應正常用戶的請求。

當服務器處理此類Graphql請求時的CPU使用率

下圖的“dos_query”展示了嵌套graphql的例子:

這樣惡意的GraphQL請求對服務器造成的影響取決于查詢的復雜性和服務器的性能,服務器可能在花費很多時間之后最終能夠成功響應查詢,但也有可能由于CPU使用率過高,服務器直接崩潰。如果你想了解有關GraphQL安全性的更多信息,可以訪問文章末尾的參考鏈接1。

首發 | 此前18000枚BTC轉賬是交易所Bithumb內部整理:北京鏈安鏈上監測系統發現,北京時間10月24日,17:07分發生了一筆18000枚BTC的轉賬,經分析,這實際上是交易所Bithumb的內部整理工作,將大量100到200枚BTC為單位的UTXO打包成了18筆1000枚BTC的UTXO后轉入其內部地址。通常,對各種“面值”的UTXO進行整數級別的整理,屬于交易所的規律性操作。[2019/10/24]

3.直接暴露的CosmosRPCAPI

https://fake.cosmos.api.com/txs?message.action=send&limit=100&tx.minheight=1

上面的CosmosAPI從區塊1開始搜索100筆發送出去的交易。截至目前,Cosmos主網中已經有2712445個區塊。在CosmosHub中暴露了RPCAPI節點里,我們找不到任何節點可以處理該請求。接受到此請求的服務器在一段時間后,將返回“502BadGateway”錯誤,表明請求失敗。

節點的RPC服務器如果在幾秒鐘內收到數百個上面描述的搜索請求,將會對所有的API請求返回以下錯誤。一些節點服務器可以錯誤中自行恢復,而另一些則需要被重啟。

為了使讀者更好地理解上述問題并演示其效果,CertiK技術團隊設置了一個完全同步的Cosmos全節點,并使用上面提到的查詢攻擊該節點:“https://fake.cosmos.api.com/txs?message.action=send&limit=100&tx.minheight=1”。

GrafanaCPU使用率面板

該圖可以分為三個階段:

首發 | 螞蟻礦機S17真機圖首次曝光 采用雙筒風扇及一體機設計 ?:繼正式宣布在4月9日現貨銷售后,比特大陸即將發布的新品螞蟻礦機S17又有了新動態。據悉,螞蟻礦機S17真機圖今天在網上首次曝光。

從曝光的圖片來看,螞蟻礦機S17延續上一代產品S15的雙筒風扇設計,且采用一體機的機身設計。有業內人士認為,采用雙筒設計可有效縮短風程,礦機出入風口的溫差變小,機器性能將得到很大改善。

此前比特大陸產品負責人在接受媒體采訪時表示,新品S17較上一代產品相比,無論是在能效比還是單位體積的算力等方面,均有較大提升。[2019/4/3]

節點已啟動并正在運行,系統的CPU使用率為35%

節點面臨DoS攻擊,系統CPU使用率達到97%

節點崩潰,無法將新數據提供給Grafana

該圖顯示在DoS攻擊下,服務器在短短幾分鐘內就崩潰了。由于服務器崩潰后無法使用SSH連接到服務器,操作員不得不重新啟動服務器。

4.請求處理程序有缺陷

https://fake.sample.com/api/v1?feature=Always_time_out

CertiK技術團隊遇到了一個會不停加載,過了一會兒就顯示超時的API,但是向服務器發送多個請求并不會影響其他API的響應時間。初步猜測是該特定API的處理方法不占用CPU或內存。由于此區塊鏈瀏覽器不是開源的,因此無法獲得有關API代碼實現的相關信息,也無法根據其名稱確定該API端點的用途。

盡管攻擊此API不太可能使服務器崩潰,但攻擊者可以通過發送這類“Alwayshangandtimeout”請求來占用所有網絡連接,從而阻止其他用戶訪問此服務器上的API。

舉個例子,“sleep_to_handle_request”函數演示了一個請求可以消耗很少的CPU和內存,但是會加載很長時間并占用網絡連接的情況。

與其他三個服務器完全崩潰,或需要很長時間才能恢復的案例相比,此案例中的服務器在攻擊停止后立即恢復了。

DoS攻擊的影響

遇到DoS攻擊時,易受攻擊的服務器將無法響應正常的用戶請求。一些服務器可以在攻擊停止后立即或在一段時間后恢復到正常狀態,而另一些服務器將完全崩潰并需要重新啟動。

無法使用區塊鏈瀏覽器會給用戶帶來很大的困擾。因為用戶無法輕易的獲取有關鏈上活動的信息。此外,在基于Cosmos的鏈上,如果節點遭受DoS攻擊,不僅連接的區塊鏈瀏覽器無法從該節點獲取數據,用戶也無法使用API執行諸如發送代幣或將代幣委托給驗證者的操作。

建議

任何應用程序都存在被DoS攻擊的威脅,世界上不存在一種解決方案可以完美的防范DoS攻擊。但有些方法可以用來增加攻擊成本從而使潛在的攻擊者難以執行攻擊操作,并降低區塊鏈瀏覽器應用中的存在漏洞的概率。

在這里,CertiK技術團隊列出了一些建議,以最大程度地減少應用程序被攻擊的機率:

1.速率限制

即使后端API在實現上足夠安全,攻擊者也可以通過向服務器發送大量請求來進行攻擊。因此,API在任何情況下都應該設置速率限制來暫時或永久屏蔽惡意IP。

雖然速率限制并不能完全解決問題,但操作起來相對便捷,可以構成針對DoS攻擊的第一道防線。

2.改良設計和實現

良好的程序設計和代碼實現能在相同的硬件條件下表現出更好的性能,這種效果在與數據庫搜索和數據處理相關的功能方面表現得更加突出。但是在考慮性能之前,首先要確保代碼沒有錯誤。

因此,在API部署到生產環境前編寫單元測試上投入大量時間是非常值得的,以此來確保它們能夠按預期工作。

3.輸入驗證和參數限制

不對用戶提供的變量進行驗證和限制,那么攻擊者就可以濫用API。

在確定代碼能夠按預期工作之后,下一步要做的是確保攻擊者不能利用非常規的輸入濫用API。類似于獲取9999999區塊的數據或處理1000級循環的GraphQL查詢的請求不應該被允許。

因此,所有用戶輸入均應被視為不可信的,服務器應在處理用戶輸入之前對其進行驗證。

在上文提到的案例中,GraphQLAPI可以設置最大層數限度以有效防御循環查詢的DoS攻擊,而塊數據獲取API則可以將最大塊數限制為像50這樣的合理數值。

開發人員可以根據代碼實現和程序設計,總結出最合適當前程序的的輸入驗證和限制的方案。

4.不要暴露節點RPC

并非所有API的代碼實現都在開發人員的控制之下。

比如,開發人員并不推薦去改CosmosRPCAPI的代碼。CosmosSDK中某些搜索查詢的性能不是很好,那么該怎么辦?

解決方案之一:圍繞CosmosRPCAPI創建一層包裝API,并創建一個存儲區塊鏈數據的數據庫,該數據庫從節點同步區塊鏈數據。外層的包裝API向公眾公開,并接收和處理用戶請求,隨后再將請求傳遞到CosmosRPC或在后端數據庫中搜索數據。添加外層API有效地防止了用戶直接與節點RPCAPI進行交互。數據庫可以防止節點被搜索查詢請求所淹沒,并且開發人員可以按照他們所希望的方式優化數據庫。

在Cosmos論壇上,用戶“kwunyeung”也提出了一種解決方案:使用HTTP代理來保護RPC端口。總的來說想表達的觀點是一致的:RPC端口不能直接向公眾公開,同時還要采取保護措施。

5.符合建議的硬件要求

即使部署了上述所有防御機制,用戶還是需要注意運行API服務器或例如Tendermint(詳見參考鏈接2)這樣的穩定節點對硬件的最低要求。如果服務器在處理來自普通用戶訪問網站所產生請求就有困難的時候,那么管理員需要考慮升級硬件了。

總結

DoS攻擊可能會使諸如區塊鏈瀏覽器之類的應用程序陷入崩潰,這對大部分企業來說可以稱得上是致命的威脅。

CertiK專業的安全技術團隊在應用程序漏洞評估,針對諸如Solidity、RUST和Go等不同語言的代碼審計,以及以太坊,Cosmos和Substrate等平臺的安全維護方面擁有豐富的經驗和專業的安全知識。

針對包括區塊鏈瀏覽器、錢包、交易所、智能合約,甚至底層區塊鏈協議的實現在內的區塊鏈相關業務,如需進行全面的安全審計,CertiK擁有多年的實戰防護經驗及最先進的形式化驗證技術,將是你最值得信賴的安全專家。

附錄

這是一個示例腳本,用于測試Cosmos節點是否容易受到DOS攻擊。通過修改“url”變量可以測試不同的應用程序。

請不要對未經許可的應用程序運行。

參考鏈接:

1.https://www.apollographql.com/blog/securing-your-graphql-api-from-malicious-queries-16130a324a6b/

2.https://github.com/tendermint/tendermint/blob/master/docs/tendermint-core/running-in-production.md#hardware

Tags:區塊鏈APIDOSCOS有人靠區塊鏈4天就掙了30萬嗎apix幣什么條件才能漲Aidos KuneenCOSM價格

DAI
以太坊:以太坊瘋狂的一周:拋開價格,我們是否錯過了什么?_YFI

上一周,以太幣價格的劇烈波動無疑是引人注目的,然而,真正的美景卻被多數人忽視掉了。實際上,無論是DeFi生態、以太坊2.0的進展,還是Layer2方案的發展,都是值得大家去探索的,此外,上周我們.

1900/1/1 0:00:00
區塊鏈:《數據安全法草案》提審,Filecoin未來可期!_BZLcoin

在今年3月發布《金融分布式賬本技術安全規范》后,近日央行下發了《關于分布式金融行業標準推動區塊鏈技術規范應用通知》和《區塊鏈技術金融應用評估規則》。這兩份文件是我國首次發布區塊鏈的規范文件.

1900/1/1 0:00:00
LID:LID(Liquidity Dividends Protocol)_My DeFi Pet

Hotbit不為任何區塊鏈資產做信用背書,所有相關介紹均來自第三方并有可能存在錯誤與遺漏。區塊鏈資產投資是高風險行為,您必須自行承擔價格有可能歸零的風險,請根據您自身能力謹慎投資.

1900/1/1 0:00:00
區塊鏈:深度解析“區塊鏈 物聯網”與新基建_區塊鏈的未來發展前景數字化研究

本文轉自中物聯區塊鏈分會根據國家發改委對“新基建”的界定,區塊鏈屬于新技術基礎設施,物聯網屬于通信網絡基礎設施.

1900/1/1 0:00:00
比特幣:比特幣對接美國銀行 即將產生更多灰度公司嗎?_加密貨幣

上周,推特上的數字貨幣愛好者們再次「炸鍋」。當地時間7月22日,美國貨幣監理署高級副審計長兼高級法律顧問JonathanGould表示,根據他們的結論,銀行可以為客戶提供數字貨幣托管服務,包括持.

1900/1/1 0:00:00
比特幣:為什么說FIL延續比特幣使命丨數字貨幣怎么投資才靠譜_區塊鏈工程專業學什么女生比較好

數字貨幣的大熱給了很多投資用戶提供了一種新的投資理財方式,但有很多人連數字貨幣是什么都不了解,難免會擔心,數字貨幣投資靠譜嗎?其實,數字貨幣的核心價值是交易.

1900/1/1 0:00:00
ads