日前新聞爆出史上最大網路攻擊案,這場攻擊極有可能是荷蘭一家稱為 Cyberbunker 的網站托管公司,針對 Spamhaus 三月中將之列為垃圾郵件黑名單、阻擋其訊息發送後所做出的激烈抗議行動。除此外美國國土安全部轄下電腦資安單位 CERT於2013年1月10日發布警告,指使用率相當高的甲骨文 (Oracle)(ORCL-US) 軟體 Java 爆發嚴重安全漏洞問題,恐令全球數億台安裝該軟體的個人電腦 (PC) 遭到駭客惡意攻擊,建議使用者應該立即解除安裝停用。

面對網路的攻擊與漏洞造成的資訊安全往往令企業頭疼,在企業的網管人員或系統管理人員為了風險因素,對於網路或系統變得時時刻刻需要不斷的分析與更新系統或做掃描動作,以避免災害的產生。

目前市面上有許多種測試都可以檢測您的應用程式和代管環境的安全狀況。有些人選擇從最上層做防護,另一種是在基礎設備中透過防火牆的規則防護網路、運作的服務和網頁伺服器這種配置。不管使用哪種方法,企業必須主動識別潛在的攻擊與漏洞,以保護他們的應用程式和資料的完整性甚至需要定期的風險性評估。

這些漏洞可以識別的方法有兩種:弱點偵測滲透測試

弱點偵測是一個自動化的掃描,以確定在一個系統中的基本缺陷。這可以是網路與應用程式漏洞掃描。這樣的處理方式主要是透過自動掃描,掃完後生成漏洞或問題的報告,此時再加以解決。

另一種是透過軟體設置IP地址列表在網路掃描,以確定哪些服務有在運行或正在運行的軟體(包括軟體的版本)。有限的測試運行與測試服務,包括試圖登錄帳戶憑據或對已知的易受攻擊版本的軟體版本進行比較。如果找到一個匹配,建議封閉的Port 位或軟體進行升級更新(往往最常需要更新均為微軟Windows Server)。

應用程式漏洞掃描可以採取兩種方法:

1.靜態程式分析

靜態程式分析Static program analysis)是指在不執行電腦程式的條件下,進行程式分析的方法。大部份的靜態程式分析的對象是針對特定版本的原始碼,也有些靜態程式分析的對象是目的碼。

靜態程式分析一詞多半是指配合靜態程式分析工具進行的分析,人工進行的分析一般稱為程式理解或代碼審查。靜態程式分析的複雜程度依所使用的工具而異,簡單的只考慮個別敘述及宣告的行為,複雜的可以分析程式的完整原始碼。

不同靜態程式分析產生的資訊也有所不同,簡單的可以是標示可能的代碼錯誤(如lint編程工具),複雜的可以是形式化方法,也就是用數學的方式證明程式的某些行為符合其設計規格。軟體度量和反向工程可以視為一種靜態程式分析的方式。

在實務上,在定義所謂的軟體品質指標(software quality objectives)後,軟體度量的推導及程式分析常一起進行,在開發嵌入式系統時常會用這種方式進行。

靜態程式分析的商業用途可以用來驗證安全關鍵電腦系統中的軟體,並指出可能有電腦保安隱患的程式碼,這類的應用越來越多。

例如以下的產業已確定用靜態程式分析作為提昇複雜軟體品質的方法:

  • 醫療軟體:美國的美國食品藥品監督管理局確定在醫療設備上使用靜態程式分析。
  • 核能軟體:英國的健康與安全委員會建議針對堆保護系統的軟體進行靜態程式分析中。

在資訊安全的領域中,靜態程式分析會稱為靜態應用程式安全檢測Static Application Security Testing,簡稱SAST)。

2.動態程式分析:

有些程式分析需要在程式執行時才能進行,這種程式分析稱為動態程式分析,它是一個黑盒子的應用程式的方法,並試圖透過探測進行,嘗試控制中的應用崩潰或繞過類似的工具。

這是一個自動的過程中,有一些廉價的或免費的工具,從購買Cenzic、白帽,根據Veracode,其中包括可以做到這一點在一個基本的水平,並提供不同版本的這種類型的掃描。

滲透測試的另一種方式是發現應用程式或電腦系統中的缺陷。這是一個手動過程,通常開始要做漏洞掃描或偵察,以確定在網路上執行的進程或應用程式。在網路滲透測試,一個強的駭客會試圖確定每個可訪問的主機在網路上正在執行什麼服務,並試圖利用漏洞的服務,以獲得對系統的侵入。

一旦入侵,根據滲透測試的範圍可以進行其他步驟做破壞或竊取資料。一個簡單的例子,例如試圖找回密碼或破解密碼的哈希數據庫。當這種情況發生下,管理員會建議選擇複雜的密碼這是必要的。

本次討論的主要觀點是當攻擊者想要執行攻擊時,攻擊者將執行瞭解環境以獲得進一步的滲透。在應用程式滲透測試,功力強的駭客可以先檢查中的程式執行邏輯的缺陷,透過自動掃描器或軟體確定是非常困難的事情。例如,如果它是可以植入到一個應用程式中的東西(這是不應該存在的東西),然後,將另外作為應用程式中的執行程式來予以糾正。

有些漏洞是難以透過掃描器檢測到的。例如,如果植入後可以看到後面的其他用戶,並引起他們的瀏覽器的暫存記憶溢出並允許攻擊者安裝軟體和增加瀏覽他們的桌面或者將它們重定向和竊取密碼,這是可以預防的,先進行測試和修復這些漏洞,讓攻擊者找不到漏洞。其他的例子困難的漏洞掃描所建立的應用程式錯誤消息或錯誤處理而釋放出太多的信息。

例如,攻擊者可以增加一個已知的帳戶號碼,看到另一個帳戶的資料。

不用說,功力強的駭客必須取得後方許可進行這些測試。

滲透測試經常不採取行動,如安裝一個後門,等到需要再進行DDoS攻擊或竊取信用卡號碼和使用,有時候只為了檢索一些數據證明。如果是這樣的情況下,一個“log”可以用於代表實際數據,並且可能是足以證明一個攻擊是成功的。

一般來說,log是最好是一支經驗豐富的專業人士的幫助下,嘗試執行這些測試並對測試或預生產環境。做總比什麼都不做要好,因為它是更好地找到自己的缺陷。

TAKI Cloud 為讓使用者安心,全面提供漏洞偵測與入侵測試,無時無刻的為客戶把關,並提出漏洞檢測數據報告以利於 TAKI Cloud 顧客能及早發現及早處理,我們所在乎的是危機的預防及事先作好準備,以避免災還發生時,無法應付,TAKI Cloud 提供了 Fortinet 的IPS、IDS的防護,並在內部採用 FortiAnalyzer設備作為分析,做到層層防護的架構,提供顧客咨詢安全的保障。

By taki

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *