陳偉力
(邯鋼培訓中心,河北 邯鄲 056000)
隨著個人計算機和互聯網的發展,個人隱私等各種各樣的個人信息越來越多的存在計算機與網絡之上,而窺探他人秘密的人也應運而生,他們的目的各種各樣,出于商業的競爭、好奇心的作用、自我成就感的滿足、報復心理的作用等等。網絡上各種入侵的方法、技術層出不窮,人們對個人隱私的保護最常用的方法就是設定密碼。而針對密碼破解的方法也越來越多,目前網絡上流行的工具可以讓一個初級的黑客也能破解一些密碼。而對于更高級的密碼破解,則不僅是依靠單一的軟件進行,而是要用到社會工程學這一技術。本文將從利用社會工程學這一技術破解密碼去分析,如何設定安全的密碼來保護個人的信息。
目前,密碼破解最基本的方法就是窮舉法,其基本思路如下:利用計算機處理信息快的特點,將所有可能用到的密碼組合進行逐一的驗校,直到成功為止。理論上說,只要時間足夠沒有任何一個密碼是安全的。但窮舉法的問題在于它要逐個對有可能的組合進行驗證,通常入侵者不可能將所有的密碼組合驗證一遍,比如aa19G8*&^這樣的密碼如果按照窮舉破譯的話以現有計算機的速度至少要5年以上,這顯然是入侵者不愿意看到的。
而更有經驗的入侵者會運用社會工程學原理輔助進行密碼的破譯。首先看一下社會工程學(Social Engineering)的定義:社會工程學是關于建立理論通過自然的、社會的和制度上的途徑并特別強調根據現實的雙向計劃和設計經驗來一步一步地解決各種社會問題。總體上說,社會工程學就是使人們順從你的意愿、滿足你的欲望的一門藝術與學問。它并不單純是一種控制意志的途徑,它不能幫助你掌握人們在非正常意識以外的行為,且學習與運用這門學問一點也不容易。
社會工程學同樣也蘊涵了各種各樣的靈活的構思與變化著的因素,無論何時,在需要套取到所需要的信息之前,社會工程學的實施者都必須掌握大量的相關知識基礎、花時間去從事資料的收集與進行必要的如交談性質的溝通行為。與以往的入侵行為相類似,社會工程學在實施以前都是要完成很多相關的準備工作,這些工作甚至要比其本身更為繁重。總之,社會工程學就是一種通過對受害者心理弱點、本能反應、好奇心、信任、貪婪等心理陷阱進行諸如欺騙、傷害等危害手段,取得自身利益的手法。
利用社會工程學入侵者可以有針對性的對入侵對象編輯密碼字典即只將有可能的密碼組合作為驗證的范圍,這樣有的放矢的進行破譯,不僅大大縮短了破譯時間,也提高了入侵的準確性。當然,在入侵中,入侵者還會根據已經掌握的資料對入侵對象進行進一步的分析,主動分析入侵對象的密碼設定方式,分析對方心理,從而更快的破解出密碼,這便可以看作是社會工程學的簡單應用。
通常分析會從以下幾個方面入手:
對中國人來說,一般都沒有英文名的習慣,所以很多人用中文拼音做密碼,一般人去論壇等地注冊一個用戶名,由于簡稱很容易被別人先用,所以一般用全稱。這里說的是名,如果是密碼,一般要倒過來考慮,先從簡稱再全稱,理由很簡單:短,輸入時間快。
數字也是用地很多的,且根據一般人的心理用得最多的密碼是:123、123456,特別是新手。一般人密碼是三位或者是六位。下面一些也是常用的:1、11、111、123、168、1314、520(特殊意義的數字)。
由于人們怕忘記,而自己的生日或家里的電話是不會忘記的,所以就用生日、電話號碼作為密碼。上述的六位,所以剛剛好。在用戶看來省事,比如一個人的生日是1979年1月2日,一般的習慣是:六位就是790102,四位是7912。
如果月和日是只有一位的,也就是1~9,一般人就用四位的,如:7632,而不是760302,如果日期是雙位的,10~31,一般人也就用到六位而不會是五位,如:760321而不是76321。如果月是雙位,一般日就是雙位的,如:761203,而不是76123。總體來說,也就是月和日都是同樣位數的。因為這樣比較美觀。也有人不用日,只用月,如:763,而對中國人來說7603用得少,因為0看起來是多余的。其實只要細心便不難發現,大多數人在設定密碼時都或多或少的會有這方面的習慣。
用簡單的單詞作為自己的密碼也是人們常有的一種密碼設定時的行為。有兩種情況:①生活中的一些單詞,如:boy、apple、angle等。②與計算機相關的單詞如:system、cpu、photoshop等。
對入侵者來說,一般破解應按以下順序來:數字→字母→特殊符號。在用戶名上,對方用戶名一般不用大寫,用小寫的較多。而密碼就要考慮大小寫。理論上也應該按照先小寫再大寫。因為用戶輸入大寫字一般不按shift鍵而是按CapsLock鍵,所以理論上來說要大寫所有字母都大寫。
通常一個入侵者在收集信息時,會從側面入手、細微入手,分析用戶的信息。從一些容易獲得的信息去進行深層次的分析。比如,在現在社會電子郵箱是大家聯系使用較頻繁的工具之一。我們看一下從電子郵箱入手的話可以知道一些什么呢?例如:通過一個最常見的郵箱地址caiyihao@163.com可以知道一些什么呢?可以看出來是對方是用拼音的用戶名,所以對方應該姓蔡。cyh790101@163.com還可以知道一些什么呢?對方生日:790101。當然還可以由一個人昵稱推知名或者姓,例如QQ昵稱“浩”,很明顯這個人的名有“浩”字,獲得信息還有很多途徑,用得多是搜索引擎,建議最少用兩個,可以用他的名搜,也可以用他的郵箱搜,還可以用他的文章搜等等。平時應該多一些常識,例如對方QQ上寫了“廣東dg”,結合地理就應該知道是“廣東東莞”。至于由對方聊天內容看出對方性別、大概年齡、是否在讀書、是否獨生子女、在家里兄弟姐妹中排老大還是最小,這些就不是本文所要涉及的。
在入侵過程中,入侵者一般會有足夠的耐心去分析入侵對象的各種信息,又由于一般上網的人們通常的一個心態是,我一個普通人沒有什么可保密的東西,就算郵箱被破解了,或QQ被盜了,再申請就行了,也就是這樣的心理作怪,才使入侵者有機可乘,你的一個不在乎的心理可能會為以后埋下隱患。
社會工程學看似簡單的欺騙而已,卻又包含了復雜的心理學因素,其可怕程度要比直接的技術入侵大得多,對于技術入侵我們可以防范,但是心理漏洞誰又能時刻警惕呢?毫無疑問,社會工程學將會是未來入侵與反入侵的重要對抗領域。總之,知己知彼百戰不殆,了解入侵者的方式,針對此更好的保護個人信息的安全,讓網絡更好的為我們服務,才能為我們營造一個良好的網絡環境。