又有一段時(shí)間沒(méi)寫(xiě)技術(shù)博文了。在前幾篇博文的評(píng)論中,有若干讀者催寫(xiě) Linux 方面的教程蛾坯。俺準(zhǔn)備開(kāi)始動(dòng)手,寫(xiě)一點(diǎn)傻瓜教程(面向技術(shù)菜鳥(niǎo))疏遏。
很多人切換到 Linux 是出于安全方面的考慮脉课。所以在寫(xiě)具體的 Linux 教程之前,咱們先來(lái)聊一下 Linux 安全性方面的話(huà)題财异。
今天這個(gè)話(huà)題是前些年想聊但是一直拖著沒(méi)寫(xiě)的(請(qǐng)?jiān)彴潮容^懶)嚼吞,如今算是補(bǔ)上了沙庐。program-think
★事先聲明
◇聲明1
操作系統(tǒng)間的對(duì)比很容易引發(fā)口水戰(zhàn)。
如果你不同意俺的觀點(diǎn),最好能指出俺哪里說(shuō)得不對(duì)城瞎,而不要僅僅停留在“口水戰(zhàn)”層面的爭(zhēng)吵。
◇聲明2
俺在本文標(biāo)題中已經(jīng)明確限定了討論范圍是【桌面系統(tǒng)】杉武。
“服務(wù)器系統(tǒng)”或者是“移動(dòng)設(shè)備的系統(tǒng)”【不】在本文討論范圍之內(nèi)伐蒂。
★預(yù)備知識(shí)
◇啥是“發(fā)行版”?
通俗地說(shuō):Linux 只是一個(gè)操作系統(tǒng)內(nèi)核(Linux kernel)拆吆,并不是一個(gè)操作系統(tǒng)聋迎。
所謂的“發(fā)行版”,就是在 Linux kernel 的基礎(chǔ)上枣耀,再加裝相應(yīng)的輔助性軟件霉晕,使之成為一個(gè)【可用的】操作系統(tǒng)。
∞仁唷(關(guān)于“發(fā)行版”的更多介紹娄昆,可以參見(jiàn)俺的另一篇《掃盲 Linux:如何選擇發(fā)行版?》)
◇啥是“攻擊面”缝彬?
通俗地說(shuō)萌焰,系統(tǒng)中凡是【有可能】被攻擊者利用的地方,都【有可能】存在安全漏洞谷浅。這些“地方”的總和扒俯,稱(chēng)之為“攻擊面”。
◇啥是“攻擊面”的【大小】一疯?
這個(gè)概念相對(duì)比較好理解撼玄。
通俗地理解:軟件越多,則攻擊面越大墩邀;軟件所提供的“數(shù)據(jù)輸入途徑”越多掌猛,則攻擊面越大。
∶级谩(注:上面的說(shuō)法只是一直【通俗化】表達(dá)荔茬,其實(shí)并不嚴(yán)密废膘;喜歡抬杠的同學(xué),別較真哦)
∧轿怠(在其它條件類(lèi)似的情況下)攻擊面越大丐黄,則系統(tǒng)被入侵的風(fēng)險(xiǎn)越大。
◇啥是“攻擊面”的【確定性】孔飒?
這個(gè)概念的理解灌闺,相對(duì)費(fèi)點(diǎn)口舌。
所謂的“確定性”就是指攻擊者對(duì)你系統(tǒng)中安裝的軟件坏瞄,了解的詳細(xì)程度桂对。
攻擊者對(duì)你系統(tǒng)中的軟件情況了解地越多越詳細(xì),那就表示“確定性”越高惦积。
〗有!(在其它條件類(lèi)似的情況下)“確定性”越高,攻擊者在實(shí)施入侵的過(guò)程中就越容易得手狮崩。
★L(fēng)inux 的發(fā)行版的數(shù)量極多——可以用來(lái)降低【攻擊面】的“確定性”
咱們拿 Windows 7 來(lái)作為對(duì)比蛛勉。
Windows 7雖然提供了幾個(gè)不同的版本(比如:家庭版、專(zhuān)業(yè)版睦柴、旗艦版)诽凌,但是這些版本其實(shí)差別不大。
為啥說(shuō)“差別不大”捏坦敌,因?yàn)檫@幾個(gè)不同版本的 Win7侣诵,都包含了完全相同的核心組件∮剑【由于 Windows 的可定制性很低】杜顺,這些核心組件你是【無(wú)法】移除滴!而只要有某個(gè)核心組件出現(xiàn)安全漏洞蘸炸,不管你用的是家庭版還是旗艦版躬络,都會(huì)中招。
〈钊濉(macOS 的情況與 Windows 類(lèi)似)
再來(lái)說(shuō) Linux穷当。
Linux 區(qū)別于其它操作系統(tǒng)(Windows、mac OS淹禾、BSD)的一大特色是:非常多的發(fā)行版馁菜。
不同的發(fā)行版,差別非常大铃岔。這種差別不光體現(xiàn)在“預(yù)裝的應(yīng)用軟件不同”汪疮,還體現(xiàn)在“內(nèi)核的版本不同”,還體現(xiàn)在“內(nèi)核的編譯參數(shù)不同”。
當(dāng)俺對(duì)讀者說(shuō):“俺用的是 Linux”铲咨,這句話(huà)【幾乎沒(méi)啥】信息量躲胳。通過(guò)這句話(huà)蜓洪,你無(wú)法知道俺的系統(tǒng)中會(huì)有哪些軟件纤勒,也無(wú)法知道俺的系統(tǒng)運(yùn)行的是哪個(gè)版本的內(nèi)核(kernel),更加無(wú)法知道俺系統(tǒng)的內(nèi)核具有哪些編譯參數(shù)隆檀。
★L(fēng)inux 具備高度可定制性——可以用來(lái)降低【攻擊面】的“大小”和“確定性”
◇降低攻擊面的【大小】
Linux 相比 Windows 和 macOS 的最顯著特點(diǎn)摇天,是其高度的可定制性。
找?guī)讉€(gè)栗子來(lái) show 一下:
第1個(gè)栗子:
Linux 的某些發(fā)行版可以比較方便地重編譯內(nèi)核恐仑。通過(guò)編譯內(nèi)核泉坐,可以把很多不需要的內(nèi)核模塊去掉(禁掉)。這當(dāng)然有助于降低攻擊面裳仆。
對(duì)于這點(diǎn)腕让,Windows 是完全做不到滴(因?yàn)槲④洓](méi)有把 Windows 的內(nèi)核開(kāi)源出來(lái));
蘋(píng)果的 macOS歧斟,雖然其內(nèi)核(darwin)是開(kāi)源的纯丸,也可以重編譯,但是比 Linux 要麻煩静袖。
第2個(gè)栗子:
Linux 可以裁剪到【極致】觉鼻。比如說(shuō):某個(gè)名叫 BasicLinux 的發(fā)行版可以把整個(gè)系統(tǒng)裁剪到只有 2.8MB,然后運(yùn)行在只有 3MB 內(nèi)存的 386 機(jī)器上队橙。
而近期的幾個(gè) Windows 版本(Win7坠陈、Win8、Win10)再怎么裁剪也還是有幾百兆捐康。
至于蘋(píng)果系統(tǒng)仇矾,貌似也無(wú)法像 Linux 這樣裁剪(精簡(jiǎn)到只有幾兆)
把系統(tǒng)大幅裁剪,對(duì)關(guān)注安全的人而言并【不是】為了省硬盤(pán)(現(xiàn)在硬盤(pán)已經(jīng)很便宜)解总,而是為了【降低攻擊面】贮匕。
◇降低攻擊面的【確定性】
關(guān)于“確定性”的話(huà)題,剛才聊“發(fā)行版”的時(shí)候倾鲫,已經(jīng)聊過(guò)了——如果攻擊不知道你用的是哪個(gè)發(fā)行版粗合,你系統(tǒng)的攻擊面非常不確定(確定性很低)。
其次乌昔,就算是攻擊者知道了你用的是哪個(gè)發(fā)行版隙疚,你的攻擊面依然“確定性很低”——因?yàn)?Linux 的發(fā)行版很容易進(jìn)行定制。
拿 Windows & macOS 來(lái)作為對(duì)比磕道。
Windows 的圖形界面系統(tǒng)是綁定在系統(tǒng)內(nèi)核的供屉,你無(wú)法定制它,更無(wú)法剝離它。
對(duì)于蘋(píng)果的系統(tǒng)伶丐,你要想把 macOS 的 GUI 系統(tǒng)徹底換掉悼做,貌似有難度。
但 Linux 就完全不同了——對(duì) Linux 的圖形化系統(tǒng)哗魂,從上層的“桌面環(huán)境”(desktop environment)到中間的“窗口管理器”(window manager)再到底下的“顯示服務(wù)器”(display server)肛走,都是【可選的】(都有不止一個(gè)的候選項(xiàng))。Linux 甚至還可以配置成【完全沒(méi)有圖形界面】录别。
★L(fēng)inux 支持多樣化的硬件(CPU/主板/等)——可以規(guī)避硬件的“單點(diǎn)風(fēng)險(xiǎn)”
◇預(yù)備知識(shí):何為“單點(diǎn)風(fēng)險(xiǎn)”朽色?
此處所說(shuō)的“單點(diǎn)風(fēng)險(xiǎn)”是指“單點(diǎn)故障的風(fēng)險(xiǎn)”。
關(guān)于“單點(diǎn)故障”(Single Point of Failure)這個(gè)概念组题,俺曾經(jīng)寫(xiě)過(guò)一篇博文《聊聊“單點(diǎn)故障”——關(guān)于“德國(guó)空難”和“李光耀”的隨想》葫男。
(為了節(jié)省篇幅崔列,此處就不再解釋了梢褐。不懂的同學(xué)請(qǐng)自己去看那篇)
◇預(yù)備知識(shí):啥是硬件漏洞?
前面提到過(guò)“軟件的安全漏洞”赵讯。其實(shí)除了軟件盈咳,硬件也可能出現(xiàn)安全漏洞。
就拿前幾個(gè)月的新聞來(lái)說(shuō)——高通的芯片存在一個(gè) QuadRooter 漏洞瘦癌,可以被攻擊者用于“提升權(quán)限”猪贪。據(jù)說(shuō)影響全球幾億部手機(jī)(相關(guān)報(bào)道在“這里”)
◇MacOS 的劣勢(shì)
前幾章的很多反面案例都是拿 Windows 來(lái)嘲諷;本章節(jié)讯私,俺要拿蘋(píng)果公司的 macOS 來(lái)作為反例了热押。
蘋(píng)果公司的商業(yè)模式有一大特色就是【軟硬通吃】——Apple 的產(chǎn)品,軟硬件都是它自己提供的斤寇。
這么做當(dāng)然有很多好處——比如說(shuō)更好的用戶(hù)體驗(yàn)桶癣。
但是在安全方面,缺點(diǎn)也很明顯:
- 攻擊面的確定性非常高
- 軟件的單點(diǎn)故障
- 硬件的單點(diǎn)故障
軟件的話(huà)題以及“攻擊面的確定性”娘锁,前面已經(jīng)聊過(guò)了牙寞。這里聊一下硬件的問(wèn)題。
假設(shè)你是一個(gè)果粉莫秆,并且你家中所有的 PC 都是蘋(píng)果的筆記本间雀。
由于蘋(píng)果的筆記本,硬件都是蘋(píng)果提供的镊屎,所以你沒(méi)有選擇的余地惹挟。這就導(dǎo)致你的 N 臺(tái) PC 的硬件是相似的(甚至是完全一樣的)
如果出現(xiàn)了一個(gè)硬件方面的安全漏洞,很有可能會(huì)導(dǎo)致你【所有的】蘋(píng)果筆記本都中招缝驳。
◇Linux 的優(yōu)勢(shì)
相比 Windows 和 mac OS连锯,Linux 支持的 CPU 類(lèi)型非常非常多(有可能你聽(tīng)說(shuō)過(guò)的 CPU归苍,它都支持)。
除了 CPU运怖,Linux 對(duì)其它的硬件的支持也很全——你可以把 Linux 運(yùn)行在各種各樣的硬件機(jī)型中拼弃,比如說(shuō):
智能手機(jī)和平板
家用的網(wǎng)絡(luò)路由器
電視機(jī)頂盒
樹(shù)莓派(Raspberry Pi)
轎車(chē)的車(chē)載系統(tǒng)
大型機(jī)、中型機(jī)摇展、小型機(jī)
......
所以吻氧,如果某個(gè) Linux 粉絲家中有 N 臺(tái) PC,他為了降低“硬件的單點(diǎn)風(fēng)險(xiǎn)”吗购,完全可以在購(gòu)買(mǎi) PC 的時(shí)候医男,選擇硬件完全不同的設(shè)備(比如一臺(tái)是 Intel 的 x86 芯片,另一臺(tái)是 ARM 芯片)捻勉。
★L(fēng)inux 的用戶(hù)群更加小眾——避免了【樹(shù)大招風(fēng)】
三大桌面操作系統(tǒng)的用戶(hù)數(shù),基本上是:Windows > macOS > Linux(Linux 的用戶(hù)群是三個(gè)里面最小的)
因此刀森,不管是民間的草根駭客還是國(guó)家級(jí)的御用駭客踱启,如果他們要研發(fā)滲透工具去入侵【桌面系統(tǒng)】,他們會(huì)把最多的資源(人力/物力)用來(lái)開(kāi)發(fā)針對(duì) Windows 的滲透工具研底;其次才是針對(duì) mac OS 的滲透工具埠偿;而針對(duì) Linux 【桌面】的滲透工具是最少的。
★L(fēng)inux 是開(kāi)源的——有助于代碼審查
開(kāi)源的好處有很多榜晦。包括本文前面提到的其中幾點(diǎn)冠蒋,也是跟“開(kāi)源”密不可分的。
考慮到篇幅有限乾胶,在本章節(jié)抖剿,俺只聊開(kāi)源帶來(lái)的其中一個(gè)好處——代碼審查(Code Review)。
在開(kāi)源社區(qū)有一個(gè)很有名的 Linus 定律:“只要有足夠多的眼睛识窿,就可讓所有問(wèn)題浮現(xiàn)(given enough eyeballs, all bugs are shallow.)”斩郎。這個(gè)定律指出了——開(kāi)源對(duì)代碼審查的關(guān)鍵作用。
∮髌怠(注:其實(shí)這個(gè)定律最早的提出者不是 Linus缩宜,而是埃里克·雷蒙德——《大教堂與市集》的作者)
為了加深大伙兒的印象,俺拿 Windows 來(lái)作為反例——因?yàn)?Windows 基本上完全是【閉源】的甥温。
假設(shè)某個(gè)微軟的程序員想要作惡——在 Windows 的某個(gè)核心模塊中留下一個(gè)后門(mén)锻煌。由于 Windows 的核心模塊都是【閉源】的,外界人士要想在閉源的模塊中發(fā)現(xiàn)這個(gè)后門(mén)姻蚓,難度非常大宋梧。雖然微軟內(nèi)部也有代碼審查,但是微軟內(nèi)部搞代碼審查的人史简,其人數(shù)是很有限滴乃秀,這些人的精力和工作熱情也是很有限滴肛著。所以,這類(lèi)后門(mén)是很難被發(fā)現(xiàn)滴跺讯!
反之枢贿,很多 Linux 發(fā)行版是完全開(kāi)源的(從內(nèi)核到應(yīng)用軟件,全部都提供源代碼)刀脏。如此一來(lái)局荚,全世界的程序員或者安全研究人員(只要愿意)都可以去看這些源代碼∮郏看代碼的人多了之后耀态,發(fā)現(xiàn)安全隱患的概率就會(huì)大大提升。
★有些 Linux 發(fā)行版由【社區(qū)維護(hù)】——有助于擺脫商業(yè)公司暂雹,降低隱私風(fēng)險(xiǎn)
(三大桌面系統(tǒng)中)只有 Linux 才存在【社區(qū)維護(hù)】這種概念首装。另外兩大桌面系統(tǒng)(Windows 和 mac OS)都是由【商業(yè)公司】來(lái)維護(hù)的。
商業(yè)公司與開(kāi)源社區(qū)杭跪,有一個(gè)非常本質(zhì)的區(qū)別——【商業(yè)公司要考慮盈利仙逻,而開(kāi)源社區(qū)沒(méi)有賺錢(qián)的壓力】。
俺博客的老讀者應(yīng)該知道——俺對(duì)商業(yè)公司(尤其是商業(yè)大公司)抱有某種不信任的態(tài)度涧尿,原因包括如下:
1. 商業(yè)公司會(huì)為了利潤(rùn)系奉,而主動(dòng)收集用戶(hù)隱私
Google 是這方面典型的【反面】教材——Google 90% 以上的利潤(rùn)來(lái)自“在線廣告業(yè)務(wù)”。為了實(shí)現(xiàn)廣告的【精準(zhǔn)投放】姑廉,Google 不得不收集用戶(hù)隱私缺亮,以增加對(duì)【每一個(gè)網(wǎng)民】的了解(Google 對(duì)你了解得越多,它投放給你的廣告就越精準(zhǔn))
2. 商業(yè)公司會(huì)為了利潤(rùn)桥言,而迫于政府壓力實(shí)施監(jiān)控
永遠(yuǎn)不要忘記斯諾登曝光的棱鏡門(mén)丑聞萌踱。
★L(fēng)inux 有更完善的軟件包管理機(jī)制(此優(yōu)點(diǎn)主要針對(duì) Windows)——有助于避免中招
◇缺乏“軟件包管理機(jī)制”的風(fēng)險(xiǎn)
長(zhǎng)期以來(lái),Windows 一直缺乏成熟完善的軟件包管理機(jī)制限书。很多菜鳥(niǎo)想要裝軟件虫蝶,不外乎如下步驟:
1、先到百度上搜一下
2倦西、找到某個(gè)下載站點(diǎn)
3能真、把軟件下載下來(lái)
4、安裝
5扰柠、使用
上述這種操作步驟粉铐,【至少】存在兩個(gè)安全缺陷:
缺陷1:軟件下載站點(diǎn)提供的安裝包,【未必】是純潔的(可能已經(jīng)被人做了手腳)
解釋?zhuān)?br>
有的軟件下載站點(diǎn)(或網(wǎng)盤(pán))卤档,本身就是黑店——它們提供的軟件包本身是植入后門(mén)的蝙泼;
還有的軟件下載站點(diǎn)(或網(wǎng)盤(pán)),因?yàn)楣芾韱T的疏忽——在收集軟件包的時(shí)候沒(méi)有仔細(xì)檢查劝枣,混入了病毒/木馬汤踏。
舉例:XcodeGhost 事件
此事的根源在于:因?yàn)樘O(píng)果公司官方的 Mac App Store 被 GFW 封鎖织鲸,很多國(guó)內(nèi)的程序員無(wú)法從 Mac 官網(wǎng)下載 Xcode(這是蘋(píng)果系統(tǒng)的開(kāi)發(fā)工具),有的程序員為了省事兒溪胶,直接通過(guò)墻內(nèi)的網(wǎng)盤(pán)下載 Xcode搂擦。其中有些人下載到的 Xcode 是帶有病毒/木馬的。然后這些粗心的程序員又用這個(gè)帶毒的 Xcode 去開(kāi)發(fā) iOS 應(yīng)用哗脖,結(jié)果導(dǎo)致開(kāi)發(fā)出來(lái)的 iOS 應(yīng)用也是帶毒的瀑踢。
受波及的 app 【至少】包括:微信、網(wǎng)易云音樂(lè)才避、滴滴打車(chē)橱夭、高德地圖、12306桑逝、中信銀行棘劣、同花順......(大公司倒下一片)
缺陷2:軟件下載過(guò)程中,【可能】被篡改
解釋?zhuān)?br>
如果下載過(guò)程中的傳輸是基于【明文的】HTTP 或 FTP肢娘,那么就存在【下載過(guò)程中被篡改】的風(fēng)險(xiǎn)呈础。
舉例:黑暗幽靈木馬(DCM)
缺陷3:沒(méi)有及時(shí)升級(jí)新版本
大部分軟件本身是不提供“自動(dòng)升級(jí)”功能的,對(duì)這類(lèi)軟件橱健,你就需要自己手動(dòng)去更新到新版本。
自己手動(dòng)更新沙廉,麻煩且不說(shuō)拘荡,而且每一次更新,就又重復(fù)上述這兩個(gè)風(fēng)險(xiǎn)撬陵。
◇“軟件包管理機(jī)制”的好處何在珊皿?
剛才介紹了——傳統(tǒng)方式下安裝軟件的風(fēng)險(xiǎn)。那么“軟件包管理機(jī)制”如何規(guī)避這些風(fēng)險(xiǎn)捏巨税?
好處1:更可信的來(lái)源
對(duì)于一個(gè) Linux 發(fā)行版而言蟋定,它的口碑越好,通常也說(shuō)明:它提供的軟件包越可靠草添。
發(fā)行版的管理員是如何確笔欢担可靠性的捏?他們通常會(huì)從某個(gè)軟件的官方網(wǎng)站直接獲取“第一手材料”(減少了中間環(huán)節(jié))远寸。
好處2:自動(dòng)的文件校驗(yàn)機(jī)制
完善的軟件包管理器肯定會(huì)自帶“文件校驗(yàn)”的方式(有的是基于“散列值校驗(yàn)”抄淑,有的是基于“數(shù)字簽名”,有的是這兩種相結(jié)合)驰后。
有了文件校驗(yàn)的機(jī)制肆资,如果軟件包在下載過(guò)程中被篡改了,在【安裝之前】就會(huì)被發(fā)現(xiàn)灶芝。
好處3:自動(dòng)的軟件升級(jí)機(jī)制
幾乎所有的軟件包管理機(jī)制郑原,都會(huì)幫你實(shí)現(xiàn)“自動(dòng)升級(jí)”唉韭。總是保持自動(dòng)更新犯犁,可以大大降低安全漏洞的風(fēng)險(xiǎn)属愤。
(關(guān)于“安全漏洞”的掃盲栖秕,可以參見(jiàn)《如何防止黑客》系列的其中一篇——是專(zhuān)介紹漏洞概念的)
注:包管理器的的自動(dòng)升級(jí)春塌,是【獨(dú)立于】軟件本身的自動(dòng)升級(jí)。換句話(huà)說(shuō)簇捍,不管某個(gè)軟件本身是否支持自動(dòng)升級(jí)只壳,包管理器都可以幫這個(gè)軟件完成自動(dòng)升級(jí)。
★L(fēng)inux 有更嚴(yán)格的“文件權(quán)限”(此優(yōu)點(diǎn)主要針對(duì) Windows)——有助于降低病毒的流行
曾經(jīng)有一個(gè)流傳很廣的【謬誤】——因?yàn)?Windows 的用戶(hù)數(shù)量大暑塑,所以才導(dǎo)致 Windows 下的病毒泛濫吼句。
要反駁這種謬誤很簡(jiǎn)單——如今“Android 裝機(jī)總量”已經(jīng)大大超越“所有版本 Windows 的裝機(jī)總量”。但是 Android 并沒(méi)有出現(xiàn)像 Windows 那么泛濫的病毒傳播事格。
那么惕艳,是什么導(dǎo)致 Windows 的病毒泛濫捏?一個(gè)很重要的原因是——文件權(quán)限不合理:
◇FAT 文件系統(tǒng)驹愚,完全不支持“文件權(quán)限”
早期的 DOS 操作系統(tǒng)以及早期的 Win9x(Win95远搪、Win98),只支持 FAT 格式的文件系統(tǒng)逢捺。而這種文件系統(tǒng)【不支持】文件權(quán)限谁鳍。
沒(méi)有文件權(quán)限就意味著——任何一個(gè)進(jìn)程都可以修改 FAT 分區(qū)中的任何一個(gè)文件。這樣的系統(tǒng)環(huán)境劫瞳,簡(jiǎn)直就是病毒的天堂倘潜。
所以在 DOS 時(shí)代以及 Win9x 時(shí)代,病毒的流行程度很廣志于;到了 NT 時(shí)代(Win2000 之后)涮因,開(kāi)始普及 NTFS 文件系統(tǒng)(支持文件權(quán)限),病毒的流行程度就一下子少了很多伺绽。
◇Windows 缺乏“可執(zhí)行權(quán)限”的概念
在 Windows 下养泡,一個(gè)文件是否“可執(zhí)行”是根據(jù)擴(kuò)展名(exe、com憔恳、bat ...)瓤荔,而【不是】根據(jù)文件權(quán)限。
相比之下钥组,所有 POSIX 風(fēng)格的操作系統(tǒng)(早期的 Unix输硝、如今的 Linux、各種 BSD)都是根據(jù)專(zhuān)有的“可執(zhí)行權(quán)限”來(lái)決定一個(gè)文件是否可以運(yùn)行程梦。
Windows 的反例:
很多年以前点把,Windows 上就流行一個(gè)低劣的騙術(shù)——把一個(gè) exe 的可執(zhí)行文件內(nèi)置一個(gè) jpg 的圖標(biāo)橘荠,然后再通過(guò)適當(dāng)?shù)匦薷奈募瑐窝b成一個(gè)吸引人的圖片文件(此時(shí)該文件的擴(kuò)展名依然是 exe郎逃,但是菜鳥(niǎo)通過(guò)資源管理器看這個(gè)文件哥童,會(huì)以為是個(gè)圖片)。
那些上當(dāng)?shù)木W(wǎng)民會(huì)直接雙擊該文件(想要打開(kāi)圖片)褒翰,但其實(shí)是運(yùn)行了一個(gè)惡意的可執(zhí)行文件(比如病毒或木馬)贮懈。
這樣的騙術(shù)之所以能成功,技術(shù)上的關(guān)鍵點(diǎn)在于——Windows 是根據(jù)文件擴(kuò)展名來(lái)判斷一個(gè)文件是否可執(zhí)行优训。對(duì)于 POSIX 系統(tǒng)(UNIX朵你、Linux、BSD)這樣的騙術(shù)是【無(wú)法】得逞滴揣非。
★結(jié)尾
希望看完這篇博文抡医,可以促使某些讀者把桌面系統(tǒng)切換到 Linux 上。
接下來(lái)的技術(shù)博文早敬,俺會(huì)開(kāi)始寫(xiě) Linux 的一些傻瓜教程忌傻。由于 Linux 的發(fā)行版差異很大,俺目前初步考慮:基于 debian 發(fā)行版來(lái)介紹這些傻瓜教程搞监,
如果你想要推薦其它發(fā)行版(作為傻瓜教程的基礎(chǔ))水孩,可以在本文留言。
原文鏈接:https://program-think.blogspot.com/2017/03/Why-Linux-Is-More-Secure-Than-Windows-and-macOS.html