微軟周四宣布,它在對(duì)SolarWinds攻擊進(jìn)行調(diào)查期間使用了CodeQL查詢(xún)的開(kāi)放源代碼。
據(jù)信由俄羅斯贊助,攻擊者于2019年入侵了IT管理解決方案公司SolarWinds的系統(tǒng),并使用Sundrop惡意軟件將Sunburst后門(mén)插入了SolarWinds Orion監(jiān)控產(chǎn)品中。
因此,全世界數(shù)以千計(jì)的組織最終被Sunburst感染,但攻擊者僅向數(shù)百名感興趣的受害者提供了其他惡意軟件。攻擊者還使用手動(dòng)鍵盤(pán)技術(shù)來(lái)破壞這些組織的系統(tǒng)。
微軟以Solorigate的身份追蹤攻擊,已發(fā)布了幾份報(bào)告以提供有關(guān)所采用的技術(shù),攻擊者和事件范圍的信息,并且本周決定將其調(diào)查中使用的某些工具提供給其他公司,以出色地。
該公司已經(jīng)發(fā)布了CodeQL查詢(xún)的源代碼,該代碼用于大規(guī)模分析其代碼并識(shí)別與Solorigate相關(guān)的任何代碼級(jí)別的危害指標(biāo)(IoC)。
“我們正在公開(kāi)采購(gòu)本次調(diào)查中使用的CodeQL查詢(xún),以便其他組織可以執(zhí)行類(lèi)似的分析。請(qǐng)注意,查詢(xún)[…]只是駐留在與Solorigate植入程序中的源代碼共享相似之處的源代碼上,無(wú)論是在語(yǔ)法元素(名稱(chēng),文字等)還是在功能上,”該公司表示。
微軟還強(qiáng)調(diào),仍然需要進(jìn)行審查以確保正確的結(jié)果,并且惡意行為者可能會(huì)在不同的操作中使用其他功能和編碼樣式,這意味著這些查詢(xún)將無(wú)法檢測(cè)出明顯偏離的植入物。
該技術(shù)公司還解釋說(shuō),選擇使用CodeQL進(jìn)行此分析是因?yàn)樵撘嬖试S創(chuàng)建“捕獲編譯代碼模型的數(shù)據(jù)庫(kù)”,然后可以重復(fù)查詢(xún)?cè)摂?shù)據(jù)庫(kù)。
Microsoft已在CodeQL GitHub存儲(chǔ)庫(kù)中提供了用于評(píng)估代碼級(jí)IoC的C#查詢(xún),并在Solorigate-Readme.md中提供了有關(guān)每個(gè)查詢(xún)及其嘗試查找的代碼級(jí)IoC的詳細(xì)信息。調(diào)整指南也包括在內(nèi)。
“ GitHub不久將發(fā)布有關(guān)如何為現(xiàn)有CodeQL客戶(hù)部署這些查詢(xún)的指南。提醒一下,CodeQL對(duì)于GitHub托管的開(kāi)源項(xiàng)目是免費(fèi)的。”微軟還指出。
該公司還解釋說(shuō),在調(diào)查Solorigate時(shí),一方面,它尋找與代碼級(jí)IoC相關(guān)的語(yǔ)法,另一方面,它研究了這些IoC中技術(shù)的整體語(yǔ)義模式。因此,檢測(cè)將捕獲技術(shù)已更改但語(yǔ)法沒(méi)有更改或相反的情況。
“由于惡意行為者可能同時(shí)更改語(yǔ)法和技術(shù),因此CodeQL只是我們更大的調(diào)查工作的一部分,”該技術(shù)巨頭指出。