當(dāng)前位置:首頁 > 公眾號(hào)精選 > 小林coding
[導(dǎo)讀]1.小黑的煩惱大白和小黑是一對(duì)好工友,前陣子小黑跳槽到了一家做電商的頭部互聯(lián)網(wǎng)公司,目前還在試用期,整天戰(zhàn)戰(zhàn)兢兢搬磚,都累瘦了。前幾天小黑因?yàn)橐粋€(gè)接口安全問題,差點(diǎn)沒過試用期,真是不容易呀。我們來看看是咋回事:原來小黑寫的接口遇到了重放攻擊,讓我們一起來幫幫小黑吧!2.什么是重放...

1.小黑的煩惱

大白和小黑是一對(duì)好工友,前陣子小黑跳槽到了一家做電商的頭部互聯(lián)網(wǎng)公司,目前還在試用期,整天戰(zhàn)戰(zhàn)兢兢搬磚,都累瘦了。

前幾天小黑因?yàn)橐粋€(gè)接口安全問題,差點(diǎn)沒過試用期,真是不容易呀。

我們來看看是咋回事:

原來小黑寫的接口遇到了重放攻擊,讓我們一起來幫幫小黑吧!

2.什么是重放攻擊

2.1 重放攻擊的定義

重放攻擊(Replay Attacks)又稱重播攻擊、回放攻擊,是指攻擊者發(fā)送一個(gè)服務(wù)端已接收過的包,來達(dá)到欺騙系統(tǒng)的目的,主要用于身份認(rèn)證過程,破壞認(rèn)證的正確性。

重放攻擊可以由發(fā)起者,也可以由攔截并重發(fā)該數(shù)據(jù)的敵方進(jìn)行,攻擊者利用網(wǎng)絡(luò)監(jiān)聽或者其他方式盜取認(rèn)證憑據(jù),之后再把它重新發(fā)給認(rèn)證服務(wù)器。

重放攻擊在任何網(wǎng)絡(luò)通信過程中都可能發(fā)生,是計(jì)算機(jī)世界黑客常用的攻擊方式之一

這個(gè)定義我最開始讀的時(shí)候沒太理解,看了幾遍才看懂,其實(shí)表達(dá)了三層意思:

  • 重放攻擊就是攻擊者把服務(wù)端收到過的數(shù)據(jù)包反復(fù)請(qǐng)求,由于是已經(jīng)收到的合法包,如果服務(wù)端防范不當(dāng)就可以順利通過身份認(rèn)證。

  • 重放攻擊的攻擊者可以是合法的客戶端,比如你的外部合作方搞錯(cuò)了循環(huán)了100次發(fā)相同的數(shù)據(jù),還有一種是客戶端和服務(wù)端交互時(shí)被竊取了,由中間人發(fā)起了攻擊。

  • 重放攻擊很普遍,是一種常見的攻擊防范,接口安全設(shè)計(jì)必須要考慮進(jìn)去。

了解重放攻擊概念之后,先看看小黑是如何設(shè)計(jì)接口的,再看問題在哪里以及解決方案是什么。

2.2小黑的設(shè)計(jì)方案

小黑設(shè)計(jì)的接口是為了接入外部數(shù)據(jù),接入方比較多,數(shù)據(jù)推送量也比較大。

小黑是這么設(shè)計(jì)的:

  • 每一個(gè)接入方分配唯一賬號(hào)標(biāo)記? data_from字段
  • 每一個(gè)接入方分配唯一接入密鑰? 32位長(zhǎng)的secret_key字段
  • 接口中有幾個(gè)必填字段,按照字典序排列生成字符串seg_str
data_from=abc
本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
關(guān)閉
關(guān)閉