孟偉
摘 要 作為非傳統安全威脅的重要手段,社會工程學的應用越來越廣泛。使用者可以在神不知鬼不覺的情況下,運用基于心理學、語言學、行為學和社會學原理的方法手段,以較低的成本從目標處獲得價值可觀的信息,且不留下容易被追蹤和取證的痕跡。從廣義上說,任何個人和團體都可以使用社會工程學方法獲得公開或私密的信息,合法性根據實際操作情況而異;但從現實情況看,應用者多為計算機和司法從業者,且不懷好意、窺私欲強、專業機敏的黑客,常常作為入侵者對目標實施攻擊。
關鍵詞 社會工程學 欺騙偽裝 術語 心理攻擊
中圖分類號:TP393.08 文獻標識碼:A
0引言
社會工程學在上世紀60年代作為一個學科出現,被美國科技學界、商界所熟知。目前普遍認為創始人是美國頭號黑客凱文·米特尼克,他在實施攻擊的過程中充分運用了高超的計算機技術和心理學研究成果,其傳奇經歷使社會工程學名聲大噪。社會工程學在信息安全領域為業界專家學者所熟知,但對國內普通民眾和信息系統行業單位來說,實屬新興事物。社工攻擊的可操作性和攻擊特性研究對行業制度建設、信息安全防護、員工培訓計劃等企業生產經營活動具有針對性指導意義。對特殊行業活動,如情報偵察、刑偵調查等,也可合法加以利用。
1概述
1.1概念
社會工程學是綜合利用社會科學、人文科學、自然科學以及工程科學的相關知識,通過重構這些知識和技術,研究建構社會發展具體模式過程中的一般規律和方法的一門科學。高明的黑客將社會工程學作為一種控制意志的途徑,使其成為“一種讓他人遵從自己意愿的科學或藝術”。
社工手段針對的通常是具有社會屬性的個體,黑客常常利用人類天性中更趨于信任、和善、感恩、忠誠的傾向,自私、趨利避害、怕擔責任的天性,懦弱、奉承、貪婪、獵奇、虛榮、愛炫耀的性格缺陷,使目標按指令行事或說出內情,從而獲得未授權的信息或非法訪問網絡系統。
1.2實現方法
1.2.1信息收集
(1)收集內容。在與目標對話或對目標進行攻擊之前,要對目標有一個全面的了解,收集所有相關信息,具體包括姓名、年齡、職務、民族、出生日期、電話號碼、身份證號碼、郵箱地址、居住地址、興趣愛好、行為習慣、性格特點、近期活動安排、身邊親友和同事信息、用戶名、用戶ID、操作權限、作息時間、交接班內容、以及行業相關的一些常用專業術語、規章、制度、方法、約定等等,信息越詳細越好。
對目標越了解,越容易判斷出目標下一步的舉動,攻擊成功的概率越大。比如,一個時間觀念很強的人不大可能工作日8點鐘還在被窩睡覺,所以此時住宅無人、車輛可能停放在單位停車場、釣魚攻擊可行、電話攻擊可行、快遞可冒領、服務器非法登錄可能會被發現……
(2)信息來源。信息可以從各種公開和非公開的渠道獲得。公開的渠道包括政府網站公告、司法信息公示、單位網站介紹、招聘錄用情況、小區費用收繳通知等等;非公開的渠道包括咨詢臺信息獲取、垃圾桶文件碎片拼接、場所內談話竊聽、行為與環境觀察、角色經歷等等。
公開的信息人人都可得到,有時常常不可避免地要為人所知,為個人隱私保護而要求政府或單位不予公示也不現實。更重要的是加強非公開私人信息的防范。
咨詢臺之所以容易受到社工攻擊是因為他們所處的位置就是為他人提供幫助的,因此就可能被人利用來獲取非法信息。咨詢臺人員一般接受的培訓都是要求他們待人友善并能夠提供別人所需要的信息,所以這就成為了社會工程學師的金礦。大多數的咨詢臺人員所接受的安全領域的培訓與教育很少,這就造成了很大的安全隱患。同理,親友街坊私下閑聊獲取的信息,也可以認為是咨詢臺信息獲取。
翻垃圾是另一種常用的社會工程學手段。因為企事業單位的垃圾堆里面往往包含了大量的信息如電話本、機構表格、備忘錄、規定手冊、會議紀要、活動時間安排表、近期事件活動情況、假期安排、系統手冊、廢舊的硬件等等。紙張的拼接和廢舊硬件的數據恢復都會導致泄密,所以很多大型企業要求紙張必須粉碎化漿,光電子硬件設備要進行必要的報廢流程。
盡管風險很大,但場所竊聽仍是獲得敏感信息最直接有效的辦法,竊聽手段可以是專業設備竊聽、手機竊聽、內部人員竊聽等,其中內部人員就是社會工程學的重點攻擊對象。
行為與環境觀察往往能不經意間反應很多東西。房間內沒有鏡子和燈光的多半是盲人,抽紅旗渠香煙的多半是河南人,從不配帶首飾的多半是醫護人員、軍人和消防員。最典型的例子是,作為一名克格勃特工,普京走路一直保持著槍手步態——走路幾乎不擺右臂以方便快速拔槍。
完美的社工攻擊有時需要充分的角色經歷確保不出差錯。高明的社工學師常常會真正在目標工作的環境中從業一段時間,親身體會工作內容、流程、規范、行業術語和黑話,以確保欺騙時不被揭穿、不說外行話,甚至一句話就能讓對方認定你是“自己人”。比如,向一位牛氣沖沖的軍車駕駛員要“三證一單”會讓對方馬上意識到你“絕對”是自己人。
1.2.2攻擊手段
(1)弱口令攻擊。密碼心理學的研究者曾經做過一個實驗:隨機抽取100名大學生,每人寫下兩個單詞,同時告訴他們這些單詞是作為重要系統的登陸密碼用的。最后的試驗結果是相當吃驚的:其中37人使用了自己的中文姓名全拼或者簡拼;23 人使用了常見的英文單詞如 hello、good 等;18人選擇了計算機中常用的單詞如 system、admin、administrator 等;7人使用了自己的生日如19801010、801010、101080等。這項實驗的目的就是為了查看一般計算機用戶在選擇重要密碼時的心理狀態。
然而實驗結果顯示出了某些心理狀態的高概率分布:姓名被選中的概率高達 37%,如果入侵者掌握了詳細的個人信息,密碼被猜解成功的概率將非常高。同樣,用生日作為密碼的,即使自己把數字順序打亂,以六位密碼為例,組合數也是有限的,讓計算機猜解也是非常容易的。
與暴力猜解相比,這種有根有據的猜解嘗試,成功的概率要大得多。
(2)郵件攻擊、釣魚陷阱、掛馬鏈接。當攻擊者對目標有一定了解時,可以就目標近期參與的活動發起釣魚攻擊,偽裝成政府部門、領導、同事等進行欺騙,從而獲得口令等敏感信息。比如,攻擊者了解到學校內部某老師已在線申請休假,就偽裝成人事處同事向該老師發送一封針對性很強的電子郵件:“經濟管理系劉老師你好,我是人事處趙立,因后臺系統維護,你的休假申請無法及時遞交,請填寫如下表格并以附件形式回復給我。注意計算好休假的起始日期(您的休假時間是158天,寒暑假可以順延),一般5個工作日內您的申請將審核通過。”
試想,劉老師知道人事處有這個叫趙立的人負責休假事宜,自己也確實是學校經管系的老師,學校系統出問題的情況也經常發生,所以按照人天性中傾向于信任他人的心理,劉老師便會毫不猶豫地把包含個人賬號、口令、電話號碼、身份證號碼、課程安排表、學生學習進度、休假起始日期等信息的表格發送給攻擊者。攻擊者拿到口令等信息以后就可以直接以劉老師的身份登錄學校系統進行查詢、破壞,甚至利用計算機專業技術進行服務器提權。或者發散一下思維,以劉老師的身份再發郵件給趙立,獲取更多信息。當然,也可以嘗試下劉老師在其他網站上的賬號密碼是不是也一致……
除了郵件,發送一個和學校網站登錄頁很相似的釣魚網站或掛馬鏈接也是可以的。
(3)基于心理學研究的電話攻擊。社會工程學是一門依賴心理學的技術性攻擊方式,對心理學的研究程度決定了攻擊成功的概率。可以依賴的心理學原理很豐富,如心理弱點、與受害人之間的友誼、上下級領導關系認同、相似而相吸、感恩應該回報、道德和規則認同等等。
趨利避害是人的本性,也是人的心理弱點,如果加以利用能收到很好的效果。比如,在上班必經的路上立一個“前方修路,請繞行南三環”的路標,會讓受害者主動按照預先規劃的路徑行駛。再比如,適時向受害者發一條“永輝超市明日舉行8周年慶活動,所有商品一律7折”的短信息,很可能改變對方的日程安排,讓其仍然留在家中。
友誼越珍貴越容易讓人信任,上下級關系越嚴格越容易讓人順從。基于這種社會心理,冒充和欺騙常常容易得逞。舉個例子,假如攻擊者在電話中用堅定、不耐煩、不可否認的語氣說:“我是市局刑警支隊的張副隊長,你們派出所的材料怎么還沒過來?”“不行,機要太慢了我等不及,你再發一份過來,順豐寄到市局門口,明天我讓小劉去取。”受害者基于基層下屬的定位,很可能會越過流程,走非保密途徑,從而被截獲。
社會心理學研究表明我們會傾向于被與我們相似的人吸引,所以相似而相吸是語言溝通拉攏時很重要的一條原則。攻擊者聽出對方的傾向然后表明“我的想法和你一樣”、“我和你是一類人”、“我欣賞你”……溝通越順利或對方越開心,越容易放下戒備,越容易說出你想要的信息。需要知道的是,非可視的語音溝通只能從音色音調、術語行話上有限地感性識別對方,并不能嚴格進行身份認證,所以電話攻擊很容易得手。
(4)計算機技術輔助攻擊。計算機技術在社工攻擊過程中扮演的角色是不可或缺的。Google語法搜索、網絡爬蟲設計、釣魚掛馬技術、偽基站技術、無線電技術、無線網絡攻擊、電磁攻擊、服務器攻擊提權、ARP欺騙、網絡分析……這些技術在信息刺探和攻擊中都有可能用到,這也是攻擊者常常是黑客群體的原因。
2攻擊特性
2.1破壞性
社會工程學攻擊在非法利用時是有破壞性的,輕者泄露個人信息,重者會讓多年開發研究成果因保密問題毀于一旦。現在大型公司和團體都在嘗試從人的安全培訓和制度流程建設的角度出發進行防范。
2.2攻擊性與隱蔽性
通常認為的計算機網絡系統攻擊會導致服務器癱瘓、網絡堵塞、服務不能正常提供、基礎設施破壞等等,而日常生活中的細小瑣事都不會被視為一次攻擊,比如冒充快遞員向你詢問家庭住址,或偽裝成淘寶賣家聲稱返還紅包而向你索要支付寶賬號。但這種非法的私人信息刺探,既有預謀,又有不可告人的目的,視為攻擊毫不為過。
而隱蔽性指出受害者很難將生活工作細節與嚴重的系統破壞聯系起來。比如,你很難將一個街頭采訪與計算機網絡攻擊事件聯系起來。
2.3不可預見性
一般的計算機攻擊都有先兆,比如用戶訪問量突然增大、流量異常等等,這是可以通過技術手段預警的。而你很難預見陌生人跟你的一次再正常不過的聊天,對方可能是想了解你,打探你的內部消息,知道你的性格偏好、家庭背景,但也很可能只是一次單純的、偶然的、無目的的、打發時間的一次閑聊而已。幾乎所有人說話時都是帶有立場的,也幾乎沒有人能夠評估對方對你的立場有多大興趣。
2.4難以評估取證
社工手段運用時都會事先做好準備,比如隱藏真實的電話號碼、準備一套外賣員服裝、辦一張假身份證、偽裝成攤販等,利用人的慣性思維躲過小區保安的身份驗證,或近距離刺探時使目標放松警惕。事后調查取證時,即便發現了偽裝行為,也難以搜集更直接的證據證明有罪。
2.5低成本
社工手段的高明和可取之處就在于成本低廉,試想,耗費大量資源癱瘓一臺服務器,總比不上管理者主動說出來更加簡單可行。需要注意的是,目標防范越嚴密,攻擊的成本越高,這是任何黑客攻擊手段都要面對的問題,社會工程學手段也是一樣。
3可操作性
3.1信息渠道多樣化
伴隨著互聯網的發展,越來越多的信息出現在網絡上而被所有人知悉。此外,報刊雜志、廣告媒介、微博微信自媒體、出版物等渠道,也使信息收集更加容易便捷。
由于公共信息渠道對個人隱私的不注重,很多個人信息常常暴露在大眾視野下(見圖1)。
3.2心理特點
心理學是社工學師最看重的一門學問,有積極的一面,如忠誠、感恩、勇敢、博愛;也有消極的一面,如叛逆、自私、貪心、怯懦。但無論積極還是消極,都有被利用的價值。勇敢的人更容易接受新鮮事物,貪心的人嘗到甜頭通常不會立即停止,博愛的人常常愛管閑事,怯懦的人一般沒有主見,順從的人缺乏創新精神,善良的人幾乎不會做出極端的選擇……攻擊者從收集到的信息和實際對話中,對目標的心理和性格做出準確的判斷,通過心理誘導和暗示,促使受害者做出危險操作,進而達到攻擊意圖。
3.3實踐性
為深入了解受害者平時的工作內容,攻擊者有時必須真正到其工作的環境中去從業一段時間,好在當今社會人員流動比較頻繁,低薪應聘、無薪實習對專業功底扎實、機敏善學的黑客來說不是什么難事,這就讓攻擊者有充足的機會去了解目標的工作規范、行業規則和社會關系,攻擊行動就更具備可行性。
3.4攻擊者的專業性
就黑客這個群體而言,其信息整合能力高超,工具應用熟練精通,理論功底深厚扎實,語言多樣思維敏捷,這都為攻擊行動提供了專業優勢;而其體力毅力、行業經歷、行為習慣也都可以通過訓練獲得。攻擊者越專業、受害者越不加防備,攻擊越容易得逞,防范也越困難。
3.5人的社會群體性與語言
人是群居生物,人與人之間的分工和交流使人類社會誕生出很多東西,文化、宗教、學科、語言、崗位……因此個體的人身上必然帶有很多社會屬性:男人、本科、大學剛畢業、說漢語、體育老師、單身、單親家庭長大、共產黨員、永輝超市會員等等。每一項社會屬性都有其共性特征,比如,一個大學剛畢業的人,通常情況下能接受新鮮事物、經濟狀況一般、不禿頂、不關心母嬰產品信息、在很多社交網站上都有注冊信息、工作經驗和社會經驗缺乏、不會理財、炒股經驗不足等等。刺探到的社會屬性越多,個體情況就越詳盡具體。
社會工程學的攻擊特征要求必須了解語言的藝術。語言是人類溝通的工具,掌握多種語言對攻擊者來說有備無患,電影《反貪風暴2》中張智霖如果不會馬來語,恐怕立馬就被洗錢團伙識破了。
同時,語言研究運用的水平可以反映出社工學師的功力水平。舉例來說,一句話背后可能有很多目的,如果有人打電話問你“聽說單位正在分房子,你知道嗎?”這句話含義很多,他可能在問你是不是申請分房了,你分房排名怎么樣,單位是不是通知到你分房這件事了,你單位里其他人是不是也知道這件事;或者這件事是攻擊者虛構的,希望你親口否定,希望你告訴他單位從不分房子、也沒有蓋房子的計劃;或者希望知道你的反應,比如質疑他的身份,這樣他就知道你并不屬于哪家事業單位或大型企業,而是自由職業者;甚至,攻擊者只是想聽聽你的聲音、聽出你的性別、了解你的作息狀態、手機是否開機而已。
4結語
堅固的堡壘往往是從內部攻破的。社工攻擊的目標是人,希望從內部入手,繞過制度和規程,達到破壞系統的目的,這對物理隔離的網絡尤其重要,甚至成了唯一選擇。其防范方法,也需從員工和制度的角度入手,加強針對性的安全培訓,完善流程機制,強化規則大于領導的觀念,從上層管理者開始,營造遵守制度的氛圍。因為對堅固的系統來說,人是最后一道防線。
參考文獻
[1] Sarah Granger.Social Engineering Fundamentals, Part Ⅰ: Hacker tactics[DB/OL].https://www.symantec.com/connect/articles/social-engineering-fundamentals-part-i-hacker-tactics,2001.
[2] ZDNet China.報告:未來10年社會工程學為最大安全危險[DB/OL].http://www.cnetnews.com.cn/2004/1102/150266.shtml,2004.
[3] 楊浩,朱志祥.利用社會工程學進行密碼猜解[J].西安文理學院學報,2013.
[4] 清涼心.看看黑客如何來破解密碼[J].網絡與信息,2007(06).