網路安全 滲透測試
滲透測試與社會工程學
滲透測試是一種主動措施,旨在在其他攻擊者之前嘗試識別服務和組織中的漏洞。
滲透測試可以在許多領域提供,例如:
- Web 應用程式。存在大量新開發的 Web 應用程式正在釋出。
- 網路和基礎設施。許多應用程式不是 Web 應用程式,而是使用其他協議。這些組織應用程式可以駐留在外部和內部。
- 內部測試/受感染計算機模擬。如果使用者在其系統上收到惡意軟體怎麼辦?這幾乎等於攻擊者能夠直接操作該系統,這對任何組織都構成嚴重風險。
- 外部組織測試。一個將整個組織作為滲透測試範圍的測試。這是理想的情況,但通常需要組織擁有自己的內部滲透測試團隊來長期關注,或者需要支付高昂的費用聘請外部團隊進行此測試。
- 丟失的筆記型電腦場景。在我們的場景中將進一步描述。
- 客戶端應用程式。企業中存在許多使用不同語言(如 C、C++、Java、Flash、Silverlight 或其他編譯軟體)編寫的應用程式。滲透測試也可以關注這些資產。
- 無線網路。一項旨在弄清楚 WIFI 是否可能被入侵、裝置是否擁有過時且易受攻擊的軟體,以及無線網路與其他網路之間是否建立了適當的隔離。
- 移動應用程式(Android、Windows Phone、IOS)。移動應用程式可能存在漏洞,並且還包括與企業內部託管的系統的連線和引用。移動應用程式還可能包含 API 金鑰等機密資訊,攻擊者可以輕易利用這些資訊。
- 社會工程學。在我們的場景中將進一步描述。
- 網路釣魚和語音釣魚。在我們的場景中將進一步描述。
- 物理。滲透測試團隊可以嘗試模擬他們帶著筆記型電腦出現在一個地點並插入網路連線時會發生什麼。物理攻擊還可以包括針對地點的其他型別隱蔽攻擊。
- ICS(“工業控制系統”)/SCADA(“監督控制和資料採集”)。這些系統通常控制著組織中最易受攻擊和關鍵的資產,因此它們應該受到嚴格審查。
無知識、部分知識和全知識滲透測試
根據參與程度,組織可以決定向進行滲透測試的團隊提供資訊。無知識滲透,有時稱為黑盒測試,意味著攻擊者事先一無所知。部分知識,有時稱為灰盒測試,意味著攻擊者會獲得一些知識。而全知識滲透測試,有時稱為白盒測試,則滲透測試人員擁有他們所需的一切,包括原始碼、網路圖、日誌等。
組織向滲透測試團隊提供的資訊越多,團隊提供的價值就越高。
丟失的筆記型電腦場景
一個很好的滲透測試場景是證明丟失或遺失筆記型電腦的後果。系統上擁有特權和憑據,攻擊者可以利用這些資訊進入目標組織。
系統可能受密碼保護,但存在許多技術可能允許攻擊者繞過此保護。例如:
- 系統的硬碟驅動器可能未完全加密,允許攻擊者將硬碟驅動器掛載到自己的系統上以提取資料和憑據。這些憑據又可以被破解並重新用於組織的許多登入頁面。
- 使用者可能已鎖定系統,但使用者仍處於登入狀態。即使系統已鎖定,該使用者仍有應用程式和程序在後臺執行。攻擊者可以嘗試透過例如 USB 新增一個惡意的網路卡到系統。這張網路卡會嘗試成為系統訪問網際網路的首選方式。如果系統使用這張網路卡,攻擊者現在可以看到網路流量並嘗試找到敏感資料,甚至更改資料。
一旦攻擊者能夠訪問該系統,他們就可以開始從中搜刮資訊,這些資訊可用於進一步推進攻擊者的目標。
社會工程學
一個系統的強度只與其最薄弱的成員一樣強,而這通常是人。社會工程學涉及針對使用者進行攻擊,試圖欺騙他們採取他們原本不打算採取的行動。這類技術非常流行,世界上許多最重大的駭客事件都涉及使用社會工程學技術。
社會工程學經常試圖濫用某些方面來讓受害者服從行動,例如:
- 大多數人都有禮貌的願望,尤其是對陌生人。
- 專業人士希望顯得知識淵博和聰明。
- 如果你受到稱讚,你往往會說更多並且透露更多。
- 大多數人不會僅僅為了撒謊而撒謊。
- 大多數人會對那些關心他們的人表現出友善的回應。
當某人遭到成功的社會工程學攻擊時,他們通常根本沒有意識到自己已經被攻擊了。
社會工程學場景:樂於助人
人類通常希望互相幫助。我們喜歡做善事!
設想一個場景:Eve 帶著被咖啡浸溼的紙張衝進一家大型公司辦公室的前臺。接待員清楚地看到 Eve 深感痛苦,並想知道發生了什麼。Eve 解釋說她將在 5 分鐘後進行面試,並且她真的需要打印出她的檔案供面試使用。
Eve 事先準備了一個惡意的 USB 驅動器,其中包含旨在破壞插入它的計算機的文件。她將惡意的 USB 驅動器交給接待員,並微笑著問接待員是否可以為她列印檔案。這可能就是攻擊者感染內部網路中的一臺系統,並允許他們進一步(橫向移動)感染更多系統所需的一切。
社會工程學場景:利用恐懼
人們經常害怕失敗或不服從命令。攻擊者經常利用恐懼來脅迫受害者做攻擊者需要的事情。例如,他們可以嘗試冒充公司董事要求提供資訊。也許社交媒體更新會透露該董事正在休假,這可以被用來策劃攻擊。
受害者可能不想挑戰董事,而且由於董事正在休假,可能更難核實資訊。
社會工程學場景:利用互惠
互惠是指做某事以作為回應,就像對某人向你表示善意的回應一樣。
如果我們考慮某人為你開門讓你進入你的辦公樓。因此,你可能會想為下一個人開門以示回報。這扇門可能需要刷卡進入,需要員工出示他們的徽章,但為了回饋同樣的善意,門被一直開著。這被稱為尾隨。
社會工程學場景:利用好奇心
人類天生就充滿好奇心。如果你在辦公室大樓外面發現一個 USB 驅動器,你會怎麼做?插入它?如果 USB 驅動器包含一個標題為“薪資資訊 - 當前更新”的檔案怎麼辦?
攻擊者可以故意在員工居住的區域附近丟棄許多惡意的 USB 驅動器,希望有人會插入它們。
文件可能包含惡意宏或漏洞利用,或者僅僅是欺騙使用者執行某些操作,這些操作會使他們自己受到損害。
網路釣魚
網路釣魚通常是透過電子郵件進行的技術。攻擊者會試圖脅迫和欺騙員工交出敏感詳細資訊,例如他們的憑據,或者讓他們安裝惡意應用程式,從而使攻擊者能夠控制系統。
網路釣魚是攻擊者入侵的常用技術,滲透測試人員也可以嘗試利用這一點。在網路安全中,永遠不要低估人的因素。只要有人參與,網路釣魚就一直是攻擊者訪問系統的可能途徑。
網路釣魚不應被用來證明人類會犯錯,而應試圖證明這些錯誤的後果。它也可以用來測試反垃圾郵件過濾器和使用者意識的強度。
可以進行一系列多次網路釣魚嘗試,而不是進行單一輪次。多輪網路釣魚活動有助於確定組織的整體意識,並讓他們知道,不僅是攻擊者在試圖欺騙我們的使用者,甚至是安全部門。
語音釣魚
語音釣魚是指透過電話試圖讓毫無戒心的員工為攻擊者執行操作。如果員工認為他們正在與他們認識的人通話,最好是具有權威的人,那麼員工可能會被欺騙執行不受歡迎的操作。
這是一個 Eve 打電話給 Alice 的例子:
Eve:你好,我是 Eve 小姐。CEO Margarethe 讓我親自給你打電話;她說你會幫忙。
Alice:好吧……我能為你做些什麼?
Eve:Margarethe 現在正在旅行,但迫切需要重置她的密碼,以便在她著陸時能繼續進行業務會議。
Eve:我們迫切需要重置她的電子郵件密碼,以便她能夠主持會議。
Eve:你能把她的密碼重置為 Margareth123 嗎?
Alice:我不確定……
Eve:請,Margarethe 特別要求你遵守此請求。必須立即完成,我不想考慮不做的後果……
Alice:好的。密碼已重置。
語音釣魚試圖讓受害者洩露資訊,透露敏感資訊。攻擊者可能會要求一份敏感檔案或電子表格的副本。