關于社會工程學攻擊的一次探索
在這篇文章中將討論社會工程學攻擊,很明顯,首先遇到的問題就是:“什么是社會工程學”和“這些攻擊有那些類型”。當然更有趣的是本文中將介紹使用者些技巧的黑客而不是使用像SET的方式攻擊。本文的目標是展現一個潛在的黑客使用不同的攻擊方式。
在信息安全學的背景下,社會工程學是一種操縱相關人員泄露出機密信息的藝術,建立在使人決斷產生認知偏差的基礎上,有時候這些偏差被稱為“人類硬件漏洞”。犯罪分子利用社會工程學的手法進行誘騙,使受害者不會意識到被利用來攻擊網絡。當人們沒有意識到他們擁有的信息的價值,所以并不會特意的保護他們所得知的信息,社會工程學正是利用了這一點。
安全在于要明確“誰”和“什么”需要信任:是否在一個合適或不合適的時間去相信一個人說的話;與你交流的人是否是你認定的那個人;當你正在瀏覽的網站是否是合法的;在電話另一頭的人提供給你的信息是否是可以相信的;當你向別人提供自己的信息時,你是否會考慮這是不是安全的。
社會工程學攻擊通常可以分為兩個類型:
一、基于人—基于人的社會工程學攻擊需要人與人的互動來接觸到需要竊取到的信息。這里只介紹幾種流行的方法。
1.偽裝
在這種攻擊方式中,黑客通常會偽裝成一個系統的合法用戶和員工。黑客此時可以通過偽裝成一個看門人、雇員或者客戶來獲取物理訪問權限。
2.冒充重要用戶
在這種攻擊方法中,黑客會偽裝成貴賓、高層經理或者其他有權使用或進入計算機系統并察看文件的人。大多數時候,低級別的員工不會針對這種情況來詢問任何問題。
3.冒充第三方
黑客也會偽裝成擁有權限的其他人。這種方法通常會在擁有授權的其他人不能使用機器的時候使用。
4.尋求幫助
這是一個經典的社會工程學攻擊的方法。向幫助臺和技術人員尋求幫助并套取想要的信息,這讓他們成為了社會工程學攻擊良好的目標。
5.偷窺
當一個人在輸入登陸密碼時收集他的密碼,當然可以通過偷窺的方法。
6.翻垃圾箱
尋找在垃圾箱中記錄密碼的紙、電腦打印的文件、快遞信息等,往往可以找到有用的信息。
二、基于計算機—基于計算機的社會工程學的攻擊可以使用相關軟件來獲取所需要的信息
1. 釣魚
釣魚涉及虛假郵件、聊天記錄或網站設計,模擬與捕捉真正目標系統的敏感數據。比如偽造一條上來自銀行或其他金融機構的需要“驗證”您登陸信息的消息,來冒充一條合法的登陸頁面來“嘲弄你”。
2.引誘
攻擊者可能使用能勾起你欲望的東西引誘你去點擊,可能是一場音樂會或一部電影的下載鏈接,也有可能是你“偶然"間發現的標有“高管薪酬摘要Q1 2013”并標有公司LOGO的U盤。一旦下載或使用了類似設備,PC或公司的網絡就會感染惡意軟件以便于犯罪分子進入你的系統。
3.在線詐騙
被包含在郵件附件中的惡意軟件,一旦被下載使用則很有可能被安裝包括能夠捕獲用戶的密碼的鍵盤記錄器、病毒、木馬甚至蠕蟲。又是也有可能彈出“特別優惠”的窗口,吸引用戶無意中安裝了其他的惡意軟件。
現在我們來演示一個真實的攻擊實例。
我假設我的目標的名字是一個“受害者先生”(Mr.Victim 不是真名),我們將通過一個非常簡單的搜索方法—將他的名字放入google來看看我們能得到什么結果。
從上面的結果我們可以看到,很多信息都可以通過google來收集。你可以找到目標的Facebook的主頁鏈接甚至是Linkedln和Twitter,還有同名的網站和相關的照片。
當然我們也可以通過使用社交網絡來收集盡可能多的信息。我們都知道社交網絡如Facebook、Twitter、Orkut、Linkedln這種每個人都在使用的社交網絡上,我們可以和陌生人交朋友,與他們聊天或分享一些東西。人們通常會認為這些社交網絡正在幫助他們讓自己加入一個龐大的人際關系網中。而我的觀點不是這樣,我意識到,這些社交網絡是世界上最大的人類信息識別數據庫。假設你要收集一個特定的人的信息,現在你可以通過Facebook找到這個人的照片以及他的個人信息,如他的地址、教育背景、家庭成員等。不僅如此,你可以通過這些信息來猜測這個人的性格,并進一步通過他/她更新的狀態來了解潛在受害人的個人生活近況。
在找到目標精確的信息之后,我們要將視線轉向他的好友列表,這會在你的社會工程學攻擊中提供幫助。你也可以通過下載所有的圖片和他所有的個人信息然后偽造一個假的“他”,然后向他的好友發送請求,并開始與他們溝通。這樣一來,你可以得到他更多的信息甚至知道了哪位是他的女友。有時很難真正的目標會隱藏在眾多虛假目標里,我發現當我在Facebook的搜索欄中搜索目標的名字,Facebook并沒有抓取包含有用戶真實姓名的數據庫,而是用戶名,比如:
http://www.Facebook.com/victim,這里的“victim”就是目標的用戶名。
這個用戶名有利于攻擊者預測目標的電子郵件ID。例如:我有這樣一個用戶名puja.kothari.796現在,我打開Facebook的登陸頁面,點擊“忘記密碼”,會看到這樣的選項:
現在我們輸入我們所知的用戶名。
現在我們擁有受害者的名字并已知他使用電子郵件,我們可以看到“p”和“h”之間的六顆星號,我們可以使用像http://verify-email.org的這種服務來驗證郵箱地址可不可能是pujaKoth@gmail.com。
Linkedln是一個不同與Facebook的網站。在這里我們可以找到目標工作背景和資歷。也可以找出哪些公司曾經雇傭過他。
當然我們也可以通過一些工具像:Maltego,Harvester,Creepy等來獲取更多的信息。
現在假設我們擁有了以下信息(虛構):
姓名:Mr.Victim
城市:紐約
職業:web開發
郵件地址:test@gmail.com
現在我知道了他在做什么工作,在哪個城市,如果我提供給他一份一家大公司的工作,我認為他肯定不會拒絕這個機會。現在我偽裝成一個需要web開發人員的公司與他聯系并提供一份不錯的薪水。
在上面的圖中我們可以看到,我可以選擇一家公司,并通過虛假郵件服務以該公司的HR的名義發送假郵件。像:hr@xyz.com
現在將此郵件發送給Mr.Victim,讓我們來看看在受害者眼里這封郵件是什么樣:
受到這種郵件后,很多人都會將簡歷轉發給攻擊者,簡歷上當然會包含很多敏感信息。
也可以發送給他一個在線工作申請表來獲得他的簡歷,這樣當他填寫的表單提交后,所有的信息都會儲存在你的郵件里。這里我使用了一個在線表單生成器。(原作者沒有進一步透露這個在線服務的地址)
從上面這個圖可以看出來,我在這創建了一個非常簡單的表單。我將個google dirve整合在一起,一旦有人填寫了表格,所有的信息將保存到我的google drive里。我們將表單生成,等待受害者填寫。
提交后受害者將看到“Thank You”的頁面。
我們來察看google drive里多了些什么東西。
妥了!我們的得到了目標的IP地址。
上面,我們不僅得知了目標的基礎信息還得到了目標的IP,這么做當然不能滿足黑客的好奇心,攻擊者們會通過鍵盤記錄器或遠控軟件進一步的獲得敏感信息。
比如我精心準備了一個Word文件和一個惡意的exe程序。
我們使用Winrar制作一個自解壓文件:
我們將惡意軟件解壓到C:\ProgramData\Microsoft
添加解壓后運行:
余下的幾個步驟:
別忘找一個Word的圖標
關于SFX的設置搞定了,檢查一下
一切OK,現在可以生成我們的惡意文檔了:
現在攻擊者可以通過郵件或者其他方式誘導目標中招了。
社會工程學的防御
沒錯,只有你能對抗社會工程學攻擊!
請永遠不要通過不安全的方式(電話、網上或者閑聊)透露您和您公司甚至是一些看似無關緊要的信息。如果涉及到敏感信息,請務必核實對方的身份。真正的IT部門和你的金融服務提供商一定不會詢問您的密碼或其他機密信息。對不同的網站和密碼服務使用不同的密碼,確保你的密碼足夠強大和復雜。
嘎巴翻后感:此文局限性很強,給出的方法也不夠詳盡。我刪節了很多我認為不必要的文字,如有不妥請務必告知。