Categories
程式開發

使用 WebAssembly 的網站中有50%將其用於惡意目的


使用 WebAssembly 的網站中有50%將其用於惡意目的 1

WebAssembly並沒有那麼受歡迎:前100萬個網站中,只有1639個網站使用WebAssembly。

根據一份發表的學術研究使用WebAssembly的網站中,大約有50%將其用於惡意目的。

眾所周知,WebAssembly(wasm )是由Mozilla、谷歌、微軟和蘋果四大瀏覽器供應商協同創建。它是一種全新的編碼方式,可以在現代的網絡瀏覽器中運行。

據了解,WebAssembly是一種低級的類彙編語言,具有緊湊的二進制格式,能以接近原生的性能運行,並為諸如C / C ++等語言提供一個編譯目標,以便它們能在Web上運行。同時,它也被設計為可以與JavaScript共存,允許兩者一起工作。

使用 WebAssembly 的網站中有50%將其用於惡意目的 2

對網絡平台而言,WebAssembly提供了一條途徑,使得用各種語言編寫的代碼都能以接近原生的速度在Web中運行。

當初創建WebAssembly的目的是為了兼顧速度和性能。由於它是體積小且加載快的二進制格式,因此它比同等的JavaScript格式小,但執行速度卻快上許多倍。

巨頭背書、自身優勢,讓WebAssembly成為Adobe Flash的下一個版本,它使網站可以運行複雜的CPU密集型代碼而無需凍結瀏覽器,而JavaScript卻從未針對此設計或優化。

2017年,WebAssembly被首次提出,並於2019年底正式被W3C(萬維網聯盟)接受,成為第 4 種Web 語言。同時,它受到PC和移動設備上所有主流瀏覽器的支持。

WebAssembly的使用情況

2019年開展了一項學術研究項目,德國布倫瑞克工業大學的四名研究人員研究了WebAssembly在Alexa上排名前100萬受歡迎網站的使用情況,來評估這種新技術的普及程度。

四天時間裡,他們加載了100萬個網站中每個網站的三個隨機頁面,測量WebAssembly的使用情況,以及每個網站運行代碼所耗費的時間。

研究團隊表示,它分析了Alexa排名前100萬網站中947704個網站的WebAssembly使用情況,還分析了3465320個單獨頁面中的代碼。

使用 WebAssembly 的網站中有50%將其用於惡意目的 3

結果發現,有1639個站點裝載了1950個Wasm模塊,只有150模塊是唯一的,很多站點則使用相同的Wasm模塊。研究人員說,“這意味著某些模塊很受歡迎,能在不同的站點上找到。另一種情況是,有346個不同的站點上存在完全相同的模塊。”

兩類惡意Wasm代碼

研究小組更進一步,他們還針對每個網站正在加載的Wasm代碼性質進行研究。他們手動分析代碼,查看函數名稱和嵌入的字符串,然後映射出相似代碼的集群。

研究人員表示,他們分析的絕大多數代碼樣本都用於加密貨幣挖掘(佔樣本數的32%)、在線遊戲(佔樣本數的29.3%)。

使用 WebAssembly 的網站中有50%將其用於惡意目的 4

儘管絕大多數樣本都是基於合法目的的使用,但是有兩類Wasm代碼本質上卻是惡意的。

  1. 用於加密貨幣挖掘的WebAssembly代碼。這種類型的Wasm模塊通常會在被黑客入侵的網站上發現,這是所謂的Cryptojacking攻擊的一部分;
  2. 涉及打包在混淆的Wasm模塊中的WebAssembly代碼,這些模塊有意隱藏其內容。研究團隊稱,這些模塊是惡意廣告活動的一部分。

研究人員表示,這兩個類別的WebAssembly代碼佔發現樣本的38.7%,但是這些模塊在他們分析的網站中使用了一半以上,主要是因為該代碼經常跨多個域重複使用,很大部分是黑客操作。

研究人員預測,未來,將WebAssembly代碼用於惡意目的或將變得越來越受歡迎。

不過,這僅僅是看到的冰山一角。

研究小組呼籲,網絡安全公司應該在這方面加大投資,更新安全產品,從而幫助企業應對這種新技術出現的新威脅。

參考文章:

Half of the websites using WebAssembly use it for malicious purposes