[漏洞預警]交易所漏洞之"薅羊毛"分析

NO.1前言

近幾年,基於區塊鏈技術和密碼學的數字貨幣行業,迎來爆發式增加。做爲數字貨幣產業鏈中最重要的環節之⼀,區塊鏈資產交易所無疑擁有舉⾜輕重的地位。 它鏈接着區塊鏈投資的⼀⼆級市場,也鏈接着項目方和普通投資者。html

區塊鏈資產交易所

 

據統計,目前被非小號平臺收錄的交易所已超過300家,未被收錄的甚至有數千家之多。即使如此,入局者依然樂此不疲。在人人都來作交易所的背景下,幾乎每家交易所多達幾十甚至上百個交易標的 ,那麼存量有限的市場,中小型區塊鏈資產和交易所將面臨流量匱乏,無價無市的境地。網絡

 

NO.2

爲何市商策略是剛需多線程

市商機器人的出現改變了這一局面,經過在市場中參與作市,遏制因信息和資源不對稱性,致使的市場過分投機行爲,維護交易平臺的良好運行。並減小傳統交易方式中,所謂莊家暗中操縱價格的現象,來加強市場吸引力,提升流動性和成交量,知足普通投資者的買賣需求,穩定市場信心。區塊鏈

市商

在今天,爲了使新交易所和新幣種更好的創建與普通投資者之間的鏈接,並解決其上市初期面臨的諸多問題,不論是中小交易所仍是區塊鏈項目方,都不得不依靠市商機器人。spa

 

NO.3

市商策略原理線程

市商策略經過作市制度,跟蹤價格變化,不斷地提供買、賣的雙向報價。經過高頻大量的買入、賣出交易,逐漸積累每筆交易價格和理論價格的差價,並根據持倉頭寸特徵,動態調整價差。設計

市商策略

 

通常交易所常見的市商策略有兩種:htm

  1. 被動作市:市商策略跟蹤主流交易所深度數據和成交數據,不作較大的主動選擇,而是被動跟隨市場,追求的就是最大程度的緊密跟蹤和徹底複製,試圖達到和主流交易所一樣的K線數據。

 

  1. 自由作市:這種作市模式不參考其餘交易標的,而是根據本身的成本和設定掛單作市。這種模式適合相關幣種訂價權相對集中的環境,如:小型區塊鏈資產或交易所本身發行的幣種。

 

NO.4

市商策略漏洞對象

不管是被動作市,仍是自由作市,不只須要解決交易標的價格問題,還須要解決流動性問題。因此爲了活躍市場,就須要市商策略能夠自買自賣,不然很難造成像樣的K線。blog

 

常見的方法是,在盤口附近隨機指定一個價格賣出,當即同價格買入。或者根據隨機價格,先買入後賣出。一般因爲買賣間隔的時間很短,在深度數據中每每找不到相應掛單,可是在歷史數據中卻能留下成交記錄,K線就是經過這種作市方法繪製而成的。

 

請注意!漏洞就是這樣出現的。

市商策略爲了產生連續的K線,在盤口附近自買自賣掛單,卻隱藏了一個漏洞。雖然策略的買單賣單是同時發出的,可是因爲網絡問題和撮合速度並非理想狀態,也不多是理想狀態,這就形成市商策略的訂單,有必定概率被其餘人成交。

 

設想一下,假如市場上存在另外一個高頻刷單策略,它老是以更低的價格成交市商策略的賣單,又以更高的價格成交市商策略的買單,只要這個高頻刷單策略得到的差價,能覆蓋手續費就會產生盈利。這就形成市商策略低賣高買,細思極恐!

 

NO.5

實戰演示

通過觀察,某交易所的ETHUSDT交易對存在作市現象,參考對象多是幣安ETHUSDT數據,經過觀察其盤口訂單薄數據,發現存在自成交刷單,買賣方向隨機,下圖爲當天該作市策略產生的K線。

市策略K線

 

一般高頻刷單策略並非在盤口隨機訂價,而是參考市商策略的上次成交價格隨機變更的。這樣實際上,成交價很難觸及盤口低價和高價,再加上獲取作市策略訂單的成功率有限,幾乎沒有利潤空間。

 

甚至還要承擔單邊持倉風險。這看似無懈可擊,可是若是咱們利用作市訂單必須在盤口中掛單的Bug,便可輕易破解交易所的市商策略,並牟取暴利。

 

NO.6

具體步驟以下:

當指望低價成交時,就在買一價的基礎上加必定的價格掛賣單。當買一價是200,就掛200.1的賣單,而後不停的掛200.09的買單,並當即撤銷。當成交後,當即反向操做,將成交的幣高價賣出,如此完成一個循環。

 

雖然這樣的成功率並很少,但經過大量頻繁掛撤單交易,使得捕捉到這種機會將大大增長,利潤依然十分可觀。

如上圖所示,經過發明者量化交易平臺(FMZ)寫了一個高頻刷單策略,實盤運行幾乎沒有回撤。 只用一個晚上的時間,就從1000USDT,刷到了4000USDT的利潤。

 

這仍是溫和的刷,若是用上多帳戶、多合約、多線程會跟加暴利。高頻刷單策略利用這個漏洞後,竊取的是鉅額資金,留下的是糟粕的K線,以下圖:

漏洞

 

NO.7

基於交易所市商漏洞的刷單策略源碼

刷單策略源碼 以上策略源碼基於發明者量化平臺(www.fmz.com)

 

NO.8

防範的方法

針對這種作市策略,知道原理後解決起來就簡單了, 如作市策略的自成交價格在低位時只先掛買單而後掛賣單,反之亦然,這樣就不會被別人低買高賣。或者將全部的成交和掛單都放在能夠在其它交易所對衝的範圍內。

 

寫在後面的話

儘管交易所身處整個區塊鏈產業的頂端,但它就像一個置身在外的巨人,透露了更多的攻擊面和可利用的漏洞點。

 

客觀的說,能經過訂單薄反推出來的不合理,均可能存在更隱蔽的Bug。就好比利用上文明顯的交易所市商策略漏洞,攻擊者可巧妙地設計出各類隱匿攻擊策略,還能作到不知不覺。

 

現在,數字貨幣已成爲投資新靶標,交易所也成爲衆多黑客的角鬥場。 隱匿在暗處的黑客如餓狼通常,乘機而動,緊盯着交易所的破綻,準備一擊致命 。區塊鏈中心化交易所只能增強自身防護部署,讓客戶真正作到交易無憂。

閱讀原文

相關文章
相關標籤/搜索