(給演演算法愛好者加星標,修煉程式設計內功)
原創整理:程式員的那些事(id:iProgrammer)
4 月 22 日,某站原始碼在 GitHub 突然被開源,雖然 GitHub 站方出面封掉了首個暴露的程式碼庫,但後續還是有很多人繼續主動在 GitHub 新建程式碼倉庫公開傳播某站後臺原始碼。
我們此前在微博上呼籲不要那樣做,因為涉嫌違法了。但還勸不住他們,甚至有人認為某站《保護自己原始碼的能力都沒有?還拿法律說事……》
今天來看一個相似案例,都是商業公司原始碼在 GitHub 被開源洩露了。
近日,深圳法院對大疆原始碼洩露案做出一審判決,綜合考慮犯罪情節以及自願認罪、有悔罪表現,以侵犯商業秘密罪判處大疆前員工有期徒刑六個月,並處罰金 20 萬人民幣。 據悉,這些洩露出去的程式碼,已用於該公司農業無人機產品,具有實用性。儘管大疆公司採取了合理的保密措施,但該次事件依然給大疆造成經濟損失 116.4 萬元人民幣。 —— 4 月 26 日,南方都市報報道
大疆是如何知道原始碼被洩露了?
據報道,大疆曾於 2017 年 8 月推出漏洞懸賞計劃,獎金金額從 100-30,000 美元不等,涉及的問題包括軟體安全、飛行安全以及應用程式穩定性等。
大疆漏洞懸賞計劃公開釋出後,有個安全研究員 Kevin Finisterr 發現了大疆一個非常嚴重的漏洞。Kevin 和大疆先確認他發現的漏洞屬於懸賞計劃,然後和搭檔整理出一份長達 31 頁的漏洞報告。
Kevin 在報告中透露,他們是從 GitHub 上的公開程式碼倉庫發現了大疆的 SSL 私鑰和 AES 私鑰。
攻擊者就能利用公開的私鑰,訪問儲存在大疆伺服器上的客戶敏感資訊,從而可能導致大疆伺服器上的使用者資訊、飛行日誌等私密資訊能被下載洩露。
大疆程式員在 GitHub 公開程式碼
經大疆公司的調查,發現子公司的一名員工把他負責編碼實現的(農業無人機的管理平臺)和(農機噴灑系統)兩個模組的程式碼,上傳到 GitHub 建立的公開程式碼倉庫,從而造成了原始碼洩露。
案發後,該員工第一時間在 GitHub 上刪除了相關程式碼倉庫,並積極配合調查,防止事態擴大。他在給 Kevin 的郵件中表示,“無意洩露了大疆的機密”、“我很後悔自己沒有法律意識,我願意承擔相應的法律責任。”
(Kevin 在推特公佈洩密員工發給他的郵件)
由這個案例可見,不管公司保護原始碼措施再怎麼完善,都扛不住自家員工主動公開洩密……
【附1】:有多少人在 GitHub 上洩露明文密碼?
除了主動洩露私鑰,還有很多人在 GitHub 上把登入資訊和明文密碼也都一起開源的。
2017 年 2 月,我們發過一條微博:
在 GitHub 上搜索 remove password,有 283,417 條 commit 記錄。
2019 年 4 月 27 日,在 GitHub 上搜索 remove password,有 484,260 條 commit 記錄。
【附2】:什麼是侵犯商業秘密罪?
根據《中華人民共和國刑法》第二百一十九條規定,侵犯商業秘密罪,是指以盜竊、利誘、脅迫或者其他不正當手段獲取權利人的商業秘密,或者非法披露、使用或者允許他人使用其所掌握的或獲取的商業秘密,給商業秘密的權利人造成重大損失的行為。
侵犯商業秘密行為,給商業秘密的權利人造成重大損失的,處三年以下有期徒刑或者拘役,並處或者單處罰金;造成特別嚴重後果的,處三年以上七年以下有限徒刑,並處罰金。可以根據情節處以一萬元以上二十萬元以下的罰款。
朋友會在“發現-看一看”看到你“在看”的內容