如何評價網易雲音樂被掛馬編譯器掛馬?

烏云:

XCode編譯器里有鬼


Ken Thompson 後繼有人!


這是一個很好的警示和宣傳材料吧,也體現了一些公司統一管理軟體開發工具的好處吧,然後開發者從公司統一的軟體源下載,當然不排除有很二的軟體源管理者下載這個XCode,然後統一中招。

另外,可不可以通過這件事情,想起一下還有一幫我們這樣的苦逼的編譯器開發者,其實要在編譯器裡面幹壞事是非常非常容易的,而且有千萬種玩死你的方法,完全是神不知鬼不覺。


記得以前帶病毒的Delphi么,和那個能做到的事情差不多,不過那個Delphi sysconst.dcu病毒感染的目標是Delphi本身

據分析,這次的病毒和之前的假冒越獄插件盜取Apple ID的病毒使用了相同的控制伺服器域名,有可能是同一個黑產團體做的

Novel Malware XcodeGhost Modifies Xcode, Infects Apple iOS Apps and Hits App Store

KeyRaider: iOS Malware Steals Over 225,000 Apple Accounts to Create Free App Utopia

XCode至少在國內下載除了速度慢並沒有硬性的障礙,而細思恐極的是,Android Studio、Android SDK在國內因為眾所周知的原因難以從官方下載,如果黑產團體放出針對它們的編譯器病毒,然後在國內提供篡改過的鏡像下載,那就可能有非常大的危險了。


我們關心這個問題的人自然清楚這之間的危險性,我們會搭梯子,會校驗數字簽名和HASH,但是也許有一些開發流行應用的開發者並不清楚。

分隔線

其實那個帶病毒的delphi由於病毒可以看到源碼,有人改過它的加強版,比如定期刪除硬碟里的.pas文件的,把.pas文件打包發郵件的


對於Android開發者來說,看到這條消息嚇得不輕。

讓同學和合作者把他們下的Android Studio、SDK都卸了,重新安裝經過校驗的AS和SDK。

好在win上exe文件都是有簽名的。安裝時直接看簽名就可以了。


讓我更加堅定地用Visual Studio


不明白為什麼會有這麼多開發者中招。

姑且不去批判下載來源問題(畢竟國內網路環境確實水深火熱,找個更快的下載方式,情有可原),但你下載一個「李鬼」應用回來,打開時系統不是有警告么?這時候,稍微懂一點兒 OS X 知識的人都會覺得不對勁了吧?畢竟 Xcode 是蘋果官方出品,本不應該有警告啊。

在這種情況下還能無視警告強行打開,心臟也是夠大。這鍋,還是你們自己背吧。

至於 App Store 的審核,這種情況是不可能找出問題的。審核人員也是人,不是機器,就這麼幾行上傳數據的代碼,他們根本不可能查出來源,說不定還以為是開發者主動放進去用來統計應用數據的。恐怕他們也沒想到,開發者會強行使用來源不明的 Xcode 編譯應用吧。


許多開發團隊對開發工具的獲取與更新,普遍存在規則制定和監督上的漏洞。

以我個人對程序員的了解,很多人都存在『把活做完就行,你管我怎麼實現』的心態,公司層面上一般也就統一要求下開發工具和開發框架之類(但即便如此,也有大量人支持開發工具程序員自己決定,能寫出代碼來就行,比如參見這個問題:同事堅持用VI進行MAC開發,怎麼破? - 編程)

而在公司層面上,關於開發工具的更新,這點上很多公司沒有規則,或者實際上沒有對規則的監管。開發工具的更新一般都是程序員自行處理,以XCode為例,用系統內置的AppStore更新或蘋果官網瀏覽器下載更新,是最安全的方式,之所以從(國內)別處下載,下載完也不校驗md5或sha1,無非是圖下載快、省事,此外,什麼人、什麼編譯環境來編譯打包準備發布的軟體,軟體測試過程中網路抓包發現向不明網站提交數據,這些制度想做都是比較容易做到的,不敢說百分百絕對杜絕,但可以杜絕大部分編譯中的安全問題。但在實際上,恐怕大多數團隊都沒這麼做,原因無非是嫌麻煩。

幸好iOS還有沙盒之類,如果是越獄的iOS或Android,或者Windows和OSX,可以偽裝的自由度、可獲取的信息更無法想像,而用戶出於對一些口碑較好軟體的好感與信任,很容易中招。如果造成用戶方知識產權或財產的損失,後果之大難以預料,那時候恐怕不是程序員認個錯能解決的了。

總之,這次事件提醒各開發團隊:軟體安全要防微杜漸,對開發工具獲取與更新的規則和監督必須做到位,重視用戶體驗很重要,但尊重用戶安全是一切體驗的前提。


首先,愚蠢的Xcode沒有(顯而易見的)官方離線安裝包。

其次,因為沒有官方的離線安裝包,所以官方也不會告訴你官方包的校驗值應該是多少。

最後,很多團隊都有把所有用到的工具搞一份離線包到區域網網伺服器的習慣。這樣等到下的時候能節省大量的工時。

你並不能說這是錯的,你們所有dev必須全部給我去Appstore更新然後大家一起更新把公司的網路出口乾爆。

所以我覺得是Apple的鍋(


會寫程序 != 有安全常識

前車之鑒:中文版putty後門事件分析

下面就等好心人在各種Linux下「一鍵部署腳本」里放點好東西了,或者早就這麼幹了?


給他們的開發買個Mac吧,別讓他們裝非MAS的版本


開發機不讓聯網吧, 所以才下你妹的網盤版


蘋果的審核就那麼回事,誰也別吹了。


看到點贊最高的回答,忍不住要來一發。

首先,愚蠢的Xcode沒有(顯而易見的)官方離線安裝包。 ——匿名的答主

首先我肯定是答非所問的,我僅就著xcode沒有官方離線包的誤導來安利一下官方的離線dmg下載地址(可能沒辣么顯而易見)

類似的問題:如何快速從App Store上下載xcode? - 蘇燁的回答

==============================

雖然沒有收藏的必要,但求贊起來擴散給需要的開發者們吧:)

==============================

官方網站下載各個版本的Xcode和Tools的DMG地址:(需要登錄開發者帳號)

https://developer.apple.com/downloads/ (這個真的是官網 真的是官網 真的是官網)

下方列出部分版本的下載地址,全是官方地址(也需要先登錄開發者帳號)。

  • Xcode 7
    • 7.1 beta 2: https://developer.apple.com/services-account/download?path=/Developer_Tools/Xcode_7.1_beta_2/Xcode_7.1_beta_2.dmg
    • 7.0.1 : http://developer.apple.com/devcenter/download.action?path=/Developer_Tools/Xcode_7.0.1/Xcode_7.0.1.dmg
  • Xcode 6
    • 6.4: http://developer.apple.com/devcenter/download.action?path=/Developer_Tools/Xcode_6.4/Xcode_6.4.dmg
    • 6.3.2: http://developer.apple.com/devcenter/download.action?path=/Developer_Tools/Xcode_6.3.2/Xcode_6.3.2.dmg
    • 6.2: http://developer.apple.com/devcenter/download.action?path=/Developer_Tools/Xcode_6.2/Xcode_6.2.dmg
    • 6.1.1: https://developer.apple.com/devcenter/download.action?path=/Developer_Tools/xcode_6.1.1/xcode_6.1.1.dmg
    • 6.0.1: https://developer.apple.com/devcenter/download.action?path=/Developer_Tools/xcode_6.0.1/xcode_6.0.1.dmg
  • Xcode 5
    • 5.1.1: https://developer.apple.com/devcenter/download.action?path=/Developer_Tools/xcode_5.1.1/xcode_5.1.1.dmg
    • 5.0.2: https://developer.apple.com/devcenter/download.action?path=/Developer_Tools/xcode_5.0.2/xcode_5.0.2.dmg

===== 僅列出以上版本,更多版本去官網看吧,應該也沒人用4.x了


我就好奇了,軟體公司不是一般都應該有一個中央build server來產生權威二進位文件嗎?難道這個build server裝的是帶毒的???按道理開發者本機上的編譯器即便被黑了也沒關係,反正源代碼都要commit到build server作release build啊。

就這麼一台(一群)權威server,往上面亂裝東西?醉了。

剛知道還有好幾個公司中招,聽起來像是有人在下棋?


如果是少數人遇到,那是少數人的問題。如果說中國大多數應用都存在這個問題,那就不只是開發者的問題。網路安全最常識的就是你做了99%的防護,被人鑽了1%的漏洞,你做的所有事情都白做。

很多攻擊手法都是被發現了才知道有這麼一種,況且這次事件看下來應該已經是產業化運作,潛伏期應該有一段時間了。

有人說這是開發者的問題,翻牆是基本技能。我說想多了,會翻牆可阻止不了被人鑽空子。只是這次事件如果翻牆更新官網的XCode可以避免而已。(其實也難說,如果流量被劫持,你從官網下載其實也可能被掛馬。現在常見的手機應用更新劫持就是這種,下載了A安裝變成了B。)

環境如此,所以國人得更小心一些才是。


稍微有正經開發流程的公司都應該有獨立的build server,有專門的SCM團隊來維護,這種來路不明的軟體本身就不應該能夠進入構建系統,至少我們是要求任何使用的軟體都要有合法來源,而且會有軟體系統定期掃描。中招的公司只能說是流程管理混亂。


都是牛人


跟當年 secureCRT 漢化版留 root 如出一轍。

http://m.oschina.net/news/25203

這事跟Apple官方沒聯繫,市場狂熱需求下,開發者激增,水平良莠不齊導致。

年關將至都在沖kpi,不知道雲音樂的程序員能否躲過產品、運營老大們,活到明年春?


想起我司要求開發工具必須從rtools(內部軟體商店)下載,是有道理的。。


異曲同工的事還有被感染的GHOST

用GHOST備份系統後,會發現系統被安裝了百度全家福。我kao


推薦閱讀:

TAG:iOS | 信息安全 | 木馬 | 編譯器 | XcodeGhost |