如何防止簡訊驗證被盜刷

2021-08-16 09:14:32 字數 1794 閱讀 8257

在php聊天群裡,有位同學說 他們的5000塊錢的簡訊,兩天被刷完了!,問群裡大佬怎麼辦!

就一般的防止簡訊驗證盜刷而言(通過修改手機號修改驗證碼),我們通常的防止簡訊被濫發,就是

(1)限制每個手機號的傳送次數

類似:

//

檢查傳送次數

$key

="mobilereg_sms_send_times:".

$mobile

.":".

date

("ymd");

$smssendtimes

= yii

::()->

redis->

get(

$key

);if(

empty(

$smssendtimes

))

else if(

$smssendtimes

>=

10)

但是如果人家通過修改手機號呢,這時候我們就引入了通過ip,來限制ip
(2)通過ip限制

//檢查

ip傳送次數

$keyip 

="mobileipreg_sms_send_times:".

publicfunhelper

::getip

() .

":".

date

("ymdh");

$smsipsendtimes

= yii

::()->

redis->

get(

$keyip

);if(

empty(

$smsipsendtimes

))

else if(

$smsipsendtimes

>=

5)

(3)驗證 檢測同乙個簡訊傳送驗證時間

//

檢查是否相隔

60秒後傳送

$limitkey

="mobilereg_sms_send_limit:".

$mobile

;$smssendlimit

= yii

::()->

redis->

get(

$limitkey

);if(

$smssendlimit

)

以上這3個條件篩選對於一般的刷簡訊防護應該是已經夠了!但是群裡那位同學這3個驗證條件都加了,依然還是被刷爆了,接下來又該怎麼處理呢?(攻擊的機制是通過修改手機號)

群裡各位給出的方案

1 提交修改是再加乙個驗證碼的 驗證(個人比較看好這種方案);

2 限制同乙個賬戶 一天修改手機號的次數

3 在修改之前,再重新登入使用者名稱和密碼

感謝群裡各位大佬。。。。

防止簡訊驗證碼被刷

1 圖形驗證碼限制 圖形驗證通過後再請求介面 圖形驗證碼限制是最常用的一種方式,使用者輸入圖形驗證碼並通過之後,再請求簡訊介面獲取驗證碼。2 時間限制 60秒後才能再次傳送 這種措施使用得比較普遍,從傳送驗證碼開始,前端 客戶端 會進行乙個60秒的倒數,在這一分鐘之內,使用者是無法提交多次傳送資訊的...

如何防止簡訊介面被刷?

簡訊驗證碼作為重要的身份驗證工具,因其操作簡便 安全性高 時效性強等優點已被開發人員廣泛使用。但因其獲取便利 限制較少容易被不法分子利用進行簡訊轟炸,惡意刷掉大量簡訊費用,給公司或個人造成大量的金錢損失,造成這種情況原因主要是在產品實際設計過程中,有些產品人員因為對技術實現不太了解,防範意識薄弱,簡...

如何防止網域名稱被盜

網域名稱是整個 的核心和關鍵,一旦網域名稱被盜,且轉移到其他註冊商,將給網域名稱所有人帶來巨大的損失,網域名稱被盜後站長索回異常困難 參見這個站長的故事 如何防止網域名稱被盜也就成為所有 管理員必須知道的一門嘗試。那麼,怎麼樣才能防止自己的網域名稱被不發分子盜取呢?以下是保護網域名稱安全的一些常見方...