すべての顧客に個別に取り消すことができる秘密鍵を提供しない限り、接続を効果的に拒否することはできません。しかし、これはおそらく過剰です。ほとんどの人が気に弾丸を発射することを気にしない場合、防弾ソリューションは必要ありません。
これはセキュリティの質問なので、脅威モデルと緩和戦略について説明しましょう。
目に見えるコスト(処理コストなど)が発生する可能性があるURLヒットがあり、単純なDoS攻撃と模倣アプリの両方から保護したいとします。
SSLを使用して、接続が簡単に分析されないようにします。要求のコストのかかる部分を行う前に、obviuos以外のポート番号、リダイレクトシーケンス、Cookie交換を使用して接続を少し複雑にします。アプリに組み込まれたシークレットコードを使用して、接続を受け入れる必要があることをサーバーに通知します。
誰かが単にパケットスニファーを実行したり、コード内のURLのような文字列を見たりするだけでは、ヒットする高価なURLを知ることができません。潜在的な攻撃者は、アプリを逆コンパイルする必要があります。
コードを逆コンパイルおよび/またはデバッガーの下で実行されることから実際に保護することはできません。攻撃者は最終的に秘密鍵と接続シーケンスを学習します。
コストのかかるURLで不正なリクエストを受信し始めていることに気付きます:攻撃の形式、または実行するためにサービスにアクセスする必要がある模倣アプリの形式、または悪用コードが公開されている可能性があります。ただし、不正なリクエストを正当なリクエストと区別することはできません。
別の秘密鍵を使用して、アプリに無料のマイナーアップデートを作成します。侵害された高価なURLと同じデータを提供する、別の高価なURLにヒットするはずです。しばらくの間、両方のURLにアクセスできるようにします。
更新されたバージョンへのユーザーベースの切り替えを確認してください。侵害されたコストのかかるURLを調整し、最終的に404にします。セキュリティ侵害を軽減しました。うまくいけば、多くを失うことはありません。振り出しに戻って。
免責事項:私はセキュリティの専門家ではありません。