FineArt News

【臺灣資安大會直擊】精品科技:高科技產業的內部威脅死角,可能就潛藏在研發用的端點電腦

出處:https://www.ithome.com.tw/news/129903

不少高科技企業對於機密的保護,可能會偏重於對外的防禦,而較輕忽研發單位的開發環境,精品科技資安顧問陳伯榆認為,如何保護開發用的端點電腦,免於成為資料外洩的管道,是現今企業需要特別正視的問題。

針對現今以研發能量為後盾的企業而言,公司核心價值面臨的各式威脅,可說是內憂外患,不只是來自外部駭客的攻擊,同時還有存在於內部的威脅。但無論是內憂還是外患,在許多的攻擊事件中,竊取公司的機密,才是攻擊者發動的主要目的,因此,在2019臺灣資安大會上,精品科技資安顧問陳伯榆表示,防範資料外洩是企業首要工作項目之一,尤其是與公司命脈有關的研發單位(R&D),很可能會是企業相當容易忽略的環節。

我們常說家賊難防,近年來企業經常遭遇高階主管被同行挖角,主管跳槽後便一併將機密流出,導致公司蒙受重大損失的情況,可說是時有所聞。因此,企業對於擁有極高權限的主管,也開始加以防範,然而,對於同樣握有公司核心機密的開發團隊,卻未必會同等重視可能隱含的威脅。其實,除了上述由內部員工洩密的情況,陳伯榆說,隨著駭客多年來的手法演進,內部威脅也可能因為夾帶來惡意攻擊行為,而成為駭客從中竊取公司機密的管道。

 

資料外洩威脅態勢超越網路攻擊,僅次於極端氣候與天災

由於資料外洩對於企業的損害極為嚴重,可能導致公司的機密製程遭到對手複製,或是在現今各國的個資保護法規下,面臨高額罰款的情況。其中,又以公司內部機密被竊取的問題,影響最為直接。但這樣的情勢到底有多嚴重呢?陳伯榆引用了非營利組織世界經濟論壇(The World Economic Forum,WEF)的全球風險報告內容,表示資料外洩的危機,不僅在2017年到2019年之間,是歷年來的前5大風險裡,年年榜上有名,在2019年1月推出的最新報告裡,這樣的威脅型態所帶來的風險,嚴重程度更超過了網路攻擊。從陳伯榆所引述世界經濟論壇的觀點中,2019年全球10大危機中,前3名為極端氣候、減緩與適應氣候變遷失敗,以及天然災害等。資料外洩與網路攻擊分別為第4名與第5名,這兩種情況所衍生的潛在風險,程度也超越了人為的環境災害、大規模遷徙、生物多樣性與生態圈的瓦解、水資源危機,還有主要經濟市場的資產泡沫化等現象。

對於有心收集情資的人士而言,他們又會對那些資料最感興趣呢?陳伯榆引用了美國國家反情報安全中心(NCSC)2018年發表的外國經濟網路間諜報告(Foreign Economic Espionage in Cyberspace Report),指出最受到這些有心人士注目的情資,來源涵蓋了能源(含替代能源)、生物科技、國防、環境保護、高科技製造業,以及資訊通訊技術等6大領域。換言之,這些收集者的目標可說是面向了上述重要型態的產業。

而在上述的6種領域裡,研發或研究部門都在該產業的公司行號中,可說是占有最為關鍵的角色,左右這些企業於業界的影響力。陳伯榆特別提及,這種單位企業相當難以管理,為此,他們也針對這樣的現象,提出有關的解決方案,在不影響研發的流程之下,保護公司相關的機敏資料。

 

研發人員的端點電腦成為資料保護死角

陳伯瑜指出,開發工具可能是最大的機密洩露源頭。雖然,企業通常都會運用AD、群組原則(GPO),以及各式網路管制等措施,加以控管,可是大部分的開發工具,往往需要相當高的權限才能正常運作,這樣的情況下,原本在IT環境中的管理機制,難以兼顧這類軟體的應用需求,企業可能只好採取放行的做法。再加上許多開發工具要價不斐,軟體本身可能還要定期連線到原廠,驗證授權的有效性,因此企業可能無法將開發電腦建置在不能對外連線的封閉環境中。

在研發環境中,陳伯瑜將軟體開發工程師大致區分成兩種類型,一種是開發者的電腦透過RJ-45網路線或是JTAG連接埠,與開發板連接,電腦裡存放程式碼,開發者使用整合式開發環境(IDE)應用程式進行開發作業。

另一種則是在高科技製造業較為常見的方式,開發工程師在電腦上,利用硬體描述語言(HDL)工具、模擬器、電子設計自動化(EDA)工具、印刷電路板(PCB)設計工具等,進行開發工作,這種型態的開發方式往往是因應特定機器的控制,甚至這些研發用的電腦會進一步會連接到資料庫,以及SVN或Git版本控制系統上,彙集工程師的開發成果。

但無論是上述的那一種開發型態,工程師開發所使用的端點電腦,很有可能成為資料洩露的管道。陳伯瑜指出,企業過往都是在橋接端進行相關的防禦,但採取這樣策略的前提,是認為在開發環境裡,人員和裝置都是良善的,因此,對於開發用的端點電腦,長期以來普遍缺乏檢視其狀態的做法。

 

從開發者存取的行為,採取對應資安與稽核措施

因此,在企業的管理上,就要進一步釐清,開發作業上需要放行的正常行為,與應該管制與禁止的項目。例如,研發的成果若是允許分享到另一個部門,程式碼能夠提供加以運用,還是只能檢視片段內容等等。

 

【陳伯榆舉出在工程師的研發電腦上,可能會面臨的風險。從開發的過程來看,包含會呼叫系統的DLL、網路通訊、命令提示字元與PowerShell,以及連接外部硬體裝置等,而據他所知,有些研發工程師還會用各式的螢幕截圖工具,截取企業開發的成果。】

 陳伯榆舉出在工程師的研發電腦上,可能會面臨的風險。從開發的過程來看,包含會呼叫系統的DLL、網路通訊、命令提示字元與PowerShell,以及連接外部硬體裝置等,而據他所知,有些研發工程師還會用各式的螢幕截圖工具,截取企業開發的成果。

 

【在開發電腦上呼叫命令提示字元或是PowerShell的情況,大致可分成3種,分別是由系統呼叫、由IDE開發工具呼叫,以及從其他外部應用程式呼叫等。】

而在限制的部分,像是程式碼的複製與貼上,如果完全不設限,就可能成為資料外洩的管道。但是,研發工程師在除錯的過程中,很可能擷取部分開發的內容,上網查詢資料,一味禁止顯然會影響相關的研發流程,要採取什麼策略,便成為企業需要面臨的難題。

再者,研發過程中,工程師可能會以處理程序之間通訊(IPC)的方式,呼叫各種應用程式,通常這樣的情況下,被呼叫的應用程式也同樣繼承了相同的執行權限,導致能夠略過某些IT的管制措施,傳送資料到外部,企業也需要加以防範可能衍生的問題。

 

【在執行SVT防護系統展示的過程中,陳伯榆拿出了一款企業裡常見的Teensy開發板,並嘗試將開發電腦上的研發資料,傳送到這個開發板上。】

陳伯榆以精品自己推出的解決方案SVT為例,他們會在不影響研發者主要作業流程的情況下,限制像是列印、螢幕截圖,以及IPC呼叫的行為,對於除錯所需複製程式碼的部分,該系統則是透過政策的方式,由管理者限縮能夠複製的文字內容長度,雖然這樣的做法,還是難以防範分成多次剪下、貼上,但他們也搭配事件記錄的機制,若是從SVT中發現開發工程師頻繁的執行這類行為,管理者就能進一步了解工程師操作的原因。

【陳伯榆以他們收集客戶需求後,開發出的SVT系統為例,主要包含了管制開發人員部分可能會洩密的功能,以及共用對象的規範。】

  

除此之外,為了規避公司的稽核制度,工程師很可能會採取某些措施,包含了程式碼回避與混淆手法,或是利用企業對於網路環境規範的不足,採取DNS通道傳送資料到外部。陳伯榆表示,他曾經看過有些企業的工程師,竟一口氣用了6道混淆程序處理程式碼。在這樣的情況下,他認為企業現有的資安機制,很難察覺異狀。因此,陳伯榆指出,光是靠他們解決方案的管制措施,並不能完全防範各式外洩手法,而是也要搭配端點電腦的事件記錄追縱才行。其實企業對於這類電腦的狀態監控,從中發現可能的異常跡象,也是相當重要的措施,這也與當今端點防禦措施裡,透過大量事件記錄找出攻擊事件徵兆,再進一步因應的概念,算是不謀而合。

其實,從陳伯榆舉出以PowerShell執行上述回避或是混淆手法,他也列出一些參考的語法,包含了運用hidden指令隱藏外接裝置狀態,還有3種下載檔案的做法,分別是Invoke-WebRequest、System.Net.WebClient、Start-BitsTransfer;而在程式碼的混淆上,需要執行的腳本則是經過了解密才能運作,至於傳輸的管道,採用了Dnscat2這款透過DNS通道的軟體。作案完成之後,再清除端點電腦上所有的事件記錄(Clear-EventLog-LogName),以防相關記錄成為證據,以上述的流程為例,陳伯榆說,無論是駭客的攻擊,還是研發工程師監守自盜,竊密的手法上已經相當接近。

【無論是工程師有心竊取機密,還是駭客操控研發用的電腦,都可能利用圖中所列的方式外洩,規避企業各式機制,並且在完成之後,清除相關事件記錄。若是沒有對應的監控機制,便難以發現或是追查這種異常事件。】