結構相似,執行相同!26%的惡意JavaScript軟體利用混淆技術逃過安全檢測

zktq2021發表於2021-10-21

網路安全人員在一項研究中,透過分析了1萬多個用JavaScript編寫的惡意軟體樣本,發現大約26%的惡意軟體為了逃避安全檢測和分析被混淆。

混淆是指將易於理解的原始碼轉換為難以理解和令人困惑的程式碼,但仍然按預期執行。

威脅行為者通常使用混淆技術來增加分析惡意指令碼和繞過安全軟體的難度。

混淆可以透過多種方式實現,如將未使用的程式碼注入指令碼、將程式碼分割和連線(將其分割為不連線的塊),或者使用十六進位制模式以及複雜的重疊函式和變數命名。

混淆現象在增加

Akamai研究人員分析了10,000個JavaScript樣本,包括惡意軟體植入程式、網路釣魚頁面、詐騙工具、Magecart片段、加密礦工等。

其中至少有26%使用某種形式的混淆來逃避檢測,這表明採用這種基本但有效的技術的人有所增加。

這些模糊示例中的大多數似乎具有相似的程式碼,因為它們是由相同的打包程式打包的,因此即使函式不同,它們的程式碼結構也看起來相似。

正常執行的網站也利用此技術

但並非所有混淆都是惡意的,網路上20,000個排名靠前的網站(據 Alexa)中約有 0.5% 也使用混淆技術。

這些情況可歸因於以下幾點:

網站正試圖向競爭對手隱藏其某些客戶端程式碼功能。

他們使用的 JavaScript 片段被第三方提供商混淆了。

像電子郵件地址這樣的敏感資訊需要隱藏在公眾視野中。

因此,基於模糊的事實來檢測惡意程式碼本身是不夠的,還需要進一步與惡意功能進行關聯。

軟體程式碼中的惡意程式碼為軟體安全帶來巨大風險,在開發中關注程式碼安全可以有效提高軟體安全性,大大降低遭到網路攻擊的風險。隨著惡意程式碼混淆技術的不斷使用和發展,在開發期間有必要及時發現程式碼缺陷及安全漏洞。

安全可信的 靜態程式碼檢測工具可以幫助開發人員減少30%-70%的安全漏洞,在提高編碼規範性的同時,及時發現並修復安全缺陷及漏洞,有助於提高軟體自身抵禦網路攻擊的能力。5G時代,僅靠傳統的防火牆、滲透測試等方式難以應對不斷進化的惡意軟體及攻擊手段,現如今,加強軟體自身安全性已成為提高網路安全的又一有力方式。

在早期發現軟體安全問題不但節省修改時間和成本,也能為企業避免更多經濟和聲譽損失。請記住,預防是比治療更實用的解決方案。

參讀連結:

https://www.bleepingcomputer.com/news/security/about-26-percent-of-all-malicious-javascript-threats-are-obfuscated/


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70000012/viewspace-2838494/,如需轉載,請註明出處,否則將追究法律責任。

相關文章