0

Wave Frameworkを開発したとき、APIリクエストのセキュリティモデルに多くの注意を払いました。APIリクエストは、可能な限りHTTPを介して行うことができると同時に、潜在的な中間者攻撃やデータの改ざんなどから保護する必要がありました。

基本的に、入力データからGET文字列を作成し、APIプロファイルの秘密鍵でソルトしながらSHA-1ハッシュを生成することになりました。これは本当にうまく機能し、必要なだけAPIを保護します。

しかし、私のAPIでは、HTTPを介したファイルのアップロードなども可能です。現時点では、ファイルのアップロードに関連するデータを完全に無視しています(キャッシュの署名には使用していますが、データの検証には使用していません)。これは、悪意のある仲介者が転送中にファイルの内容を技術的に変更する可能性があることを意味します。

代替案はありますか?確かに、ファイルがサーバー側に送信されるときにこれを実装できますが(検証ハッシュの一部としてファイルの内容を計算するなど)、アップロードがWebブラウザーを介して行われ、JavaScriptを介して開始される場合、これはオプションではありませんか?

他のフレームワークはこれをどのように処理しましたか?検索しようとしましたが、十分な情報が見つかりませんでした。ありがとう!

4

1 に答える 1

0

私があなたの言うことを正しく理解していれば、あなたのフレームワークは、ユーザーがファイルをアップロードできるWebページを作成します。このシナリオで中間者から保護する唯一の方法は、sslを使用することです。

この場合、中間者は、ユーザーがデータをアップロードするときに操作しているWebページを変更することもできることを忘れないでください。ユーザーが入力したパスワードを使用して、何らかの方法でドキュメントを暗号化するJavaScriptを作成したとします。中間者は、JavaScriptを簡単に変更して、偽のドキュメントを暗号化し、実際のドキュメントを破棄する可能性があります。

Webでセキュリティが問題になり、man-in-the-middleから保護する必要がある場合は、SSLが要件です。それを回避する方法はありません。

于 2012-09-17T20:50:45.463 に答える