5月12日外電頭條:自動更新是不是做過頭了?
原創【51CTO.com聲明,近期發現有多家媒體轉載51CTO.com“外電頭條”欄目文章,但不標注原文出處,且修改正文內容。51CTO.com鄭重聲明,非經授權,謝絕轉載;合作伙伴請務必標明出處,且禁止修改正文內容。】
【51CTO.com快譯】不可否認,每個程序員編寫的代碼都會有漏洞,雖然這聽起來讓人不快,但這并不是他們的錯——看看現在各種復雜的軟件開發平臺就能理解,出錯是不可避免的。要緊的是程序員要搶在錯誤造成任何傷害之前采取措施予以糾正。自動給用戶推安全補丁是修復漏洞的最快方法,但要注意:它很容易就做過頭了——就像微軟那樣。
典型的例子就是Internet Explorer。長期以來,由于其寬容的設計和一系列似乎永無休止的安全漏洞,微軟的瀏覽器被各種惡意軟件和攻擊當成主要目標。為此,4月中旬微軟發布了一個重要的IE安全更新。這應該是件值得慶賀的事情,微軟的開發人員做的不錯,可以說這個安全漏洞已經被關閉了。關于微軟的補丁安全公告,大家可以訪問51CTO的安全頻道的微軟漏洞補丁欄目。
這次的更新不僅僅是又一個安全補丁,而是Internet Explorer 8——一個全新的,重大的版本升級(關于IE8的安全性詳解,51CTO站上有相關介紹)。同意安裝的用戶會發現它取代了舊版本的IE。不同意的用戶…….嗯,沒辦法,那就必須敢于忽略這次“關鍵安全更新”。自己做出決定吧。
IE8建立了一個新標準
微軟有強有力的理由來這樣做,因為舊版本的瀏覽器不符合W3C標準——也就是大家常說的站點標準(Site Standard)。通過IE8,微軟可以強扭著每位IE用戶的胳膊讓他們升級到最新版,從而創造出一個Windows平臺上全新的事實上的標準。IE8是目前最符合標準的版本更新了。對于網絡開發人員來說,這可能是一個福音。
再說一遍,IE8對標準的堅持意味著它運行起來與IE7、IE6或IE5不會完全一樣。不管你喜歡還是不喜歡,已經有太多的企業級應用已經把這些老版本瀏覽器的獨特怪癖寫進去了。因此,微軟無法責怪別人,除了自己,畢竟是它發布了這些不符合安全要求的瀏覽器。微軟為了使Windows能夠保持向后兼容可謂投入巨大——此前微軟在兼容性方面曾經飽受詬病,51CTO.com曾經報道,微軟高管稱,IE瀏覽器已經發展了十多年,歷經多個版本;由于瀏覽器標準和網頁開發標準的不統一,導致IE為了兼容歷史版本而變得越來越“沉重”——因此對于IE來說,與其不停的發布補丁,推出一個新版本現在看來是最好的辦法了。
不幸的是,把IE與Windows相比有些恰當的過頭了。曾經風靡的“網上沖浪”這個短語早已失去了它原有的意義。如今的瀏覽器已經越來越復雜,可以將用戶和各種線上應用相連,在PC桌面上運行。它們自己已經變成了完整的軟件平臺。事實上,如果瀏覽器的功能繼續提高上去,我們熟知的桌面操作系統最終也可能會失去意義了。因此微軟敢于在瀏覽器這里試水對它的Windows也是具有一定風險的。
自動更新很容易走得太遠
然而還是會有bug出現的。在舊時期,客戶需要定期檢查供應商的網站,自己查找新的安全補丁。在最好的情況下,他們可以訂閱newsletter。即使這樣,他們也必須下載后自己安裝更新。微軟的Windows Update功能是向正確方向邁出的重要一步,隨后Firefox 1.5等也推出了自動更新功能。
但是,自動更新很容易走得太遠。并非僅僅是微軟在偷偷地挑戰用戶可以接受的底線,Google的Chrome也是如此,例如Google的更新服務就在后臺運行,在用戶不知道的情況下靜靜地下載并安裝新版本的瀏覽器。Google的做法“鼓舞”了其他人!蘋果的做法幾乎被認為是最糟的,因為它試圖為Windows下的QuickTime用戶默不做聲地安裝上Safari,而不管他們是否有興趣去嘗試一個新的瀏覽器。【51CTO.com編輯點評:蘋果的這種做法確實讓很多人郁悶,記得那會safari出了一個小漏洞,軟件居然提示我再重新下載一個完整的新版。】
幸運的是,IE8的更新比原來的要有風度的多。即使你下載了自動更新,也必須明確地確認你要安裝它。而如果你決定放棄并通過控制面板的添加/刪除程序將它移除,那么重新啟動后,你會發現你只是回到以前版本的IE——IE8并沒有被刪除,但是躲了起來,不會造成壞處,也沒有犯規。【51CTO.com編者注:有的朋友會誤以為IE8是可卸載的,但其實不是這樣,在最新的Windows 7 Build 7048里,打開控制面板的程序與功能,進入打開或關閉Windows功能,稍等就可以在程序服務清單里看到Internet Explorer 8的身影,接下來只需將其選中并確認,系統會重啟、進行配置并再次重啟,然后IE8就“不見”了。注意,這并不算卸載。】
當然,軟件供應商需要在自動處理安全性更新和用戶的合作之間找到平衡。用戶有權知道自己的電腦正在安裝哪些軟件,是因為什么原因。與此同時,他們也有責任讓自己的電腦得到最新的安全補丁,讓它們不會成為僵尸網絡、蠕蟲和其他惡意軟件的受害者。
#p#
預先提示?
也許現在的問題是軟件供應商沒有給用戶提供足夠的信息來做出正確的選擇。也許每個軟件更新都應該在安裝之前給用戶彈出一個易于理解的解釋。是不是可能會像下面這樣:
親愛的用戶:我們出了點小問題。當我們編寫您現在使用的這個版本的軟件時,我們認為它真的是完美的。但我們錯了,它包含了一些bug,互聯網上的罪犯可能會利用它們。如果您繼續使用,那么每次您使用計算機時,系統可能會遭受間諜軟件、病毒、身份盜竊的攻擊,還有一些更糟的情況。我們現在提供給您的補丁會解決這些弱點——我們是這樣認為的,但還有一個條件:它會改變軟件的某些功能和行為,因此它可能無法以先前的方式工作了。它也可能不再兼容以前那些正常兼容的軟件,這也可能意味著您將無法使用那些軟件了。當然,一切將由您來選擇。
然而,不知道是怎么回事,我嚴重懷疑這樣的提示是不會得到市場部門通過的……
【51CTO.com譯稿,非經授權請勿轉載。合作站點轉載請注明原文譯者和出處為51CTO.com,且不得修改原文內容。】
原文:Automatic updates: There has to be a better way 作者:Neil McAllister
【編輯推薦】