ユーザーがWebブラウザーを介してWebページにアクセスできないようにしますか?

StackOverflow https://stackoverflow.com/questions/2661655

質問

私の友人と私はプログラムに取り組んでいます。このプログラムは、Webページにデータを取得することを提出します。ただし、ユーザーがプログラム以外の方法でWebページにアクセスすることは望ましくありません。 HWID認証を使用してユーザーがプログラムを共有できないことを防ぐことができますが、パケットスキャナーを使用してWebページのURLを取得することを妨げるものはありません。実装するユーザーエージェント認証について考えましたが、ユーザーエージェントは簡単にスプーフィングできます。

それで、私の質問は、プログラムを通じてではなく、ユーザーがWebページに直接アクセスできないようにするにはどうすればよいですか?

あなたが完全に機能する答えを持っていなくても、それらを阻止するのに役立つものは何でもいいでしょう。

現在、実装しています。

HWID認証プログラムユーザーエージェント認証を使用して、適切なユーザーエージェントなしでWebページにアクセスしている人にアクセスするWebページにアクセスするIPブラックリストにアクセスする

役に立ちましたか?

解決

ユーザーエージェントやブラウザの指紋に依存しないでください。HTTPヘッダーは簡単に偽造/スプーフィングされます。

秘密のトークン(例:パスワード/ログイン)をリクエストに追加して、盗聴を防ぐためにSSLを介して送信できます。

または、SSLクライアント証明書を使用してください。

編集 VBプログラムを配布しますか?もしそうなら、Bobinceが述べたように、決定されたハッカーがリクエストを偽造するのを防ぐことはできません。あなたはバーを上げることができますが、それはそうなるでしょう あいまいさによるセキュリティ. 。クライアントの証明書を使用しても、ハッカーはプログラムから証明書を抽出し、変更されたリクエストを送信することができます。

クライアントからのリクエストを受け入れる限り、これらのリクエストは偽造できます。それに対処します。

他のヒント

オプションの1つは、リクエストヘッダーに暗号化されたトークンを設定できることです。

トークンは、1回だけ使用できます。同じトークンが再度送信された場合、サーバーはそれを拒否します。つまり、サーバー側の使用されたトークンのコピーを維持する必要があります。

1つのオプションは、Webブラウザーが送信しないカスタムヘッダーを使用および検証することです。自分のプログラムについても同様のことをしました。あなたがしている他の検証のその上のその上。サーバーサイドでは、サーバースクリプトにカスタムヘッダーを確認し、ヘッダーが間違っている場合にリダイレクトするだけです

  • A Long Key(512bits以上)を使用してすべてのWebページを暗号化してみてください。 hwid 塩として。

    このようにして、あなたのみのプログラムのみがそれをデコードし、それをWebページとしてレンダリングできます。

    en.wikipedia.org/wiki/salt_%28cryptography%29

  • C#&vb.netはこちら:

    obviex.com/samples/hash.aspx

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top