2012-01-12 8 views
2

は、私がこの場所でページのフォームを持っていると仮定し...は非セキュアページから安全なURLにフォームを送信

http://mydomain.com/myform.htm 

、フォームは次のようになります...

<form method="post" action="https://secure.otherdomain.com/handleform.php"> 
    .... 
</form> 

このフォームの送信を受信するサーバーに有効なSSL証明書がインストールされていると仮定すると、そのフォームの送信内容は暗号化されますか?

答えて

6

POSTリクエストはHTTPS経由で送信されます(正しく設定されている場合は暗号化されます)。普通のHTTP経由で取得したページからHTTPSページにフォームを送信することは悪いことです。最初のページはHTTPS経由でも提供する必要があります。この理由は、MITMの攻撃者が、フォームを使用してページをロードし、リンクを別のターゲットを参照するように置き換える応答を傍受する可能性があるためです。

(ページログインする特有のものではない、もちろん)、ここで最初のルールを参照してください:

ルール - すべてのログインページとすべての認証済みのページ

のための使用TLS

ログインページとその後のすべての認証済みページは、TLで排他的にアクセスされる である必要がありますS. 「ログインランディングページ」と呼ばれる最初のログインページは、TLSで配信される必要があります。 ログインランディングページにTLSを使用しないと、攻撃者はログイン フォームアクションを変更して、ユーザーの資格情報を 任意の場所に送信することができます。ログイン後に認証されたページ にTLSを使用しないと、攻撃者は暗号化されていないセッションID を表示し、ユーザーの認証済みセッションを危険にさらす可能性があります。

+0

この質問も参照してください:http://security.stackexchange.com/q/1692/2435 – Bruno

0

はい。それは安全に送信されます。

3

サーバとクライアントの間で有効なSSL/TLSセッションがネゴシエートできると仮定すると、yesになります。つまり、クライアントは、サーバーが提示する証明書を信頼して、双方が互いに納得できる暗号セット(使用するアルゴリズムなど)を交渉できるようにする必要があります。許可されているものを変更するために設定できる設定オプションはたくさんありますが、クライアント側の証明書認証などを必要とする特定の非正常なアルゴリズムを必要とすることなく使い慣れた "通常の"実装では、すべて正常に動作し、保護されたセッションを持つことになります。何らかの理由で失敗した場合は、クライアントが何がうまくいかなかったのかについてのエラーが表示されます。

一般に、これを行うことはできますが、送信は暗号化されますが、一般的には使用しないでください。暗号化されていない/保護されたページを1つに提出すると、中間攻撃のカップルタイプに脆弱になります。あなたはこれに関するOWASPの記事、なぜそれが悪いのか、hereを見ることができます。

関連する問題