999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于口令的攻擊分析與防御設(shè)計(jì)

2018-10-17 01:47:52◆徐

◆徐 軍

?

基于口令的攻擊分析與防御設(shè)計(jì)

◆徐 軍

(山東理工大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 山東 255049)

使用口令的目的是為了對(duì)用戶進(jìn)行認(rèn)證,防止各種攻擊及非法登錄行為。為了抵抗暴力攻擊、字典攻擊、彩虹表攻擊、中間假冒攻擊等手段,對(duì)口令認(rèn)證的原理以及使用的關(guān)鍵技術(shù)進(jìn)行了綜述分析,在此基礎(chǔ)之上,利用哈希技術(shù)、加鹽技術(shù)和慢哈希技術(shù)設(shè)計(jì)了一個(gè)簡(jiǎn)單有效、易于編程實(shí)現(xiàn)的口令認(rèn)證方案,方案計(jì)算量可調(diào)控,安全強(qiáng)度較高,能抵抗一般常見形式的網(wǎng)絡(luò)攻擊。

口令認(rèn)證;哈希;加鹽;慢哈希;攻擊

0 引言

口令認(rèn)證是最常用的方法,我們無論登錄什么系統(tǒng)都要用到賬戶與密碼,現(xiàn)實(shí)中web系統(tǒng)面臨許多的威脅,而對(duì)口令的攻擊是手段和目的最直接的攻擊,取得口令即可實(shí)現(xiàn)入侵。同時(shí),服務(wù)器端的口令數(shù)據(jù)庫也是網(wǎng)絡(luò)入侵的高價(jià)值目標(biāo)。在編程實(shí)踐與相關(guān)教學(xué)中,看似簡(jiǎn)單的口令技術(shù),我們發(fā)現(xiàn)大量偏差的理解與錯(cuò)誤的用法,本研究試圖對(duì)口令攻擊、防御技術(shù)給出系統(tǒng)化的、全面的分析,并提出口令加固的方法、方案,以提高口令認(rèn)證的應(yīng)用水平。

1 口令認(rèn)證形式與存儲(chǔ)

一般,口令認(rèn)證基于客戶機(jī)/服務(wù)器(C/S)模式。客戶端提交賬戶、口令,經(jīng)網(wǎng)絡(luò)傳輸至服務(wù)器端進(jìn)行認(rèn)證。主要的威脅關(guān)鍵點(diǎn)有兩個(gè),一在網(wǎng)絡(luò)傳輸過程,要防止竊聽;二是服務(wù)器端口令的存儲(chǔ),不能泄露口令的明文,甚至要在網(wǎng)站被入侵,口令被“拖庫”的情況下,也要保證口令不能被破解。

務(wù)器端的口令數(shù)據(jù)庫不能存儲(chǔ)明文的口令,口令在服務(wù)器端的存儲(chǔ)形式?jīng)Q定了采用什么樣的安全技術(shù)與認(rèn)證方案。將口令變換的技術(shù)稱為哈希技術(shù)。表1為服務(wù)器端常見的簡(jiǎn)單存儲(chǔ)結(jié)構(gòu),只包含兩個(gè)字段:username 、passwordhashvalue,passwordhashvalue采用公開常規(guī)MD5工具計(jì)算得出,其對(duì)應(yīng)的明文口令值為(“20180602”, “Dia-loutes”, “My love”)。

表1 服務(wù)器端口令存儲(chǔ)結(jié)構(gòu)

2 口令認(rèn)證方案的關(guān)鍵技術(shù)

基于口令認(rèn)證的關(guān)鍵技術(shù)主要包括哈希函數(shù)、口令加鹽技術(shù)公鑰密碼技術(shù)等,實(shí)際的認(rèn)證方案是幾種技術(shù)的綜合運(yùn)用。

2.1 哈希函數(shù)技術(shù)

哈希函數(shù)是一種人為設(shè)計(jì)性質(zhì)特殊的函數(shù),一般用來實(shí)現(xiàn)保密、認(rèn)證和消息完整性保護(hù),也是安全認(rèn)證協(xié)議、數(shù)字簽名算法的重要組成部分。

Hash函數(shù)H具備以下幾個(gè)基本特性:

(1)輸入x可以為任意長(zhǎng)度;輸出數(shù)據(jù)串長(zhǎng)度固定,128bit或256bit;

(2)單向性,正向計(jì)算實(shí)現(xiàn)容易,即給定任何x,容易算出H(x);而反向計(jì)算實(shí)現(xiàn)困難,即給出一Hash值h,很難找出一特定輸入x,使h=H(x);

(3)抗沖突碰撞性,即對(duì)于任意兩條消息x、y,使得H(x)=H(y)在計(jì)算上是不可行的;

函數(shù)單向性決定了即使取得口令的哈希值也不可能從中恢復(fù)出口令, 因此能應(yīng)對(duì)網(wǎng)絡(luò)竊聽,網(wǎng)站內(nèi)部人員也看不能明文口令,能防止一般的字典攻擊和暴力破解(Dictionary and Brute Force Attacks)。

ash函數(shù)安全性是不夠的,破解Hash的原理是,對(duì)于給出的一個(gè)y,反算出一個(gè)x來滿足y = H(x),因其直接計(jì)算是不可能的,目前一般采用查表法,即設(shè)計(jì)一個(gè)大型字典表,記錄下盡可能多的x與y的對(duì)應(yīng)關(guān)系,直接查表匹配。

瑞典的Philippe Oechslin在2003年提出了一種高效破解windows開機(jī)密碼的時(shí)空折中算法[1],這就是“彩虹表Rainbow”技術(shù),主要針對(duì)破解Windows Xp開機(jī)認(rèn)證的LM-HASH算法。根據(jù)這個(gè)原理,同樣可以用于破解SHA、MD5等算法。

該算法的原理是預(yù)先計(jì)算得到一個(gè)較大的表,對(duì)于一個(gè)給定的hash值,在表內(nèi)進(jìn)行查找,破譯速度快,效率高。彩虹表的核心是精心設(shè)計(jì)的R函數(shù),該函數(shù)的定義域是hash函數(shù)的值域,值域是合理的輸入域,R函數(shù)使用哈希鏈方法計(jì)算各哈希值的與之對(duì)應(yīng)值,并進(jìn)行儲(chǔ)存,查表時(shí)根據(jù)哈希值從頭節(jié)點(diǎn)開始做H、R交替運(yùn)算,直到某個(gè)hash值和給定hash值相等,或者找到尾節(jié)點(diǎn),就會(huì)得到一個(gè)與用戶輸入等價(jià)的密碼。[2]提供了針對(duì)LM、NTLM、MD5、SHA1等常用算法的彩虹表下載。

2.2 口令加鹽技術(shù)

防御彩虹表攻擊,最好用的方法就是加鹽(salt)。“鹽”的實(shí)質(zhì)就是一個(gè)具有一定長(zhǎng)度的隨機(jī)數(shù)串,加鹽的結(jié)果使密碼更長(zhǎng),強(qiáng)度更高,使彩虹表逆推的難度也更大,使用攻擊手段進(jìn)行撞庫時(shí)運(yùn)算量更大,破解的難度更高。

基本加鹽過程:

圖1 口令加鹽過程

加鹽算法后,服務(wù)器端的存儲(chǔ)結(jié)構(gòu)變?yōu)楸?的形式:

表2 加鹽哈希表

這里,服務(wù)器端存儲(chǔ)的其實(shí)是H(password)+salt value。在登錄界面,客戶端程序要與服務(wù)器端協(xié)商一個(gè)鹽值數(shù)據(jù),同時(shí)與密碼的哈希值結(jié)合,傳輸給服務(wù)器端驗(yàn)證,網(wǎng)絡(luò)信道傳輸?shù)氖莾?nèi)容是H(password+salt)或者H(H(password)+salt),這樣,攻擊者即使通過彩虹表找到了特定hash值對(duì)應(yīng)的密碼,也無法得到用戶輸入的密碼,甚至根本得不到密碼。如果攻擊者獲得鹽值以及其位置,破解時(shí)也需要對(duì)R函數(shù)重新設(shè)計(jì)修改,因此已有的彩虹表數(shù)據(jù)就會(huì)完全失去作用。

存儲(chǔ)鹽值明文會(huì)降低安全性,實(shí)際編程時(shí),一般要采取不同的加鹽方案。文獻(xiàn)[3]中采用了偽隨機(jī)數(shù)生成器的加鹽哈希算法,大大增強(qiáng)了口令認(rèn)證安全性。

如果知道加鹽的方式或鹽值泄露,攻擊者通過重新構(gòu)造彩虹表或者暴力遍歷就能夠?qū)崿F(xiàn)破解,所以加鹽技術(shù)方案需要遵循幾個(gè)基本原則:

(1)靜態(tài)不變的salt、明文存儲(chǔ)的salt不能使用。

(2)salt 要具有一定的安全長(zhǎng)度。

(3)salt最好是隨機(jī)的,由服務(wù)端的隨機(jī)函數(shù)生成。

(4)服務(wù)器不能存儲(chǔ)用戶口令加鹽的hash結(jié)果。

(5)salt庫和口令密碼庫盡量分離開存放。

2.3 慢哈希技術(shù)

加入干擾項(xiàng)后使攻擊者無法采用特定的查詢表和彩虹表快速破解大量哈希值,但是卻不能防止最原始的字典攻擊或暴力攻擊。攻擊者可在web前端大量嘗試各種密碼可能,在高速強(qiáng)大的計(jì)算能力面前,哈希函數(shù)顯得很脆弱,為了應(yīng)對(duì)這種對(duì)密碼的字典攻擊或暴力攻擊,可以采取慢哈希技術(shù)。慢哈希技術(shù)的思想就是通過重新設(shè)計(jì)哈希函數(shù),把哈希函數(shù)變得很慢,讓字典攻擊和暴力攻擊者耗費(fèi)大量的機(jī)器時(shí)間,將破解的代價(jià)變得不可接受;同時(shí)這種緩慢對(duì)單個(gè)用戶登錄又不會(huì)造成大的影響。

圖2 慢哈希技術(shù)

顯然,慢哈希算法也有著明顯的缺點(diǎn),它在消耗對(duì)手計(jì)算資源的同時(shí),也消耗自己的大量計(jì)算資源。如果遇到惡意用戶,發(fā)起大量的登錄請(qǐng)求,服務(wù)器端會(huì)造成資源被耗盡,不能提供正常服務(wù)。所以,上圖中的方案中,將慢哈希的計(jì)算放在了web前端。

慢哈希函數(shù)的設(shè)計(jì)有很多方法,最簡(jiǎn)單的方法就是對(duì)原哈希函數(shù)做循環(huán)計(jì)算,但我們一般提倡使用標(biāo)準(zhǔn)的慢哈希函數(shù),主要有PBKDF2或者Bcrypt。

3 口令加固方案設(shè)計(jì)

基于上述詳細(xì)分析,我們可以得出結(jié)論,如果在網(wǎng)絡(luò)應(yīng)用編程中使用口令認(rèn)證方式,至少應(yīng)滿足如下條件:

(1)口令不可以明文在網(wǎng)絡(luò)上傳輸,應(yīng)該使用哈希函數(shù)。

(2)即使被拖庫,也無法還原用戶密碼。

(3)應(yīng)該有能力應(yīng)對(duì)暴力破解、字典攻擊。

(4)應(yīng)該有能力應(yīng)對(duì)查表攻擊與彩虹表攻擊。

(5)應(yīng)該不占用過大的計(jì)算資源。

(6)應(yīng)該易于編程實(shí)現(xiàn)。

3.1 方案設(shè)計(jì)

因此,認(rèn)證方案中應(yīng)該包括的技術(shù)有哈希技術(shù)、加鹽技術(shù),若欲達(dá)到一定的安全強(qiáng)度,則須考慮在web前端采用慢哈希技術(shù),慢哈希的計(jì)算速度應(yīng)該由服務(wù)器端來確定。

假定:注冊(cè)階段已完成,此時(shí),客戶端已擁有賬號(hào)與密碼;服務(wù)器端已建立起用戶密碼庫,存儲(chǔ)模式為(userid, password_hash),鹽值單獨(dú)存放,防止拖庫,存儲(chǔ)模式為(userid,salt_hash,cost),其中cost字段為慢哈希代價(jià),用來指定客戶端的慢哈希速度,cost值越大,web端運(yùn)行越慢。

則登錄階段的協(xié)議描述為:

(1)客戶端以u(píng)serid發(fā)起登錄請(qǐng)求。

(2)服務(wù)器端響應(yīng),生成一隨機(jī)鹽值salt=random(),h(salt)存儲(chǔ),選定cost值,將cost、salt發(fā)送。

(3)客戶端計(jì)算r= PBKDF2( PRE, Password, Salt, cost, LEN),發(fā)送。PRE為隨機(jī)函數(shù),LEN為輸出長(zhǎng)度。

(4)服務(wù)端收到r,與自己計(jì)算的PBKDF2 (password, salt, cost)比較,若相等,則存儲(chǔ)于password_hash字段,通過認(rèn)證。若不相等則丟棄。

3.2 方案分析

此方案設(shè)計(jì)相當(dāng)簡(jiǎn)潔,只用到2 次交互,計(jì)算量取決于慢哈希速度,但計(jì)算量可控,能夠滿足上面提到的6個(gè)條件。

在方案中采用了加鹽的hash技術(shù),并且,鹽值由服務(wù)端隨機(jī)生成,且每次登錄都不會(huì)相同,所以能夠抵抗查表法、彩虹表法的攻擊。

由于使用了PBKDF2慢哈希函數(shù),因此對(duì)暴力破解、字典攻擊有較好的效果。

顯然,慢哈希會(huì)增大服務(wù)器的計(jì)算量,在這里我們采取了一種折中方案,也就是說,雙方的運(yùn)算量由服務(wù)器決定,服務(wù)器可根據(jù)自己的網(wǎng)絡(luò)負(fù)載情況,選擇cost值,并且將此值發(fā)送web客戶端。cost值越大,運(yùn)算量越大,速度越慢。

幾種特殊情況:

(1)假定攻擊者網(wǎng)絡(luò)監(jiān)聽,竊取了userid,然后實(shí)行假冒攻擊,但他無法對(duì)服務(wù)器發(fā)送來的cost、salt計(jì)算出r,即使他知道函數(shù)PBKDF2,也無法知道password。

(2)因監(jiān)聽導(dǎo)致單個(gè)鹽值泄露,因?yàn)辂}值是隨機(jī)、一次性的,攻擊者構(gòu)造彩虹表是困難的。

(3)最壞的情況,服務(wù)器被拖庫,但攻擊者拿到的不是密碼明文、鹽值明文,而是哈希變換過的值,且密碼是經(jīng)過加鹽存儲(chǔ)的,破解難度很大。

4 總結(jié)

口令認(rèn)證是目前普遍使用的方式,但口令方式并不是一種簡(jiǎn)單的方式,方案越簡(jiǎn)單,意味著越不安全;口令認(rèn)證也不是一種廉價(jià)的方式,如果綜合考慮登錄、密碼更新協(xié)議,口令認(rèn)證其實(shí)較復(fù)雜。因此設(shè)計(jì)方案時(shí),須權(quán)衡安全級(jí)別與資源占用代價(jià),盡可能堵住已知漏洞,正確選擇方案中的參數(shù),比如鹽值不能太短,哈希函數(shù)的位數(shù)等;靈活使用目前的密碼設(shè)計(jì)的關(guān)鍵技術(shù),哈希技術(shù)、加鹽技術(shù)、慢哈希技術(shù)等,包括S/KEY一次一密等。本方案的安全性、資源占用均衡,易于編程實(shí)現(xiàn),能夠滿足一般的網(wǎng)絡(luò)應(yīng)用系統(tǒng)的要求。

[1]Oechslin P.Making a Faster Cryptanalytic Time-Memory Trade-Off. In: Boneh D. Advances in Cryptology - CRYPTO 2003. CRYPTO 2003. Lecture Notes in Computer Science, vol 2729. Springer, Berlin, Heidelberg.

[2]http://www.freerainbowtables.com/en/tables/.

[3]祁鑫,魏美榮,蔣文保.口令加密算法安全性分析與對(duì)比[J].網(wǎng)絡(luò)空間安全,2016.

[4]韓霖,張燁青,金健宇,方丹丹.高校信息平臺(tái)用戶口令安全策略研究[J].信息安全研究,2016.

[5] https://crackstation.net/.

[6]鄧飛,朱瑩.基于口令的客戶端/服務(wù)器認(rèn)證協(xié)議[J].計(jì)算機(jī)工程與應(yīng)用,2015.

[7]汪定等.一個(gè)強(qiáng)口令認(rèn)證方案的攻擊與改進(jìn)[J].計(jì)算機(jī)科學(xué),2012.

[8]王平,汪定,黃欣沂.口令安全研究進(jìn)展[J].計(jì)算機(jī)研究與發(fā)展,2016.

[9]于江,蘇錦海,張永福.基于Hash函數(shù)的強(qiáng)口令認(rèn)證方案設(shè)計(jì)與分析[J].計(jì)算機(jī)應(yīng)用,2009.

山東省重點(diǎn)研發(fā)計(jì)劃項(xiàng)目(2016GGX101027)。

主站蜘蛛池模板: 美女毛片在线| 九色综合伊人久久富二代| 欧美日韩资源| 日本黄网在线观看| 亚洲国产精品无码AV| 97青青青国产在线播放| 亚洲三级色| 久久精品娱乐亚洲领先| 国产产在线精品亚洲aavv| 亚洲无码免费黄色网址| 少妇人妻无码首页| 国语少妇高潮| 人妻21p大胆| 91精品亚洲| 日韩国产 在线| 久久久久久国产精品mv| 国产毛片基地| 成人福利视频网| 国产成人欧美| 毛片免费观看视频| 伊人丁香五月天久久综合| 亚洲精品天堂在线观看| 亚洲第一精品福利| 四虎影院国产| 在线视频亚洲色图| 精品国产毛片| 伊人色天堂| 在线观看视频一区二区| 国产日本一线在线观看免费| 成人亚洲视频| 国产精品大白天新婚身材| 91年精品国产福利线观看久久| 国产一区二区在线视频观看| 国产欧美日韩资源在线观看| 日本人又色又爽的视频| 中文字幕在线视频免费| 欧美国产综合视频| 婷婷亚洲天堂| 2020国产免费久久精品99| 久久综合国产乱子免费| 亚洲成av人无码综合在线观看| 免费看美女自慰的网站| 亚洲美女久久| 国产精品黑色丝袜的老师| 日本www色视频| 亚洲日韩久久综合中文字幕| 蜜桃视频一区二区| 欧美国产成人在线| 欧美特级AAAAAA视频免费观看| 色噜噜在线观看| 久久女人网| 看国产毛片| 久久这里只有精品国产99| 国产91成人| 久草视频福利在线观看| 成人在线观看不卡| 91蜜芽尤物福利在线观看| 国产精品自在自线免费观看| 18禁影院亚洲专区| 国产理论精品| 亚洲欧美在线综合一区二区三区 | 女人18毛片久久| 蜜桃视频一区| 一本大道香蕉高清久久| 国产99视频免费精品是看6| 久久精品91麻豆| 2021国产精品自产拍在线| 国产成人亚洲精品色欲AV| 亚洲免费成人网| 日韩AV无码免费一二三区| 黄色免费在线网址| 亚洲va视频| AV老司机AV天堂| 操美女免费网站| 日韩精品一区二区三区中文无码| 久久99精品国产麻豆宅宅| 天天躁夜夜躁狠狠躁图片| 亚洲第一黄色网址| 亚洲精品无码成人片在线观看 | 国产网站免费| 日日拍夜夜嗷嗷叫国产| 九九线精品视频在线观看|