版權(quán)歸原作者所有,如有侵權(quán),請聯(lián)系我們

[科普中國]-身份驗(yàn)證

科學(xué)百科
原創(chuàng)
科學(xué)百科為用戶提供權(quán)威科普內(nèi)容,打造知識(shí)科普陣地
收藏

定義

身份驗(yàn)證又稱“驗(yàn)證”、“鑒權(quán)”,是指通過一定的手段,完成對用戶身份的確認(rèn)。

身份驗(yàn)證的目的是確認(rèn)當(dāng)前所聲稱為某種身份的用戶,確實(shí)是所聲稱的用戶。在日常生活中,身份驗(yàn)證并不罕見;比如,通過檢查對方的證件,我們一般可以確信對方的身份。雖然日常生活中的這種確認(rèn)對方身份的做法也屬于廣義的“身份驗(yàn)證”,但“身份驗(yàn)證”一詞更多地被用在計(jì)算機(jī)、通信等領(lǐng)域1。

方法身份驗(yàn)證的方法有很多,基本上可分為:基于共享密鑰的身份驗(yàn)證、基于生物學(xué)特征的身份驗(yàn)證和基于公開密鑰加密算法的身份驗(yàn)證。不同的身份驗(yàn)證方法,安全性也各有高低。

基于共享密鑰基于共享密鑰的身份驗(yàn)證是指服務(wù)器端和用戶共同擁有一個(gè)或一組密碼。當(dāng)用戶需要進(jìn)行身份驗(yàn)證時(shí),用戶通過輸入或通過保管有密碼的設(shè)備提交由用戶和服務(wù)器共同擁有的密碼。服務(wù)器在收到用戶提交的密碼后,檢查用戶所提交的密碼是否與服務(wù)器端保存的密碼一致,如果一致,就判斷用戶為合法用戶。如果用戶提交的密碼與服務(wù)器端所保存的密碼不一致時(shí),則判定身份驗(yàn)證失敗。

使用基于共享密鑰的身份驗(yàn)證的服務(wù)有很多,如:絕大多數(shù)的網(wǎng)絡(luò)接入服務(wù)、絕大多數(shù)的BBS以及維基百科等等。

基于生物學(xué)特征基于生物學(xué)特征的身份驗(yàn)證是指基于每個(gè)人身體上獨(dú)一無二的特征,如指紋、虹膜等。

例如Synaptics Natural ID指紋傳感器解決方案,對指紋模板數(shù)據(jù)進(jìn)行AES256位加密,對于在智能手機(jī)上快速部署生物識(shí)別身份驗(yàn)證技術(shù),這種加密方法起到了關(guān)鍵作用。2

基于公開密鑰加密算法基于公開密鑰加密算法的身份驗(yàn)證是指通信中的雙方分別持有公開密鑰和私有密鑰,由其中的一方采用私有密鑰對特定數(shù)據(jù)進(jìn)行加密,而對方采用公開密鑰對數(shù)據(jù)進(jìn)行解密,如果解密成功,就認(rèn)為用戶是合法用戶,否則就認(rèn)為是身份驗(yàn)證失敗。

使用基于公開密鑰加密算法的身份驗(yàn)證的服務(wù)有:SSL、數(shù)字簽名等等。

身份驗(yàn)證PAP 口令驗(yàn)證協(xié)議 是一種簡單的明文驗(yàn)證方式。NAS(網(wǎng)絡(luò)接入服務(wù)器,Network Access Server)要求用戶提供用戶名和口令,PAP以明文方式返回用戶信息。很明顯,這種驗(yàn)證方式的安全性較差,第三方可以很容易的獲取被傳送的用戶名和口令,并利用這些信息與NAS建立連接獲取NAS提供的所有資源。所以,一旦用戶密碼被第三方竊取,PAP無法提供避免受到第三方攻擊的保障措施。CHAP CHAP通過使用MD5(一種工業(yè)標(biāo)準(zhǔn)的散列方案)來協(xié)商一種加密身份驗(yàn)證的安全形式。CHAP 在響應(yīng)時(shí)使用質(zhì)詢-響應(yīng)機(jī)制和單向 MD5 散列。用這種方法,可以向服務(wù)器證明客戶機(jī)知道密碼,但不必實(shí)際地將密碼發(fā)送到網(wǎng)絡(luò)上。MS-CHAP 同CHAP相似,微軟開發(fā)MS-CHAP 是為了對遠(yuǎn)程 Windows 工作站進(jìn)行身份驗(yàn)證,它在響應(yīng)時(shí)使用質(zhì)詢-響應(yīng)機(jī)制和單向加密。而且 MS-CHAP 不要求使用原文或可逆加密密碼。MS-CHAP v2 MS-CHAP v2是微軟開發(fā)的第二版的質(zhì)詢握手身份驗(yàn)證協(xié)議,它提供了相互身份驗(yàn)證和更強(qiáng)大的初始數(shù)據(jù)密鑰,而且發(fā)送和接收分別使用不同的密鑰。如果將VPN連接配置為用 MS-CHAP v2 作為唯一的身份驗(yàn)證方法,那么客戶端和服務(wù)器端都要證明其身份,如果所連接的服務(wù)器不提供對自己身份的驗(yàn)證,則連接將被斷開。VPN服務(wù)端和VPN客戶端之間一定要采用相同的身份驗(yàn)證,比如VPN服務(wù)端選擇了MS-CHAP2,那么相應(yīng)的VPN客戶端也要選擇MS-CHAP2,否則無法連接。PAP口令驗(yàn)證協(xié)議。由于是明文的。極為不安全,一般不采取這個(gè)方式!3

身份驗(yàn)證掃描方式事先知道身份驗(yàn)證進(jìn)行掃描的系統(tǒng)這可能包括所有Windows和基于Linux的系統(tǒng),或者少數(shù)計(jì)算機(jī)部分(例如服務(wù)器或工作組)。此外,請務(wù)必考慮掃描Web應(yīng)用、數(shù)據(jù)庫以及允許或要求通過Telnet、FTP、SSH和SNMP等協(xié)議的身份驗(yàn)證的所有網(wǎng)絡(luò)主機(jī)。很多商業(yè)漏洞掃描儀(例如Nexpose和LanGuard)提供了各種方法來進(jìn)行掃描。如果你網(wǎng)絡(luò)外部的黑客或者內(nèi)部的惡意用戶都開始使用身份驗(yàn)證掃描,那么你也需要這樣做。

確定想要掃描何種用戶角色水平筆者建議至少使用管理員或根級(jí)登錄憑證進(jìn)行掃描;這樣你將會(huì)發(fā)現(xiàn)大部分漏洞。然而,通過不同用戶角色進(jìn)行掃描(例如經(jīng)理級(jí)別角色或基本用戶角色),你可以更好地了解每個(gè)用戶組可以看到和利用的資源。在一定程度上,你測試的用戶角色越多,你得到的結(jié)果會(huì)越好(不過在某種情況下將會(huì)出現(xiàn)收效遞減的規(guī)律)。當(dāng)你看到你的結(jié)果不再根據(jù)權(quán)限而變化時(shí),你會(huì)知道什么時(shí)候該適可而止。

為身份驗(yàn)證掃描設(shè)置用戶賬號(hào)這樣在首次登錄時(shí)不會(huì)要求更改密碼(這是Active Directory組策略和一些web應(yīng)用的通用設(shè)置)。如果你忘記了這一點(diǎn),你的掃描儀首次登錄時(shí)將會(huì)提示你更改密碼,當(dāng)然這無法做到。你可能不知道這個(gè)情況,然后繼續(xù)進(jìn)行掃描。幾分鐘后(可能更長時(shí)間),你會(huì)意識(shí)到身份驗(yàn)證無法使用,你將需要重新開始進(jìn)行掃描。通過web漏洞掃描儀,你可能需要?jiǎng)?chuàng)建一個(gè)登錄宏以允許你測試。出于某種原因,大多數(shù)網(wǎng)絡(luò)漏洞掃描儀不會(huì)提供選項(xiàng)以在你開始掃描前測試你的登錄憑證。筆者所知道的唯一具有這種功能的兩個(gè)掃描儀是老的Harris STAT掃描儀和Rapid7的Nexpose。這一點(diǎn)似乎是老生常談,但從長期來看,這個(gè)功能可以為你節(jié)省大量時(shí)間和避免很多麻煩。

先確保對網(wǎng)絡(luò)主機(jī)的身份驗(yàn)證漏洞掃描這就是說,這可能會(huì)在生產(chǎn)環(huán)境產(chǎn)生問題,特別是當(dāng)掃描web應(yīng)用時(shí)。無論你在掃描什么,都會(huì)消耗CPU、磁盤和網(wǎng)絡(luò)周期,日志文件和數(shù)據(jù)庫可能會(huì)被填滿,用戶賬號(hào)可能被鎖定等。筆者建議首先在一個(gè)或兩個(gè)系統(tǒng)上運(yùn)行身份驗(yàn)證掃描,看看會(huì)帶來什么副作用,再擴(kuò)展到掃描成千上萬個(gè)系統(tǒng)。

按照漏洞的排序方式來生成電子表格報(bào)告在身份驗(yàn)證掃描期間發(fā)現(xiàn)的安全漏洞可能非常多,特別是當(dāng)查看傳統(tǒng)PDF報(bào)告中的結(jié)果時(shí)。筆者發(fā)現(xiàn),按照漏洞的排序方式來生成HTML或電子表格報(bào)告是查看發(fā)現(xiàn)結(jié)果的最佳方法。當(dāng)你整理漏洞結(jié)果時(shí),你可以通過能夠更簡單更清楚地看清事物(例如每個(gè)漏洞所影響的主機(jī)或網(wǎng)頁)而節(jié)省大量時(shí)間,并且可以更簡單地生成最終報(bào)告或修復(fù)計(jì)劃,而不是一次查看一臺(tái)主機(jī)。

使用漏洞掃描儀來正確地執(zhí)行漏洞掃描類似于使用數(shù)碼單反相機(jī)拍攝照片。任何人都可以使用這個(gè)工具,但這并不意味著你知道如何有效地利用它,而且也不能保證取得積極的效果。4