小錯誤大麻煩!一不小心Python安裝的可能就是惡意軟體

Editor發表於2021-06-25


你在使用pip(Python包管理工具)安裝各種軟體包的時候,是否曾把軟體包的名字打錯了?像把numpy打成mumpy,


又比如:

    pip install mplatlib


    如果你有過這種情況,那麼要小心了,這可不僅僅是輸錯了這麼簡單的事,因為這些軟體包都是真實存在的,你可能無意間就下載安裝了一些惡意軟體。

     

    近日,安全研究團隊Sonatype在官方的Python軟體儲存庫(PyPI)上發現了六個包含不同惡意軟體的軟體包。這些包故意使用與熱門軟體包相近的拼寫方式,通過使用者使用pip安裝時的錯誤拼寫“偷渡上岸”之後,將會利用受感染計算機的資源來挖礦。


    根據PePy的資料,六款惡意軟體的名稱與下載數如下:

    maratlib:2462   

    maratlib1:390   

    matplatlib-plus:943   

    mllearnlib:316   

    mplatlib:333   

    learninglib:648


    到目前為止這六款惡意軟體的下載量已經超過了5000次。而PyPI也已經刪除了這些惡意軟體包。

     

    雖然其釋出者nedog123上傳這些惡意軟體包似乎只是為了竊取受害者計算機資源用來挖礦,但Sonatype仍然對此事十分重視。這次的發現僅是冰山一角,誰也不知道究竟還有多少潛藏的惡意軟體包沒被發現、那些惡意軟體包又會隱藏著何種目的。

     

    這件事的根源在於第三方可以上傳軟體包,由此開發人員可以借用或改進前人的工作,這種共享行為提高了所有人的效率,這本來是PyPI的一個優勢。但這也代表著他人可以上傳惡意的軟體,開源是把雙刃劍,稽核不嚴的問題一直為使用者所詬病。以前就發生過這種事情,一名大學生在幾個月的時間內欺騙17000名程式設計師執行他的指令碼超過45000次,甚至騙過了美國政府和軍事組織。

     

    不僅PyPI,其他的包管理工具也存在類似的問題。去年在RubyGems有一個被下載了數千次的軟體包,其中的惡意軟體會試圖攔截比特幣付款;而自2019年以來,Sonatype已跟蹤超過12000個惡意NPM包。

     

    開源儲存庫可能是寶庫,亦可能是惡意軟體的載體,在安裝各種軟體包時一定要萬分小心。




    圖片

    公眾號ID:ikanxue

    官方微博:看雪安全

    商務合作:wsc@kanxue.com


    相關文章