介面的防刷辦法

2022-09-16 01:42:09 字數 1129 閱讀 8831

1、牟利

黃牛在 12306 網上搶票再倒賣。

2、惡意攻擊競爭對手

如簡訊介面被請求一次,會觸發幾分錢的運營商費用,當量級大了也很可觀。

3、壓測

用 apache bench 做壓力測試。

4、當程式設計師無聊的時候

1、次數

多2、頻率

頻繁,可能 1 秒上千次

3、使用者身份難以識別

可能會在刷的過程中隨時換瀏覽器或者 ip

根據使用者粒度,如果該使用者符合上面提到的「刷」的概念,就是惡意的。

1、當前網頁

優點:無

缺點:沒有任何意義,一重新整理頁面使用者的身份就變了

2、session

優點:偽造成本一般(可以理解成乙個瀏覽器對應了乙個使用者)

缺點:當使用者手動清除 cookie 的時候即失效

3、ip

優點:偽造成本高

缺點:要考慮乙個公司、乙個小區的人一般會共享乙個 ip,所以適當的要放寬對單一 ip 的請求限制

ip 資訊是存在請求頭里的,而 https 對請求本身做了加密,可以防止 ip 資訊被偽造或篡改。所以推薦伺服器採用 https 傳輸。

一、直接拒絕訪問

優點:簡單粗暴

缺點:簡單粗暴

二、返回「操作頻繁」的錯誤提示

優點:提示友好

缺點:會把確實是操作比較頻繁的真實使用者攔截

三、驗證碼

1、圖形

2、滑塊

3、找不同

優點:精準識別請求是真人還是機器發出的,二次篩選出真正的使用者

缺點:不夠人性化,使用者操作時間長、體驗差

安全問題是長期的和攻擊者鬥智鬥勇的問題,沒有一勞永逸的解決方案,不斷交鋒,不斷成長

介面防刷之驗證簽名

在web開發的過程中,當對外提供的介面能夠被隨意呼叫時,可能造成非法使用者能夠對我們的伺服器進行惡意攻擊,導致伺服器不能有效處理正常的業務請求,因此需要考慮對這些暴露出去的http介面做防刷限制。今天主要講一下我們的專案中用到的一種防刷機制 給對外介面加驗證身份的簽名 即驗籤 具體到業務中,當呼叫者...

ip防刷指令碼

bin sh 防刷指令碼 env access path home wwwlogs access log y.log iptables top log iptables top.log drop log droplist.log history log history.log ip白名單 noip ...

介面防重放

以前總是通過timestamp來防止重放攻擊,但是這樣並不能保證每次請求都是一次性的。今天看到了一篇文章介紹的通過nonce number used once 來保證一次有效,感覺兩者結合一下,就能達到乙個非常好的效果了。重放攻擊是計算機世界黑客常用的攻擊方式之一,所謂重放攻擊就是攻擊者傳送乙個目的...