據(jù)悉,將于2023年9月11日至15日在盧森堡舉行的國際軟件工程學術(shù)會議(ASE 2023, the 38th IEEE/ACM International Conference on Automated Software Engineering)接受了學院方勇教授團隊最新的研究成果《An Empirical Study of Malicious Code In PyPI Ecosystem》。該工作由永利yl23411官網(wǎng)、南洋理工大學合作完成,其中永利yl23411官網(wǎng)為第一署名單位,2020級碩士研究生郭文博作為第一作者(導師方勇、黃誠),通訊作者為方勇教授。
ASE由IEEE和ACM聯(lián)合主辦,是軟件工程領域國際知名的頂級會議之一。ASE針對大型軟件系統(tǒng)的自動化分析、設計、實現(xiàn)、測試和維護等方面,給來自學術(shù)界和工業(yè)界的軟件工程研究者和實踐者提供了共同討論的平臺,分享相關領域最新研究成果、技術(shù)和工具等信息,是中國計算機學會推薦國際學術(shù)會議(軟件工程、系統(tǒng)軟件與程序設計語言)A類會議(CCF A)。本屆會議共收到629篇投稿,最終接收134篇,接收率為21.3%。
論文簡介:PyPI為開發(fā)人員提供了一個方便易用的包管理平臺,使他們能夠快速實現(xiàn)特定功能,提高工作效率。然而,PyPI生態(tài)系統(tǒng)的快速發(fā)展也導致了嚴重的惡意包傳播問題。惡意貢獻者將惡意軟件包偽裝成正常包給終端用戶帶來了重大安全風險。為此,本研究對PyPI生態(tài)惡意代碼做了大規(guī)模的實證研究,以了解其生命周期的特征和現(xiàn)狀。首先構(gòu)建了自動化數(shù)據(jù)采集框架,并構(gòu)建了包含4669個惡意包文件的多源惡意代碼數(shù)據(jù)集,這是當前最大的開源可用數(shù)據(jù)集。

根據(jù)惡意行為特征,論文設計了自動化的分類模型,初步將惡意代碼分為五類。研究發(fā)現(xiàn),超過 50% 的惡意代碼表現(xiàn)出多種惡意行為,其中信息竊取和命令執(zhí)行尤其普遍。此外,還發(fā)現(xiàn)了幾種新穎的攻擊向量和反檢測技術(shù)。安裝時攻擊是將惡意代碼嵌入在setup.py文件中,當惡意包被安裝時會觸發(fā)其中的惡意代碼。運行時攻擊的惡意代碼嵌入在“other.py”中,當受害者調(diào)用具體的方法時才會觸發(fā)。

引入時攻擊是將惡意代碼嵌入在__init__.py文件中,當惡意包被import時才會觸發(fā)其中的惡意代碼。

分析顯示,74.81%的惡意包通過源碼安裝成功進入終端用戶項目,從而增加了安全風險。同時,研究發(fā)現(xiàn)惡意軟件包持續(xù)存在于全球PyPI鏡像服務器中,其中超過72%的惡意軟件包在被發(fā)現(xiàn)后仍長期存在于鏡像服務器中。

最后,本研究給出了PyPI生態(tài)系統(tǒng)中惡意代碼的生命周期圖,有效反映了惡意代碼在不同階段的特征。并提出了一些建議的緩解措施,以提高Python開源生態(tài)系統(tǒng)的安全性。
