Rookie

漫游指南-1 的世界

流浪在大理的斜杠青年

悪意のあるSMSインターフェースの緊急まとめ

事件#

インターフェースの出所
1.WEB 登録インターフェース
2.APP 登録インターフェース
大量の認証コードを送信
IP の数が絶えず変化し、大量の電話番号(SMS が空番号であるかどうかは気にしない)

現在の解決策#

・ 安全な認証コードを追加
・ 認証コードを入力してから SMS を送信

安全策#

0. SMS 送信時間間隔制限:#

同じ電話番号からの再送信の時間間隔を制限。通常は 60-120 秒に設定し、フロントエンドでカウントダウン制限を行い、時間が来るまで SMS 送信ボタンをクリックできないようにし、バックエンドでも時間間隔制限を行い、時間が来るまで SMS を送信できないようにする。

1.IP 制限#

自社のビジネス特性に基づき、各 IP、番号ごとに 1 日の最大送信量を設定し、さらに電話番号と IP が同じ地域に属するかどうかを検証できる。

2. 登録手順の変更#

登録ユーザーは、SMS 認証コードの送信とユーザー名・パスワードの設定を 2 つのステップに分ける。第一ステップではユーザー名とパスワードを設定するページを用意し、ユーザーが設定したユーザー名とパスワードをバックエンドに送信し、バックエンドから返された第一ステップの成功レシートを取得した後、第二ステップの別のページで SMS 認証コードを送信する。(提出の速度と IP 提出制限)
附: SMS 認証とユーザー名・パスワード設定を 2 つのステップに分け、ユーザーが成功裏にユーザー名・パスワードを設定した後にのみ SMS 認証を行い、第一ステップの成功レシートを取得した後にのみ検証を行う必要がある。

3. トークンの追加#

送信者を一意に識別:パラメータを変更して複数の IP アドレスや電話番号を偽造して悪意のある攻撃を防ぐために、トークンを一意の識別子として使用し、バックエンドがトークンをフロントエンドに注入し、フロントエンドがトークンを取得し、SMS 認証コード送信インターフェースをリクエストする際にトークンを持参し、バックエンドがトークンを受信して検証し、検証に失敗した場合は SMS を送信できないようにする。(この方法を推奨)
さらに、画像と電話番号をバインドする。

4. 画像認証コードの追加:#

SMS 認証コードを送信する際に、画像認証コードの入力を要求し、各画像認証コードは 1 回のみ使用可能で、1 回使用後は、入力された画像認証コードが正しいかどうかに関わらず自動的に無効になる。
入力が間違っている場合は画像認証コードを更新する。画像認証コードの無効化は、画像認証コード認識ソフトウェアが何度も認識を試みるのを防ぐことができる。
複雑な画像認証コードやタッチ検証、スライド検証、画像の表裏を考慮することができる。

5. 埋め込みポイント#

JS を通じてウェブ版のデバイスフィンガープリンティングやクライアント情報を収集し、報告する。JS を使用してハッシュフィンガープリンティングを生成し、異なるデバイスを区別し、同時にブラウザの UA、解像度、プラットフォーム、システムなどの情報をアップロードし、広範な識別能力を持つ。この方法を通じて独自の情報庫を構築できる。
ユーザーに対して人間と機械の検証を行う。例えば、フロントエンド JS の読み込み、ユーザーがページに滞在する時間を判断し、ユーザーがプロキシ IP を使用しているかどうかを判断する。
能力のある企業は独自のリスク管理システムを構築できる。

セキュリティテスト#

データパケットを送信する際に Request に送信し、まず正常に 1 回送信し、データパケットを分析して注目し、その後電話番号のバックドアにカンマを追加してテストを続ける。もし可能であれば、カンマを繰り返し追加し、無制限に達することができる。

  • さらに、この方法はシステム設定された 1 日の最大 SMS 送信数を回避する可能性がある。

  • また、テストの結果、カンマ、点、ハイフン、スペースなども回避の目的を達成する可能性がある。

  • 電話の国番号を変更または追加してテストすることもできる。

SMS 爆撃のテストにおいては、いくつかの文字を追加してテストを行うことができる。例えば、WeChat は以前、登録時にセミコロンを追加することで複数の番号を登録できることが報告された。

  • 思考が道を決定する。
読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。