《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 業(yè)界動態(tài) > 如何保護企業(yè)核心代碼

如何保護企業(yè)核心代碼

2022-11-04
來源:FreeBuf
關(guān)鍵詞: 核心代碼

  在眾多廠商、企業(yè)都在盡力強調(diào)數(shù)據(jù)安全、落地各種防護方案時,關(guān)于代碼安全,尤其是企業(yè)的核心代碼防護仿佛并沒有被時常提及,是否代碼的敏感性、重要程度已不如數(shù)據(jù)?企業(yè)保護核心代碼的措施又應(yīng)該是怎樣的?本期話題我們以核心代碼安全為話題,就相關(guān)問題展開討論。

  現(xiàn)在有企業(yè)會把核心代碼開放給大部分甚至所有部門員工,而不像數(shù)據(jù)一樣設(shè)置各種權(quán)限,這是否說明現(xiàn)在代碼安全已經(jīng)不像數(shù)據(jù)安全那么重要了?

  A1:

  代碼安全要看行業(yè)的,如果是快速迭代的互聯(lián)網(wǎng)模式,老的代碼沒什么用,也就不用怎么保護了。要是傳統(tǒng)軟件的代碼就不一樣了,你看微軟什么時候公開過代碼庫。

  A2:

  現(xiàn)在企業(yè)中都有專門的代碼倉庫來保管代碼,分組織、項目、人員來管理的。

  A3:

  代碼安全根據(jù)行業(yè)來區(qū)分,例如公司是專門從事軟件開發(fā)行業(yè)、軟件服務(wù)的,他們的核心資產(chǎn)就是代碼,那么他們會對代碼安全要求很嚴(yán)格;如果行業(yè)并不是靠這行吃飯的,代碼算不上核心資產(chǎn),那么自然也就不會那么重視。

  A4:

  沒錯,看行業(yè),尤其是制造等硬件底層的一些代碼,開發(fā)環(huán)境都得隔離,代碼落地加密處理,敏捷開發(fā)的前端沒這個必要。

  A5:

  重不重要取決于對公司的價值。代碼如果是核心產(chǎn)品,必然很重要。代碼庫也會設(shè)置各種權(quán)限,尤其是核心代碼。

  A6:

  我這并沒有開放給大部分員工,一般是項目相關(guān)的會有權(quán)限。但是我現(xiàn)在沒遇到特別好用的代碼管理軟件,Git雖然優(yōu)秀,但是其實面向的還是開源軟件開發(fā),在容錯性上做的很好,但是權(quán)限和安全性是不足的。比如某人如果取消了權(quán)限,但是Clone到本地的代碼一樣能用。舉個例子,某云的Devcloud也明顯就是社區(qū)作風(fēng),代碼庫的創(chuàng)建者可以自行刪掉代碼庫,真的是震撼了我。

  Q:現(xiàn)在認為核心代碼脫離了公司測試環(huán)境,根本就毫無用處, 跑不起來,那核心代碼的安全價值該如何衡量?

  A1:

  核心代碼的安全我認為應(yīng)該分兩方面來考量吧,第一是自身的安全考量,比如遭受安全事件后的影響程度;第二是從合作伙伴來考慮,比如華為就對合作伙伴有專門的標(biāo)準(zhǔn),要求必需滿足某些指標(biāo)才會采購。

  A2:

  確實有這種聲音。但被競爭對手拿到也不是那么絕對。安全價值或者說對公司的價值更多的是產(chǎn)品依賴度和知識產(chǎn)權(quán)。

  A3:

  題干說的這種核心代碼應(yīng)該是“瘦”核心,只要最重要的工作,其他都通過中、外圍系統(tǒng)的完成,要有接口和相應(yīng)的能力,不然核心代碼只能跑非常少的功能。

  A4:

  除非特別大公司的特別大的業(yè)務(wù)系統(tǒng)的某個模塊,其他的不存在跑不起來,毫無用處這個概念。無論是設(shè)計思路的竊取還是攻擊漏洞的暴露,代碼保護還是重要的,重要程度取決于老板預(yù)算。

  A5:

  這個說法應(yīng)該是我老東家當(dāng)年提的吧,號稱的代碼太吃資源了,被偷走了也跑不起來。結(jié)果,201x年的時候,真的有離職員工做競品,結(jié)果現(xiàn)在互聯(lián)網(wǎng)大廠普通員工都要簽競業(yè)協(xié)議了。而且也專門設(shè)置了安全部門來檢查員工是否拉不該拉的代碼,特別是離職前。

  A6:

  代碼不出網(wǎng)這是基本要求,所謂和核心代碼放出來的,只是現(xiàn)在的開源文化,放出一個公版,其他就不細說了。

  A7:

  小規(guī)模業(yè)務(wù)的代碼,離開公司絕對能跑起來,客戶端代碼離開公司絕對可以跑起來?;旧暇褪禽喿釉斓亩嗟墓?,可能代碼沒法直接Run起來,但是核心業(yè)務(wù)的核心代碼,根本不需要直接Run,直接抄里面的功能邏輯就行。

  不過說實在,現(xiàn)在大多數(shù)企業(yè)也沒有核心代碼吧,寫的大多數(shù)是垃圾。代碼泄露更大的問題是增加攻擊面。

  A8:

  打個比方,開源那些機器人項目,人家的機器人18歲能蹦能跳,你把開源抄過來,看上去像腦血栓,真正的核心,不管是核心功能還是存在隱患,不太可能讓所有人都能訪問。

  A9:

  這部分的差異可能不是代碼,有的時候是數(shù)據(jù)。甚至是日積月累的,這是真正的技術(shù)壁壘。比如搜索頭部公司為啥會一騎絕塵,就是網(wǎng)頁庫這個后來者很難追趕了,成本極高。

  A10:

  感覺死代碼是最沒用的技術(shù)壁壘,太容易被復(fù)制了。

  A11:

  但好像還是有很多人復(fù)制了代碼,也不會用。

  A12:

  國內(nèi)不是卷嘛,研發(fā)核心人員把代碼拿著出去又成立一個公司,產(chǎn)品五折,這種例子不要太多。

  A13:

  話說代碼倉庫開放不是會產(chǎn)生硬編碼的泄漏嗎?硬編碼那才是影響巨大。

  A14:

  對,所以杜絕硬編碼,因代碼泄露感覺是不可避免的。

  Q:如果需要建立核心代碼安全保護機制,研發(fā)和安全部門應(yīng)該如何制定?

  A1:

  分級管理,最小化知悉。核心代碼權(quán)限申請需要審批。

  A2:

  這種的措施挺多的了,比如代碼開發(fā)環(huán)境完全隔離,代碼開發(fā)不落地,都在云平臺上實施。根據(jù)不同的行業(yè),實施的方案也不同。游戲開發(fā)需要使用大量的美術(shù)資源,就無法適用上面的方法。

  包括零信任方案,也有推出相關(guān)的解決方案。還有制度要求、技術(shù)要求、懲罰措施、定期審計。不同的公司支持力度不同,預(yù)算不同,也就有了不同的方案。

  A3:

  技術(shù)層面,我們這邊搞的是代碼落地加密,實施比較快,但是也有一些不足,比如加密客戶端對MAC兼容性不太友好。

  A4:

  1.完善的代碼設(shè)計、開發(fā)、測試、上線流程。

  2.獨立開發(fā)、測試、上線環(huán)境。

  3.審計。

  A5:

  看老板預(yù)算,有多少錢辦多少事情,我現(xiàn)在這種情況,只能做到所有代碼庫在我管轄范圍之內(nèi),并且代碼提交和和拉取記錄有備份,也就是防一下離職前的大規(guī)模代碼拉取。至于電腦上的管控,成本太高,就不做了。

  A5:

  暗水印技術(shù)。

  A6:

  那得拍多少呀?

  A7:

  不一定要拍很多,比如游戲行業(yè),他只要拍一點開發(fā)畫面,對于游戲接下來的計劃、發(fā)行方案都有影響。

  A8:

  能詳細說說嗎,在代碼上加水印,還是在屏幕上加水???

  A9:

  放拍照當(dāng)然是屏幕水印了,源文件加上會影響文件屬性。

  A10:

  水印技術(shù)更多是為了泄漏后增強可追溯性,并不能防止拍照或截圖。不過在心理上,會造成一定的震懾。

  A11:

  類似隱寫,你可以了解一下。就是你拍照看不出什么東西,但是查到了根據(jù)圖片的暗水印信息就能定位是誰泄露出去的。

  A12:

  暗水印是在文擋或屏幕里加不可見點陣,通過反選,或者調(diào)色能把點陣顯示出來,然后根據(jù)點陣特征溯源。

  話題二:數(shù)據(jù)安全和個人信息保護,在涉及到數(shù)據(jù)加密脫敏時誰來負責(zé),這兩個崗位的職責(zé)區(qū)分是什么?

  A1:

  前者負責(zé)方案,后者負責(zé)審核、審計。

  A2:

  在這個場景內(nèi),個信更多偏需求方,數(shù)安偏方案和執(zhí)行。

  A3:

  目前大家墨守陳規(guī)的是個信和數(shù)據(jù)交融相錯。

  A4:

  數(shù)據(jù)安全包含個人信息,但是由于PII比較重要,所以專門拿出來做隱私管理,至于加密之類的歸屬數(shù)據(jù)安全。

  A5:

  那說起來,個信這塊,還是偏向于前端能不能收;數(shù)據(jù)這塊,偏向于要不要加密、怎么加,是這么理解嗎?至于要不要加密,得結(jié)合個信一起討論(總覺得這個地方是雙方共同的點,一個偏向法律要求,一個偏向技術(shù)實現(xiàn))。

  A6:

  我覺得這么理解吧,個人信息主要在于前期收集、收集范圍、告知用戶權(quán)力、數(shù)據(jù)所有者權(quán)力,如何處置收集到個人信息(根據(jù)當(dāng)?shù)卣撸?,收集到了,那就是歸屬數(shù)據(jù)安全進行管理。因為個人信息主要就是違法收集信息問題和過度收集信息。

  我覺得企業(yè)如果在做PII管理,可以融入數(shù)據(jù)安全流程,主要是在收集到的數(shù)據(jù)如果進行管理,例如加密、脫敏、以及后續(xù)共享傳輸?shù)确矫妫€有授權(quán)控制。

  A7:

  我指的是加密,不是收集。數(shù)據(jù)安全僅僅處理已經(jīng)拿到的數(shù)據(jù),而不管能不能拿這個數(shù)據(jù)。

  A8:

  我們是歸公司總經(jīng)理管,成立數(shù)據(jù)安全小組,負責(zé)人由高層擔(dān)任,包括了法務(wù)和研發(fā)負責(zé)人,安全只是干活的。規(guī)則可以安全訂,訂完其他人審核。通過之后下發(fā)是以高層的名義來。

  A9:

  所以你們的用戶隱私協(xié)議要寫好,告知用戶他的權(quán)力、數(shù)據(jù)所有者的權(quán)力,所以國內(nèi)一些隱私協(xié)議寫的很長,就是讓用戶不想看,出賣自己的隱私。這也算是一些小動作吧,在法律范圍內(nèi),數(shù)據(jù)所有者增加自己持有個人信息的處置權(quán)。

  A10:

  增加了自己的處置權(quán),也意味著自己需要對數(shù)據(jù)提供保護義務(wù)和責(zé)任。

  A11:

  所以,回歸到問題本身,數(shù)據(jù)安全和個信的分工。

  A12:

  剛開始就已經(jīng)說明了,如果有能力情況下肯定是分工的。但是實際工作過程中也是融入數(shù)據(jù)安全進行協(xié)同的,我不知道為什么要分的那么清楚,而且前期很多時候法務(wù)就可以搞定,都不用安全。


更多信息可以來這里獲取==>>電子技術(shù)應(yīng)用-AET<<

二維碼.png


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。

相關(guān)內(nèi)容