ホームページ  >  記事  >  バックエンド開発  >  他人が確認コードをスワイプできないようにするにはどうすればよいですか?

他人が確認コードをスワイプできないようにするにはどうすればよいですか?

WBOY
WBOYオリジナル
2016-10-19 10:40:521481ブラウズ

Keng 製品によって設計された登録/ログインでは、携帯電話認証コードを取得できますが、グラフィック認証コードは含まれていません。そして現在、検証コードを取得するためのインターフェースが何度もスワイプされています。過去 1 時間で何千ものリクエストがあり、それらはすべて異なる IP と異なる携帯電話番号からのものです....

グラフィック確認コードを追加する以外に、スワイプを防ぐにはどうすればよいですか?

返信内容:

Keng 製品によって設計された登録/ログインでは、携帯電話認証コードを取得できますが、グラフィック認証コードは含まれていません。そして現在、検証コードを取得するためのインターフェースが何度もスワイプされています。過去 1 時間で何千ものリクエストがあり、それらはすべて異なる IP と異なる携帯電話番号からのものです....

グラフィック確認コードを追加する以外に、スワイプを防ぐにはどうすればよいですか?

グラフィックの確認コードを除いて、私が考えることができるすべて:

  1. 携帯電話番号に基づいて、携帯電話ごとに 1 日に最大 N 個の確認コードを送信できます。 LZでは既に追加されているようです。

  2. IP に基づいて、IP ごとに 1 日に送信される N 個の確認コードの最大数を制限します... -- 欠点: 通常のユーザーを誤って殺害するのは簡単なので、注意して使用してください

  3. 【究極の手法】ユーザー行動のビッグデータ分析に基づく

ユーザーの行動に基づいて分析するにはどうすればよいですか?簡単な方法を考えました:

まず第一に、通常のユーザーは確認コードリクエストの送信に加えて、CSS/JS/HTML/画像などのページ上の他のリソースにもアクセスする必要があります。

ただし、ブラシの場合は、これらのリソースに具体的にアクセスできない可能性があります。

ユーザーがページにアクセスしたときに human参数存在session中,每当其请求页面中的一个资源则human += 1。等到发送验证码的接口的时候,取出来这个human参数看看其值是多少,正常的一个用户这个human值应该是大于某个值的(比如5),小于的则应该就是刷子。(为0 を記録できるようにします (ブラシである必要があります)


私が言ったことは比較的単純で、いくつかのリクエスト間の間隔、ログインまたは登録ボタンをクリックする前のマウスの移動軌跡、マウスが押されて閉じられた時間などを記録できます。包括的な分析のためにそれらを記録します。

Google のような reCAPTCHA を引用またはコピーしていただければ幸いです。ワンクリックで人や機械のブラシを自動的に識別します。

New Wolf Microwave のように~ ユーザー名とパスワードが存在する場合にのみ、検証馬が送信されます。


問題は、携帯電話の確認コードを介してログインするときにパスワードを追加できないことです。登録したパスワードは何気なく入力してもあまり意味はありません

@locatejoe

パスワードを表示する代わりに、ユーザー名とパスワードが MD5 値として取得され、結合され、ハッシュ化され、bloomFilter と同様のフィルターにマッピングされます。
bloomFilter が 不存在 を返す場合、検証馬は送信されません。
bloomFilter はスペースをあまり取らず、非常に高速です。

以前にもこの問題が発生しました

2 日間で 20,000 件を超えるメッセージが記録されました

解決策:

1. グラフィック確認コードを追加します。
2. 同じ携帯電話が同じ期間に 3 つのメッセージしか送信できないことを決定します。
3. 同じ携帯電話と IP の場合、テキスト メッセージの送信時間を決定します。 30 分以内に使用されると送信されません

とにかく色々な方法があるので試してみてください

IP と携帯電話番号が異なる場合は、グラフィック確認コードを追加できます。 。 。

  • グラフィック検証コードを追加します。フォントの色が単色になりすぎないようにしてください。

  • テキストメッセージが送信され、フロントエンドCookieによって判断され、PHPに個別に保存された後に間隔が必要です

  • インターフェースは、要求されたIPアドレスと携帯電話番号を決定する必要があります。前回からの時間が短すぎる場合、送信は許可されません

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。