1

シナリオは次のとおりです。

ショッピングカート以外のすべてのページで、新しいmd5(rand())セッション変数が生成されます。次に、この変数はショッピングカートリンクのURLに挿入されます。カートのリンクをクリックすると、ユーザーがhttpからhttpsに転送されるポイントになるため、中間者がサーバーとユーザーの間に侵入するのを防ぐために、これはセキュリティで保護するための重要なトランザクションであると理解しています。

ショッピングカートにアクセスするには、現在のセッション変数がURLの文字列と一致する必要があります(例: "/ Shopping_car_url / {random_string} /")。そうでない場合、404エラーが送信されます。

  1. セッションが危険にさらされない限り、これは効果的である必要がありますか?
  2. POST変数(またはセッションと投稿の両方で同じまたは異なるランダム文字列)を使用することは、同等またはそれ以上の効果がありますか(または効果がありません)?
  3. これが効果的である場合、カートの編集/チェックアウトプロセスの残りの部分で同じことを行うことに何か利点はありますか、それともユーザーはこの時点ですでにSSLに接続しているので、これは無意味ですか?
4

2 に答える 2

2

ここで身を守ろうとしているのはCSRF(Cross Site Request Forgery)であり、MITMではありません。

httpsに切り替えると、MITM攻撃は事実上不可能であり、カートにアイテムを追加する場合、通常、CSRF保護は必要ありません(支払いアクション自体とは異なります)。XSS&CSRF:認証後の脆弱性の実際的な調査も必ずお読みください。

ただし、悪意のある人物がhttpsに切り替える前にユーザーとサイトの間に位置することに成功した場合、httpsを使用せずに、悪意のある人物がショップのリンクを書き換えることができます。その場合、アドレスバーの鍵のアイコンに注意するのはユーザー次第です。

于 2013-01-14T03:24:28.253 に答える
2

気にしないでください。URL はシンプルで分かりやすいものにしてください。あなたの顧客はもっと幸せになるでしょう。SSL を正しく使用していれば、ほとんどのトランスポート層の中間者攻撃から保護されます。

于 2013-01-14T01:20:44.313 に答える