FineArt News

為何要保護開發的原始碼及產出物?

最近幾個新聞都跟洩漏公司秘密給競爭對手有關;洩漏的內容五花八門,從20nm DRAM 製程、公司開發的程式、藍圖、設計圖等。一家機械設備設計廠商,交付設計圖給三家設備製造廠商,各自製造一部分組件,最後原公司將產品組立。沒想到,這三家不知為何恰巧聯合起來,交付設計圖ODM的次日,就有仿製的機器出現。由於製造一定要原始設計圖,給了對方之後就失去控制,僅僅依靠保密條款,即便事發之後也無法舉證。

 

傳統的DLP 系統的限制 

DLP (Data Leakage Prevention) 系統有二大類別;內容辨識與外洩管道控管。內容辨識會有誤放、錯殺的問題,規則調整複雜度(增加管理複雜度)與執行效能拖累(要掃描內容)等。但是,面對原始碼與設計圖,內容辨識便很難發揮。所有程式的組成,都有identifier, logic control, variables , constants 等,這些根本無法成為判斷條件,更別說是圖檔了(雖然有產品宣稱可以OCR還原辨識...),對公司的開發心血保護有限。SourceCode-Protection

 

那DRM 呢 ?

與其它資安系統比較起來,DRM 這類的產品算是比較針對文件本身的權限存取控制。對文件的保密、權限控制,可以有效防止無權限的人,使用其內容;大多數的辦公應用情境都可適用。但是,對使用IDE(整合開發環境)、CAM/CAD系統的研發,可不就那麼單純了。一般而言為了加密及權限控制,DRM程式跟AP(如WORD)及文件檔案格式會有強力嵌入結合,以便功能的施作。這樣代表著DRM程式本身將嚴重受到主應用程式牽制,如版本升級之後,DRM程式就不一定能支援適用。在IDE開發環境則更複雜,編輯程式碼就可能有數種編輯器,include files 來源有多種格式,其他還有resource file, project file,版本控制上傳SVN server等等。CAD/CAM 有子圖,元件圖,樣板等等。如果原生工具的廠商沒有提供保護方案,Third party 元件要適當的支援並不容易。

 

推行原始碼開發環境保護可能面臨的問題

依據推行資安工作多年經驗,資安從來不是技術問題,而是人類行為與商業管理層面的問題。在評估原始碼開發環境保護方案,先考慮可能遇到的障礙:

  1. 合適的工具 : 依前文所述,評估解決工具。
  2. 職場衝擊 : 首先,開發同仁工作習慣可能被迫改變。不當的流程改變或過嚴的限制,將造成生產力衝擊。其次失去工作上發揮的彈性,影響創意發揮。最有可能的下場,CSO會遇到強烈的抵制。
  3. 對公司信任感降低 : 同仁可能會覺得被監視,被管制,被側錄,被當小人。在對公司的信任感下降,則人事流動的風險增加。
  4. 被忽略的漏洞,更易於被挑戰 : 別忘了,程式開發者必然具備某些Know How,也具備挑戰心理(不然怎麼勝任RD ?)。相信要動手製作某種工具以規避某些控管限制,不會是難事。這時所評估的工具是否仍然有效?
  5. 適用的範圍判斷 : 到底那些部門、業務單位應該納入管理? 有的業務性質,圖檔插畫就是營業秘密。又或者像是線上遊戲,腳本(script)就是營業秘密,不僅僅是程式碼而已。
  6. 外部合作廠商應用 : 很多情境是需要給合作廠商原檔施工,也期望在外流通時,也能受到一定程度保護。由於合作商不是自己公司,管制保護措施所產生的作業不便,有可能會影響合作意願。

公司期望保護投資心血,必須師出有名,光明正大的政策宣示;並且妥適地與同仁溝通。雖然困難不完全在工具;但若所選擇解決方案洽當,是可以降低前述可能的管理複雜度及人員抗拒的阻力。