
答案1
現實中回答這個問題是可以的,但不能是被動的。隨著時間的推移,Ubuntu 和 Linux 總體上變得更加安全,可以防止病毒。網站發現這裡解釋了大多數可能並且已經影響 Ubuntu 的特洛伊木馬、病毒和蠕蟲。這個網站甚至更新到了最新版本,因為正如您所說,當今的病毒大多是為 Windows 和 Mac OS X 設計的。
答案2
病毒感染系統的方式主要有兩大類:
利用錯誤
病毒感染系統的一種方式是利用錯誤。假設一個系統具備各種安全措施,但如果您按順序執行 x、y 和 z(這個順序是不可預見的有問題的),您就可以以 root 身分執行一段程式碼。
這種病毒可能是一種嚴重的治療。然而,你的問題永遠不可能有永久的答案。對於此類病毒對您的問題的任何答案都將描述一個可利用的錯誤,該錯誤最終會被快速修復、修補並使其無法利用。
我們在 Linux 上看不到這種病毒主要有兩個原因:
- 駭客努力尋找系統中的錯誤,並且當他們這樣做時感覺很棒。對於 Windows,除了利用該錯誤並編寫病毒之外,沒有什麼可做的。對於 Linux,他們可以發送補丁來修復錯誤並獲得額外的名氣獎勵。如果您關注新聞,您偶爾會聽說一個研究團隊在某些自由軟體(不僅僅是 Linux,例如心血)並修復它,但你從來沒有聽說過駭客在 Windows 中發現了漏洞,儘管 Windows 病毒的數量表明這些錯誤數量眾多。
- GNU/Linux 發行版通常都有優秀的套件管理器。所有軟體都會經常更新,錯誤也會很快被消除。在Windows 上,許多不懂技術的用戶可能只是禁用更新,因為更新太煩人了(你重新啟動了嗎?你重新啟動了嗎?你重新啟動了嗎?正在關閉,請無限期等待),即使他們不這樣做t,更新僅針對 Windows 核心,除此之外沒有其他更新。任何利用這種漏洞的病毒都有更高的機會在Windows上存活很長時間,因此傳播得更遠。
剝削用戶
病毒感染系統的另一種方式是欺騙使用者這樣做。從互聯網上下載一些應用程序,運行它,你就會為自己帶來病毒。 GNU/Linux 發行版使用套件管理器,確保可執行檔是由受信任的打包程式從原始程式碼建置的,並且除非打包程式是惡意的,否則可以防止任何病毒洩漏。的網站下載每個應用程序,有些其中不提供 HTTPS,也不提供可執行檔的哈希值。病毒可以透過多種方式透過這種方式傳播,我們知道它們確實如此。
然而,如果使用者沒有 root 存取權限,這本身不會有太大問題。在 Windows 上,這通常是預設設定:第一個(通常也是唯一的)使用者擁有管理權限。這就像在 Linux 上以 root 身分登入一樣。然而,在 Linux 上,系統會提示您輸入任何涉及您的應用程式(例如駐留在/usr/bin
)的 root 密碼,因此沒有病毒可以在您不注意的情況下真正「潛入」。
對於這種病毒,你的問題的答案是編寫一個非開源的病毒,以做其他事情為藉口請求root權限,然後說服大量的人他們只需要這個應用程式可用二進位並授予其 root 權限。
這基本上不再是病毒了。它也可能是給那些什麼都不知道的人的「格式化硬碟的說明」。
最成功的錯誤是那些同時利用錯誤和使用者的錯誤。想像一下在 Windows 上這麼容易:
- 以開啟 Y 類型檔案的應用程式 X 為例。您甚至可以讓它變得更容易並使用開源的東西,例如 inkscape。
- 在應用程式中尋找可以允許您執行程式碼的錯誤。例如,緩衝區溢位甚至可以打開影像等不可執行文件,但仍然能夠控制軟體。
- 將病毒傳播到所有可能的地方,因為您可能擁有對所有內容的 root 存取權。這包括有缺陷的軟體本身,以便它可以自動感染未來的文件,甚至確保軟體永遠無法自我更新。
- 該病毒最終會被檢測到,但由於有缺陷的軟體從未更新,因此會繼續傳播。
現在將情況與 Linux 進行比較。您發現的錯誤可能不會存在太久,因為一旦發現病毒,有錯誤的軟體就會修補和更新。此外,即使您確實獲得了該軟體,您所能造成的最大損害也是感染用戶文件,而不是系統文件。在影像附加病毒的範例中,軟體本身不會被感染,唯一的傳輸方法是使用者傳輸影像本身。這並不意味著該病毒不能存在,但它會相當弱且無聊。沒有人會誇耀自己寫了一種無聊的病毒。