第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

關(guān)于加簽名防攻擊的疑問

關(guān)于加簽名防攻擊的疑問

慕碼人8056858 2019-01-19 06:40:46
在網(wǎng)上看到一個方案是:“客戶端將參數(shù)排序進(jìn)行MD5加密后,得到sign。 服務(wù)端再次將你的參數(shù)排序進(jìn)行MD5加密,比較兩次得到的值,相同校驗(yàn)成功。為了防止抓包,然后不停發(fā)送攻擊的包“ 這樣做 咋就能防止攻擊了呢? 攻擊者也可以進(jìn)行 把參數(shù)MD5加密后發(fā)給服務(wù)器啊。
查看完整描述

3 回答

?
一只名叫tom的貓

TA貢獻(xiàn)1906條經(jīng)驗(yàn) 獲得超3個贊

如果只做md5,一般要在md5時候,加一個appkey之類的東東,或者說salt,這個東東是不通過參數(shù)傳遞的(前后端都知道值),這樣就防止別人篡改和構(gòu)造請求了。

如果同時做md5和加密,也可以,密鑰不傳就可以了。

查看完整回答
反對 回復(fù) 2019-02-12
?
精慕HU

TA貢獻(xiàn)1845條經(jīng)驗(yàn) 獲得超8個贊

補(bǔ)充一下樓上的答案,重點(diǎn)說說重放攻擊問題。

有可能請求被其他人抓包,拿來重復(fù)請求。
那么設(shè)計(jì)思路是下面這樣的:

首先,所有方案在加密的時候都應(yīng)該有一個約定的秘鑰。保證攻擊者不能自己算出sign

方案A:驗(yàn)證md5是否被請求過

這樣每次請求都有一個唯一的md5,服務(wù)端在第一次完成請求后,把md5寫入緩存。
下次處理請求之前先判斷一下有沒有這個md5,如果有就代表是重復(fù)請求。

但有沒有想到這里有個缺點(diǎn):
每一個請求都要寫一個md5進(jìn)緩存,請求量比較大的話非常占緩存

方案B:給參數(shù)里加個時間戳

如果時間差在60s以上,代表這個請求是被別人抓取到了,拿來做重復(fù)請求攻擊。

這種方案也有缺點(diǎn):
客戶端和服務(wù)端的時間一致性要求比較高。

終極方案:兩個結(jié)合一下。

時間戳+md5
1、時間差120s以上代表重復(fù)請求
2、md5寫緩存,緩存時長120s(大于等于上面的值就行),判斷如果有md5代表重復(fù)請求

這樣相對比較好的解決了重復(fù)請求問題。

查看完整回答
反對 回復(fù) 2019-02-12
?
回首憶惘然

TA貢獻(xiàn)1847條經(jīng)驗(yàn) 獲得超11個贊

其實(shí)我倒是關(guān)注 將參數(shù)排序 這個不排序 有什么影響嗎?如果直接把提交的數(shù)據(jù)拿來用不是更方便,畢竟安全體現(xiàn)再 appkey 上了啊

查看完整回答
反對 回復(fù) 2019-02-12
  • 3 回答
  • 0 關(guān)注
  • 553 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號