電商課題 對付秒殺器等惡意訪問行為的簡單梳理

2021-09-06 06:07:35 字數 1666 閱讀 1850

@鄭昀-秒殺器愛好者的技能點-

表單提交題庫錄製回放變換ip

早期的cookie欺騙

提前獲得驗證碼

強制使用過期cookie!

強制使用過期題目

鄭昀

==京東**的做法==

2023年的京東做法:

曾推出緊急公告:

『京東將根據伺服器日誌判斷搶購者是否使用了「秒殺器」,京東有權取消該訂單,然後剩餘產品重新搶購

我們會緊急開發一套臨時防火牆,由系統自動遮蔽「秒殺器」並且自動封掉相關賬號,取消其1元搶購權。』

鄭昀 :△ 

==蘇寧易購的做法==

2023年的易購做法:

驗證本次表單填寫的手機號碼的有效性

驗證賬戶的有效性

❷ 問題回答模式(注意是乙個秒殺就會出多道題目,全部回答正確才能參與秒殺):有考古詩的,有填字遊戲,有算術題,譬如「《三國演義》中周瑜是被誰氣死的?」;

❸ 根據演算法生成表單中hidden input控制項的name:據太平講,每次會變化控制項name或id,增加秒殺器自動組裝表單的難度,但防不了錄製回放;

2023年的易購做法:

❶ 單個ip在單位時間內的表單提交數做了限制;
鄭昀 :△ 

==建東的做法==

在應用伺服器上

❶ 基於ip的簡單判斷:連續1分鐘之內超過5次做同一件事情(一般是註冊、登入、下單、付款),即在應用層處理該ip。這個資料放在jvm中即可,只儲存很少的資料量,不積累,不解決那種1小時多少次重複一件事情的場景;

❷ 1小時重複一件事情的場景,交給風險控制系統進行智慧型分析,然後把ip加入黑名單,在應有層直接乾掉;

❸ 建立黑名單賬戶,通過分析發現有問題的賬戶,直接凍結掉;

❹ 在應用上採用token、等方式,減少『系統』處理的可能,例如:降低『系統自動登入』的可能。為了提高體驗:第一次不出現驗證碼,第二次之後才出現;在cookie中寫入乙個標記,如果使用者更換了瀏覽器,也認為是第二次,出現驗證碼提示;

鄭昀 :△ 

==特定商品秒殺的做法==

乙個登入使用者(以userid標識)和乙個秒殺商品(以goodsid標識)對應於乙個key,給使用者的驗證碼與此key繫結,且商品開賣之前訪問此驗證碼無效。

即驗證碼與業務、與使用者、與時間有關,提前拿到其他業務的驗證碼無效。

驗證碼一旦驗證,立即失效。

相關報道:

瘋狂的秒殺狂人

贈圖一枚:

電商秒殺優化

增加並行數量,就是增大對資料庫的訪問。而這三種優化快取效果排序 頁面快取 url快取 物件快取 jss,js這些內容的優化 首先在goodscontroller中找到商品列表goodlist,資料通過model來傳到good list.html頁面中去 那麼如何取出我們的頁面快取呢?通過下面這句 s...

電商秒殺專案 秒殺模組

itemmodel中新增乙個 private promomodel promomodel 並建立get set方法。修改getitembyid方法 override public itemmodel getitembyid integer id itemmodel itemmodel convert...

電商秒殺系統設計

秒殺場景一般會在電商 舉行一些活動或者節假日在12306 上搶票時遇到。對於電商 中一些稀缺或者 商品,電商 一般會在約定時間點對其進行限量銷售,因為這些商品的特殊性,會吸引大量使用者前來搶購,並且會在約定的時間點同時在秒殺頁面進行搶購。限流 鑑於只有少部分使用者能夠秒殺成功,所以要限制大部分流量,...