今年4月下旬,電信業者AT&T旗下的資安威脅實驗室LevelBlue發現具備高度迴避偵測能力的惡意程式載入工具SquidLoader,使用此項工具的攻擊者鎖定使用簡體中文的用戶,受害者電腦會因此而載入Cobalt Strike。

研究人員進一步調查指出,這些駭客過去2年曾發起零星的攻擊行動,而且似乎朝向特定國家而來。由於這樣的攻擊技術及手法有可能被複製,未來很有可能被其他惡意軟體開發者如法炮製。

針對這起攻擊行動發生的過程,研究人員在釣魚郵件發現數個可被執行的附件檔案,其中一個具有簡體中文名稱的檔案,宣稱是華為工業級路由器的產品介紹及客戶成功案例。其他的惡意檔案名稱,也與中國的企業組織有關,例如:中國陝西行動網路服務公司、黃河水利職業技術學院(YRCTI)。

對方這樣命名附件檔案的目的,研究人員認為,攻擊者的主要目標是員工,企圖藉由具有明確描述的檔案名稱引誘他們上當。值得留意的是,這些檔案雖然都帶有Word文件的圖示,但實際上都是可執行檔。

一旦收信人開啟這些附件,電腦就會對遠端伺服器上含有flag.jpg的URI發出Get HTTPS的請求,然後下載惡意程式載入工具SquidLoader並執行Shell Code。

值得留意的是,這些惡意程式載入工具具備高度迴避偵測的能力,也擁有誘餌的功能,使得這樣的作案工具不易被察覺。此外,被載入的Shell Code也會利用特定的處理程序執行,避免惡意酬載被寫入磁碟留下作案痕跡。

為了讓惡意程式載入工具看起來像正常應用程式,對方利用已經過期的合法憑證進行簽章,此外,他們也在C2伺服器部署自行簽署的憑證。

研究人員發現,為了防礙資安人員調查,這些駭客竟然在惡意附件大量混入微信、mingw-gcc等應用程式的程式碼,但實際上無法正常執行,而是在流程的特定階段就指向有效酬載。此外,部分程式碼執行後,甚至會出現檔案格式錯誤無法開啟的彈出式視窗訊息。

研究人員公布駭客引用微信(WeChat)的程式碼片段,並指出這些被塞入惡意程式用來影響資安研究人員調查的程式碼,實際上並不會執行。

他們也提及對這個惡意程式載入工具引起特別關注的原因,那就是對方運用許多迴避偵測的手法並進行混淆處理,而使得相關攻擊行動極少被識別出來。

研究人員指出,攻擊者在部分函數功能使用了無意義及灰色地帶指令,例如:pause、mfence、lfence,很有可能是用來破壞防毒軟體模擬觸發的工作。

其中,也有部分功能函數含有call或jmp指令,指向另一個功能函數,使得研究人員的反編譯工具產生解析錯誤的情況。

而在透過演算法混淆程式碼的手法上,對方也加入了無意義的誘餌指令碼來欺騙研究人員,並透過堆疊的方式,使用多個位元組的XOR金鑰來加密特定字串。

此外,這些駭客也針對Shell Code相關的功能函數,進行控制流程圖形(Control Flow Graph,CFG)的混淆處理,導致CFG被扁平化為帶有大量switch字串的無限迴圈。

為了避免研究人員使用除錯工具進行調查,這些駭客也透過處理程序、檔案名稱過濾,並使用自行開發的API進行系統呼叫。

熱門新聞

Advertisement