3

WinForms アプリに Web ブラウザー コントロールを組み込みました。ユーザーがサイト上で、私に属さないアクションをいくつか行います。最後に (たとえば、最後のページで) サーバーに確認を送信する必要があります (たとえば、Web サービスを介して)、そのユーザーは本当にすべきことを行いました。

現在、アプリケーションはそのプロセス中にいくつかのデータを収集しており、それでいくつかの奇妙なことを行った後(つまり、あいまいさによるセキュリティ)、サーバーに情報を送信します。アプリからサーバーに送信されるメッセージは隠され、アプリケーションは C++ で記述されているため、逆コンパイルして実際に何が送信されているかを確認するのは簡単ではありません。さらに、コードをクラックできる可能性のあるユーザーは、ほとんどお金を稼ぐ機会がなく、簡単に追跡できます。そのような状況は発生したことがありません。

ソースコードが保守できなくなったので、C# で書き直したい。問題は明らかです。難読化されたコードであっても、古いネイティブ C++ バイナリよりもはるかに簡単にクラックできます。

「安全な」方法はありますか?Webブラウザの制御(https接続のみ)にあるページのデジタル署名のようなものを取得する可能性はありますか? 外部ページのユーザー資格情報を取得し、彼に代わってサーバー側でアクションを実行する以外に、それを行う方法がわかりません。これはまったく受け入れられません。

4

1 に答える 1

1

あなたの質問では、ユーザーが WinForms アプリを取得する方法などの範囲はわかりません。しかし、唯一の「絶対確実な」方法は、このロジックとコードを自分の制御可能な施設でホストすることだと思います。そこで、私の 2 つの (費用はかかりますが実行可能な) 提案を以下に示します。このアプリケーションを次のいずれかとして公開します。

繰り返しになりますが、投資とインフラストラクチャの点ではおそらくやり過ぎですが (このことがどれほど普及しているかによって異なります)、それでも技術的な観点からは非常に魅力的です。なぜなら、どのような種類のデータやどこにこの情報を送信するかを盗聴することは不可能だからです.

于 2011-06-30T16:03:06.817 に答える