APT攻擊 社交軟體 情蒐工具 漏洞資料庫

蒐集OSINT為精準網攻關鍵 從駭客視角檢查社群漏洞

肉搜神器theHarvester 學APT攻擊找開源情資

本文將先介紹關於APT的基本知識和常見攻擊手法,接著詳細介紹OSINT,包括其背景知識、常見蒐集方式,例如針對搜尋引擎的Shodan和Google Hacking、社交軟體的theHarvester和TweetMap。然後,透過簡單的指令來體驗社交軟體的情資蒐集工具theHarvester,並進行情境演練。

公開來源情資蒐集(Open-Source Intelligence,OSINT)為現今網路上重要的資訊蒐集技術,甚至駭客在發動攻擊前也時常利用OSINT工具來尋找目標的資訊。本文將先介紹何謂APT攻擊,並解釋APT與OSINT其中的關連性。接著介紹OSINT的相關知識,如冰山理論、資訊資料的差異以及OSINT週期等,並詳細說明OSINT的蒐集方式和工具,最後以情資蒐集工具theHarvester作為實際操作範例,並藉由情境演練來展現theHarvester所帶來的情資偵蒐魅力。

什麼是APT攻擊

APT全名為「Advanced Persistent Threat」,中文名稱為「進階持續性威脅」,是一種經典的網路攻擊手法,其目的通常是要竊取組織中機密或有含有價值的資料。APT與其他網路攻擊最大的不同在於「時長」,整個攻擊從開始到結束可能耗時數個月,在這數個月間,攻擊者會潛伏在受害組織的環境且不間斷地透過公開情資蒐集等各種不同的手法蒐集組織的相關資料,目的是為了更了解被駭組織,以提高攻擊者實施攻擊的成功率。

APT攻擊常見手法包含盜版網站、水坑式攻擊以及惡意電子郵件等等。其中,盜版網站通常會利用聳動標題或仿冒正版網站來吸引使用者點擊;水坑式攻擊泛指攻擊者利用網站的漏洞植入惡意的JavaScript程式,當使用者滾動畫面或點擊某個按鈕後即觸發攻擊;而寄發惡意電子郵件也是常見的攻擊類型,其通常被稱為「釣魚信件」,主要可分為兩類,第一類是在信件內容中加入攻擊者設計好的假網站網址,讓使用者信以為真。第二種則是在郵件中加入藏有惡意程式的附件,待使用者將其下載並執行後,攻擊者便會在使用者電腦偷偷安裝後門或木馬程式感染使用者的電腦,以達成攻擊者的目的。

APT若要成功,很大的關鍵是攻擊者必須足夠了解被攻擊的使用者。有鑑於此,「情資蒐集」便是很重要的關鍵。那該怎麼在網路上做「情資蒐集」呢?接下來就來介紹何謂OSINT。

什麼是OSINT

「公開來源情資蒐集(Open-Source Intelligence,OSINT)」是一種蒐集公開於網路上的資料的方式。然而,雖然其英文有「Open-Source」的字眼,但是其代表的意思是資料會在網路上被公開搜尋,並不代表它取得的資料都是「免費」。

認識網際網路冰山理論

在網際網路冰山理論中,將認知上的網際網路比喻成一座漂浮於海面上的冰山,其被分為「Surface Web(表面網路)」、「Deep Web(深層網路)」以及「Dark Web(暗網)」等三個部分,如圖1所示。

圖1  冰山理論示意圖。

其中,Surface Web就好比一座冰山中浮於海面上的冰山一角,任何人皆可進行瀏覽,圖2中的Yahoo奇摩就是屬於Surface Web範疇;而Deep Web和Dark Web,則如同一座冰山沉於海面下的部分,通常須透過特定方式才能進入,圖3所示的國家圖書館館藏系統則屬於Deep Web的範圍,其需要授權過的帳號和密碼才可以登入,非任何人皆可瀏覽。

圖2  Yahoo奇摩網站。
圖3  國家圖書館館藏系統。

最後,Dark Web通常需要透過像是「洋蔥路由器」(Tor Browser,https://www.torproject.org/download/)等方式,其特徵為網址以「onion」作為結尾,「onion」就是洋蔥,所以被稱為「洋蔥路由器」,圖4則為Dark Web內的其中一個網站,圖4中的框選處其結尾是「onion」。

圖4  Dark Web內的網站。

綜合上述之介紹,可知攻擊者除了在Surface Web進行搜尋外,也可以在Deep Web和Dark Web尋找所需的資料,並將獲得的「資料」整理為可用的「資訊」。有趣的是,根據2020年的報告,Surface Web的資料量僅占全世界網路的5%,Deep Web和Dark Web占有另外的95%,這也說明Surface Web為何僅僅是冰山一角,而Deep Web及Dark Web則占有一座冰山的大部分區域。

何謂OSINT週期

OSINT的週期共有計畫(Planning)、蒐集(Collection)、分析(Analyzing)、發送(Dissemination)以及反饋(Feedback)等五個階段,這個週期通常是循環的過程,以下分別就五個階段進行介紹,循環示意圖如圖5所示。

圖5  OSINT週期示意圖。

1. 計畫(Planning):在計畫階段中,需要定義蒐集的目標、資訊種類以及蒐集方式等等相關事項及細節,例如目標若為上班族,可以嘗試蒐集其工作相關之資訊並計畫從其社交軟體等方式開始蒐集。

2. 蒐集(Collection):蒐集階段是依照於前一階段訂定的計畫來蒐集所需的資料,在蒐集過程中通常會借助相關的工具進行,例如欲蒐集Twitter用戶可以使用theHarvester工具或是蒐集連網設備時可使用Shodan搜尋引擎等,同時蒐集所使用到的網站並不限於Surface Web,也可能包含Deep Web和Dark Web。

3. 處理(Processing):是指對於搜集而來的資料進行整理及驗證,同時從中篩選出不符需求、存在錯誤或是重複的部分,最終目的是將大量的資料轉換為易於閱讀的資訊。

4. 分析(Analyzing):分析階段便是將整理好的資訊交給領域專家和專業人士進行分析,以得出較為專業的判斷。

5. 反饋(Feedback):反饋階段指的是將整個事件的結果和過程中發生的問題進行全方面的檢討,並擬定改善方針,以利優化下一週期的進行。

OSINT的蒐集方式

OSINT的蒐集方式可分為「線下」及「線上」兩大類別,以下就兩個類別進行介紹。

線下蒐集

「線下」是於目標生活環境中尋找相關的資訊,主要分為以下三種方式:

Tailgating(尾隨其後)

是指尾隨目標進入一些需有通行證或相關證件的管制區域,以取得所需的資料,如私人公司等,在這些地方通常會有一些較難以從網路上取得的公司核心機密資料。

Dumpster Diving(翻找垃圾堆)

是指透過翻找目標所丟棄的垃圾,例如找到目標最近丟棄的發票來掌握知悉他曾購物過的場所,進而掌握其近期的行蹤。

Shoulder Surfing(在肩膀後偷看)

顧名思義,就是從肩膀後面透過監聽、竊聽等方式來獲得所需資訊,例如透過監視來掌握目標所採取的動作和行蹤,抑或是透過竊聽目標與他人的談話內容來得到想要的資訊。

線上蒐集

「線上」與「線下」最大的差異在於有無使用網路,「線上」的部分使用網路進行搜尋,主要分為可以分為「搜尋引擎」和「社交軟體」等兩類別,以下就這兩個類別做說明。

搜尋引擎

首先,說明「搜尋引擎」類別。平常使用的Google就是全世界最多人使用的搜尋引擎之一,但它主要搜尋的是「網站」,但其實還有另外一個專門搜尋「連網裝置」的搜尋引擎叫做Shodan,因此在這裡就分別介紹怎麼有效地使用Shodan和Google來達成OSINT之目的。

Shodan為一搜尋引擎,其可以搜尋暴露於網路上的設備,透過輸入邏輯運算子搭配IP、通訊埠、地理位置或其他相關資訊,即可得到目標連網設備的詳細資訊,甚至能查詢該設備已知的漏洞。以下介紹Shodan的Explore、Maps、Images等幾項主要功能。

Explore是最普遍的功能,可輸入裝置名或運算子,在搜尋後會顯示出搜尋到的裝置以及相關資訊。圖6為Explore的搜尋畫面,是以「webcam」作為關鍵字進行搜尋的結果,其中,左上方是搜尋到的裝置總數,左下方為裝置的統計資訊,中間方框部分為個別裝置的詳細資料。

圖6  使用Explore功能搜尋「webcam」之結果。

在Maps功能中輸入關鍵字,會將搜尋到的裝置以紅點的形式標示於地圖上。同樣也是以「webcam」作為關鍵字的結果,如圖7所示,Maps搜尋畫面的左上方會顯示搜尋到的裝置總數,該數字下方則會列出裝置的相關統計數據。

圖7  以Maps功能搜尋「webcam」之結果。

使用Images功能進行搜尋,則會將搜尋結果的裝置畫面呈現出來。同樣是以「webcam」作為關鍵字進行搜尋,如圖8所示,Images的搜尋結果畫面,左上方會顯示搜尋到的裝置總數,而圖中的畫面皆為截取自該裝置上的畫面。

圖8  以Images功能搜尋「webcam」之結果。

至於Google Hacking,指的是使用Google搜尋功能中的特殊語法來協助縮小搜尋的範圍,常用的語法如表1所示。例如「intext:"confidential" filetype:pdf」就表示尋找所有內文包含「confidential」且副檔名為「pdf」的檔案。透過Google Hacking的方式,有機會搜尋到存在於網路上遭到外流的公司內部文件或是外洩的使用者密碼等機密資訊。

既然都提到Google Hacking,那就不能不提到有一個漏洞資料庫叫做「GHDB」(Google Hacking Database),這個資料庫記錄著從以前到現在利用Google Hacking搜尋到的漏洞資料,例如未做安全授權存取的資料庫檔案或是暴露於網路上的印表機介面等,如圖9所示即是GHDB的頁面。

圖9  Google Hacking Database網頁畫面。

社交軟體

在社交軟體的部分,通常是指透過工具來尋找目標的「社交軟體」帳號,如Facebook、Twitter、電子郵件等等,或是利用工具分析目標的社交軟體帳號以獲取所需的資料,以下就兩款針對Twitter的工具theHarvester和TweetMap進行介紹。

theHarvester是Kali Linux內建的工具,可在網路上搜尋他人的電子郵件、使用者名稱等資訊,由於具豐富的資料來源及相當高的自由度,因此是一款非常受歡迎的OSINT工具。圖10為theHarvester的操作畫面,只要在輸入theHarvester後加入指令,即可執行表2中的指令。

圖10  theHarvester操作畫面。

TweetMap則是將推特與地圖進行結合的工具,可尋找出欲搜尋的標籤或貼文的地理位置等,並將其標示於地圖上。圖11所示為TweetMap的網頁畫面,在上方的搜尋欄中可以輸入想尋找的標籤或內容,其中右側框選部分為搜尋範圍中的熱門標籤,最下方是貼文使用的語言統計,其上方部分是推文與時間軸的對應圖,而中間實際地圖部分將呈現出貼文的地理分布情形。

圖11  TweetMap之畫面。

實際操作theHarvester

本次示範將以社團法人台灣E化資安分析管理協會網域「www.esam.io」作為搜尋標的,並分別以Linkedin及Google作為資料來源進行示範(使用的Kali Linux版本為2022.3)。

前置動作

首先,在操作theHarvester之前,先至VirtualBox和Kali Linux的官網下載虛擬機以及作業系統的檔案,並安裝虛擬機的應用程式,上述軟體可於以下網址下載:

‧VirtualBox:https://www.virtualbox.org/

‧Kali Linux:https://old.kali.org/kali-images/kali-2022.3/kali-linux-2022.3-installer-amd64.iso

接著,建立一台虛擬機,在建立過程中要注意虛擬機的規格應要符合Kali的硬體需求,否則會安裝失敗。Kali Linux的最低需求是:至少3.8G的硬體空間、i386和AMD64架構、至少512MB的記憶體。

實際操作

首先,啟動虛擬機。第一次啟動時會進行Kali Linux的安裝程序,只須按照系統指示並等待片刻,即可完成作業系統的安裝,安裝完畢後便會進入電腦桌面。

由於theHarvester是Kali Linux的內建工具,無須額外安裝,僅須點擊圖12中的框選處即可進行工具查詢,輸入「theHarvester」即可找到並執行。成功執行theHarvester之後,只要輸入「theHarvester -h」,即可查看各項參數的說明和用法。

圖12  輸入「theHarvester」,即可找到並執行theHarvester。

一開始,先使用theHarvester來查詢社團法人台灣E化資安分析管理協會網域「www.esam.io」的相關資訊且搜尋來源為Linkedin。

使用theHarvester進行查詢時,標準格式通常為「theHarvester -d <網域名稱> -b <資料來源> -l <結果數>」。結果數若無設定,則預設為500筆,本次將其設定為100筆。

輸入「theHarvester -d www.esam.io -b linkedin -l 100」,代表對網域「www.esam.io」進行搜尋,同時資料來源為Linkedin且結果數設定為「100」。執行後,得到圖13所示之結果,可以發現到雖然將結果數設定為「100」,但由於其全部僅找到16個結果,因此顯示出所有結果數,而其中Linkedin用戶皆為與搜尋標的有關係的帳號。

圖13  theHarvester搜尋之結果。

緊接著,透過theHarvester來查詢社團法人台灣E化資安分析管理協會網域「www.esam.io」的相關資訊且搜尋來源為Google。

輸入「theHarvester -d www.esam.io -b google -l 100」,代表對網域「www.esam.io」進行搜尋,同時資料來源為Google且結果數設定為100個,執行之後得到圖14所示之結果,可以發現雖然將結果數設定為100,但由於其未找到任何結果,因此顯示結果為零。

圖14  theHarvester搜尋之結果。

情境演練說明

佐維是一位受雇企業的資安工程師,某天他想要參加一個名為「資安盃」的桌球比賽,但是到了報名前夕,他的隊友卻突然受傷,再加上身邊目前也沒有人能夠一起參加比賽,因此他想起大學時期的桌球隊友于冠,但由於于冠早已更換了手機及其他通訊方式,因此佐維所擁有的資訊僅有于冠的姓名,以及知道具有資訊技術背景的他曾在「資安」相關單位任職過,同時也曾聽聞他曾經代表工作單位參加桌球比賽。

由於佐維作為一名資安工程師,因此對於該領域的知識都相當了解,於是聯想到工作中面對APT攻擊時執行OSINT反搜查的經驗,因此決定利用OSINT來尋找于冠。

在決定了如何尋找于冠之後,佐維先尋找于冠曾經任職過的單位,決定使用Google Hacking搜尋語法來搜尋,他手上的資訊表示,于冠曾於資安相關的單位工作,所以其網站中應含有「資安」字眼,同時曾代表單位參加桌球比賽,所以其判斷該單位可能也有「桌球隊」存在,因此在搜尋欄中輸入「intitle:"資安" intext:"桌球隊"」,表示尋找標題中帶有「資安」這個詞以及網頁中帶有「桌球隊」這個詞的網站,如圖15所示為輸入後的搜尋結果,推測于冠曾待過「社團法人台灣E化資安分析管理協會」。

圖15  Google Hacking搜尋結果。

找到于冠曾任職的單位之後,再透過theHarvester來尋找于冠的相關資訊,由於于冠和佐維使用網路的時間較早,因此于冠以前經常使用Twitter以及利用Linkedin尋找工作,所以佐維決定以Twitter及Linkedin作為來源。

先找找看于冠的Twitter帳號,因此在操作頁面輸入「theHarvester -d www.esam.io -b twitter -l 100」,針對網域「www.esam.io」進行搜尋,同時資料來源為Twitter且結果數設定為100個,如圖16所示為搜尋結果,發現並無Twitter帳號與「社團法人台灣E化資安分析管理協會」的網域有關,因此決定以Linkedin再嘗試搜尋一次。

圖16  Twitter為資料來源之搜尋結果。

之後,在操作頁面中輸入「theHarvester -d www.esam.io -b linkedin -l 100」,代表對網域「www.esam.io」進行搜尋,同時資料來源為Linkedin且結果數設定為100個,如圖17所示為搜尋結果。透過搜尋到的結果,佐維直接到Linkedin輸入,找到了數個帳號,再根據于冠姓名來尋找何者為于冠的帳號,之後成功地利用該帳號聯絡到了于冠,順利一起參加了比賽。藉此,佐維也體驗了善用OSINT所發揮的力量,得以達到更有效尋人啟事的科技魅力。

圖17  Linkedin為資料來源之搜尋結果。

<本文作者:社團法人台灣E化資安分析管理協會(ESAM, https://www.esam.io/)中央警察大學資訊密碼暨建構實驗室&情資安全與鑑識科學實驗室(ICCL and SECFORENSICS)1998年12月成立,目前由王旭正教授領軍,並致力於資訊安全、情資安全與鑑識科學,資料隱藏與資料快速搜尋之研究,以為人們於網際網路(Internet)世界探索的安全保障(https://hera.secforensics.org/)。>


追蹤我們Featrue us

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!