摘要

啟動反駭客入侵機制隔絕網站被駭 – 以PCM網站為例
Keywords / Firewall,Hacker
在網際網路資訊流通的社會,如何防範駭客無孔不入的攻擊,保護企業機密資訊愈趨重要。而在台積電,除了使用被動式的防火牆及DMZ (Demilitarized Zone)架構來保護企業內部網站,更主動的使用弱點掃瞄、侵入測試及原始碼分析等方法來將可能的漏洞防範未然,避免企業的資產遭受攻擊或竊取而損失。本文將針對這些防護機制做一概述,並說明新工所開發的PCM系統如何應用其來達到防止駭客的目標。
前言
隨著網路的普及化,人們獲取資訊來源的方式早已與以往大不相同,家用電腦與行動裝置逐漸成為人們生活中不可或缺的一環;藉此因應而生的,就是各式各樣的網站及社群平台,這些網站及平台讓資訊存取在任何時間以及任何地點變成可能;但相對的,你我的個人資訊,也因此暴露在網際網路上,增加了被他人截取的風險。
駭客(Hacker)各種層出不窮的手法導致個人資訊外洩的新聞屢見不鮮,一般消費者都會因此而遭受損失,更遑論以商業資訊機密謀生的各大企業。因此,如何在享受網路所帶來便利的同時,善用各種反駭客入侵(Anti-Hacking)的手法,加強對企業資訊機密的保護,是今日企業中重要的議題。
台積電的反駭客機制
在電腦資訊安全裡,駭客入侵(Hacking)意指未經授權的人,利用安全漏洞入侵到電腦系統,以竊取資料或是利用撰寫惡意程式去中斷、擾亂電腦系統的正常運作;反駭客入侵(Anti-hacking)相對的就是為了防堵駭客入侵所建構的防禦系統。
駭客與反駭客的攻防戰中,雙方的手法都是日新月異,駭客利用企業內部網站應用程式的安全弱點/漏洞,攻進企業內部獲取或破壞企業重要的資訊資產;這些弱點的存在對公司無疑造成潛在的威脅,公司針對所有網站應用程式,尤其是牽涉到外部網際網路使用範圍的系統,都必須符合公司制定的安全規範。反駭客機制繁多,接下來本文將針對公司主要及適用於大部份應用系統的機制進行介紹。
使用者身份認證 Identity Authentication
使用者身分識別是網路服務最基本的基礎建設。從每天一開始開啟電腦的作業系統開始、收發Email、到依工作內容會使用到的應用系統,都需要通過使用者身份的認證。正因為資料存取權限都是經由身份管控,一旦身份被冒用就代表著重要資料將可能被竊取。接著我們將說明加強身份認證主要的三種方式。
加強密碼強度
公司目前要求所有應用程式必須將身份認證密碼強度提高,並且強制其使用者進行密碼重設使其生效。公司制定的高強度的密碼規則包含:務必至少12個字元、混用英數字元以及不能與最近三次密碼重覆等。
圖形驗證碼 圖一
(CAPTCHA, Completely Automated Public Turing test to tell Computers and Humans Apart)
會由伺服器方自行生成一個蜷曲斜體的文數字要求使用者解答,因為只有人類能解讀這個驗證碼,可有效的防止惡意的利用機器人/電腦程式暴力破解方式進行不斷的登入嘗試。
圖一、CAPTCHA 範例圖

一次性密碼 圖二
(OTP, One-Time Password)
由伺服器端隨機產生一組數字密碼發送至使用者的裝置例如行動電話,使用者登入除了輸入自行設定的密碼外還必需同時輸入OTP達到雙重認證方式。
圖二、使用者密碼及一次性密碼雙重認證流程

弱點掃描 Vulnerability Assessment與侵入測試Penetration Test
弱點掃瞄技術可大致分成侵入式(Intrusive)及非侵入式(Non-Intrusive)兩種,是用來檢查系統是否有弱點可供駭客利用;不僅僅是利用目前已知的弱點進行檢測,還會模擬惡意使用者的行為,幫助我們了解到目前系統環境的漏洞,進而利用系統升級或者修改環境設定等方式,來將漏洞所帶來的風險降到最低。如果說防火牆和網路監控系統是被動的防禦手段,那麼弱點掃瞄就是一種主動的防範措施,可以有效降低駭客攻擊成功的機會,做到防患於未然。
非軍事區網路架構 DMZ Architecture, Demilitarized Zone Architecture
DMZ (Demilitarized Zone),為一種網路架構的佈置方案,常被使用的架設方案是在不信任的外部網路和可信任的內部網路之間,將部分用於提供對外服務的伺服器主機劃分到一個特定的網段內。在DMZ的主機能與同處DMZ內的主機和外部網路的主機通信,而同內部網路主機的通信會被受到限制。這使DMZ的主機能被內部網路和外部網路所訪問,而內部網路又能避免外部網路所得知。簡單來說,這樣的佈置是利用一個既不屬於內部網域也不屬於外部網域的特殊的區域來防止入侵者能夠直接進入內部網域而存取內部機密資訊。
新工的系統防護機制
新工為了滿足內部的需求,陸續開發如PPM (Professional Planning Management)、PDM (Professional Design Management)及PCM (Professional Construction Management)等網頁應用系統,而其中PCM包含了廠商從外部網域上傳照片/檔案的功能;也因為外部網域的開放,使得PCM暴露在外部駭客入侵的危險下。在未進行任何改善前,PCM僅依賴IP白名單管理方式,達到唯有被設定在白名單內的廠商,才能連線的管理目的 圖三。然而,基於公司機密資料保護立場而言,這樣的防護是不足夠的。這也促使去年我們與IT單位合作,針對PCM系統階段性完成了幾項重要且必要的防護機制。
圖三、PCM 改善前,外部可直接讀取內部主機之資料庫與實體檔案

第一階段,我們將 PCM七個子系統的身份進行驗證強化,不僅對原有的圖形驗證碼複雜度提高,再加上密碼長度及複雜度的提升,使之符合公司制定的標準,並要求使用者首次登入時,必須強制進行使用者密碼的變更確保安全。
第二階段,我們針對PCM的應用特性,設計出專屬於PCM的Two-Tier DMZ架構 圖四;透過這樣的架構配置可以達到兩個主要的目的。第一,來自外部 (Internet)任何存取都必須經過層層的登錄驗證,無法跨層進行資料的存取;這樣一來,如果有任何非正常的存取時,管理者便可即時發現,使得攻擊還沒進入內部時就直接阻斷其進入內部的途徑,這樣就達到了保護內部的目標。第二個目的,盡可能避免外部使用者進入內部的使用行為,這樣做無非就是要將由外到內的路徑減到最少,並將入侵機率降到最低。在實作此架構上,我們必須將系統應用程式、資料庫及實體檔案搬移到公司所提供的DMZ環境;在搬移過程中,我們發現了PCM一直沒有備份的機制,導致累積的檔案大小己超過DMZ環境提供的空間上限。為此我們特地更改程式,將上線專案及下線專案的存取區分開,並加入了自動將下線專案搬移至內部伺服器上的設計,藉此同時達到資料保護及系統管理的目的。
圖四、PCM 改善後,外部僅能存取DMZ 上的資料庫與檔案,隔絕了外部直接進入內部網域的風險

除了以上兩階段的系統安全改善,公司也持續不定期使用Fortify SCA檢測原始碼安全分析工具掃描,將有安全弱點的程式碼找出並產生報表,報表上會提供弱點的優先次序,我們則按照結果限時完成了程式修補。此外,在每一次的新程式/功能需上線前,也都必須通過掃描,結果沒有問題才會將新程式更新至伺服器上,落實了滴水不漏的管理。
最後,有了以上的防護還不足以安心,公司不定期地進行模擬駭客最新手法,從外部實際攻擊新工的PCM系統,以確保系統的防護的確是足夠的。可想而知,任何被模擬攻破的系統皆會被要求立刻的改善,因為這代表系統己經身在危機中,隨時都有被入侵的可能。
結論
透過與IT的合作,PCM網站在安全防護方面 圖五已有顯著的提升,但並不表示如此已可高枕無憂,以公司而言,雖然已採用弱點掃描、侵入測試、原始碼分析及DMZ架構等主/被動的防駭客機制,但仍無法完全杜絕駭客層出不窮的入侵手法;也因為如此,公司每年仍投入大量人力及物力在完善及更新防堵駭客入侵的保護措施上,以期能妥善保護公司寶貴的資產。
圖五、PCM 網站安全防護

除此之外,無論在開發或引進新系統時,皆須確認系統架構係符合公司安全規範,而每當有各項與資安相關的系統更新,也不可任意輕忽;反駭客入侵需要公司內部所有同仁共同努力,才能真正將風險降到最低。
參考文獻
- Shinder, Deb, “SolutionBase: Strengthen network defenses by using a DMZ”, TechRepublic U.S. (2005)
- Rouse, Margaret, “Vulnerability Analysis”, TechTarget (2006)
- Rodriguez, Chris, Martinez, Richard, “The Growing Hacking Threat to Websites: An Ongoing Commitment to Web Application Security”, Frost & Sullivan. (Retrieved 5thJanuary 2014)
- S, Karnouskos, “Stuxnet Worm Impact on Industrial Cyber-Physical System Security”, In: 37th Annual Conference of the IEEE Industrial Electronics Society (IECON 2011), Melbourne, Australia (2011)
留言(0)