重放攻擊
入侵者從網(wǎng)絡(luò)上截取主機A發(fā)送給主機B的報文,并把由A加密的報文發(fā)送給B悍手,使主機B誤以為入侵者就是主機A帘睦,然后主機B向偽裝成A的入侵者發(fā)送應(yīng)當(dāng)發(fā)送給A的報文。
防御手段
防止重放攻擊的方法是使用不重數(shù)
1. 加隨機數(shù)
該方法優(yōu)點是認(rèn)證雙方不需要時間同步坦康,雙方記住使用過的隨機數(shù)竣付,如發(fā)現(xiàn)報文中有以前使用過的隨機數(shù),就認(rèn)為是重放攻擊滞欠。缺點是需要額外保存使用過的隨機數(shù)古胆,若記錄的時間段較長,則保存和查詢的開銷較大筛璧。
2. 加時間戳
該方法優(yōu)點是不用額外保存其他信息逸绎。缺點是認(rèn)證雙方需要準(zhǔn)確的時間同步惹恃,同步越好,受攻擊的可能性就越小棺牧。但當(dāng)系統(tǒng)很龐大巫糙,跨越的區(qū)域較廣時,要做到精確的時間同步并不是很容易陨帆。
3. 加流水號
就是雙方在報文中添加一個逐步遞增的整數(shù)曲秉,只要接收到一個不連續(xù)的流水號報文(太大或太小),就認(rèn)定有重放威脅疲牵。該方法優(yōu)點是不需要時間同步承二,保存的信息量比隨機數(shù)方式小。缺點是一旦攻擊者對報文解密成功纲爸,就可以獲得流水號亥鸠,從而每次將流水號遞增欺騙認(rèn)證端。
在實際中识啦,常將方法(1)和方法(2)組合使用负蚊,這樣就只需保存某個很短時間段內(nèi)的所有隨機數(shù),而且時間戳的同步也不需要太精確颓哮。
對付重放攻擊除了使用本以上方法外家妆,還可以使用挑戰(zhàn)一應(yīng)答機制和一次性口令機制,而且似乎后面兩種方法在實際中使用得更廣泛冕茅。