次のようなURLでMD5ハッシュを使用するWebサイトがあるとします。
http://somewebsite.com/XXX/
ここで、XXX
はMD5ハッシュです。
このウェブサイトのコンテンツには、個人データとの取引の詳細などの機密情報が含まれている可能性があります。
このWebサイトに対する他の認証はないため、URLがあればアクセスできます。
どのくらい安全ですか?つまり、誰もURLを誰とも共有しない場合、誰もアクセスできないと思いますか?
このようなURLのすべての組み合わせをクロールするには、Webクローラーにどのくらいの時間がかかりますか?
トランザクションの詳細を個人データと一緒に保存しているWebショップを使用しているため、安全ではなく、誰かがクライアントの機密データを見ることができると言いますが、確信はありません。 Webクローラーを構築するのは簡単です。方法はわかりますが、すべての組み合わせをクロールするのにどれだけの時間がかかるのかはわかりません。これは私のウェブサイトではありません。私はそのショップのエンドユーザーです。彼らが間違っていると彼らに納得させる必要があります。
「秘密」のURLについては、考慮すべき問題がいくつかあります。
第1に、HTTPとHTTPSを介して提供される場合、検出に対して異なるレベルのセキュリティを提供します。 HTTPSでは、パスは保護されています。 HTTPでは、そうではありません。つまり、HTTPを使用する場合、トラフィックのパス内のすべてのユーザー(ワイヤレストラフィックを傍受する人、プロキシサーバー、キャッシュサーバー)がパスにアクセスできるため、パスを検出できます。 HTTPSでは、ホスト名のみが公開され、パスは盗聴者から保護されます。
次に、ブックマークを付けたり、さまざまな方法で保存したりできます。ブックマークされたURLの誤用がアプリケーションにとって重大な脅威であるかどうかを考慮する必要があります。
3番目に、有効なURLへのアクセスを期限切れにする方法はありません。認証システムがある場合は、何らかの形式のセッションタイムアウトを適用できます。そうしないと、URLが有効である限り、それを持っている人はだれでもアクセスできます。
4つ目は、この特定のアプリケーションに固有のものですが、コメント内のIzamの質問です。 URLを作成するためにハッシュされているもの?それが増加する整数ベースのトランザクションIDのようなもの、またはアルゴリズムが候補の入力とハッシュを簡単に生成できる他のソースの場合、いいえ、攻撃者が潜在的に有効なハッシュのセットを生成してそれらを試すことができるため、確かに安全ではありません。すべて。すべてが機能するとは限りませんが、一部が機能している場合、スキームは壊れています。特に、それがis増加する整数のようなものである場合、有効な入力を検出すると、すべての有効なURLを簡単に判別して公開できるためです。
したがって、秘密のURLは有効なツールになる場合があります。個人情報が危機に瀕している場合、特に財務情報である場合、私はnotこのメカニズムに依存します。弱すぎる。
すべての組み合わせをクロールする必要はありません。アクセスする権限のないものを見つけるだけです。これは、メソッドが壊れていることを証明しています。これはMD5ハッシュであるため、毎回同じ長さになる可能性が高く、有効なリンクを絞り込むのが容易になります。
クローラーがアクセスするはずのないリンクを見つけるのに必要なコードは約5行未満で、1時間もかからないと思います。