金利0無利息キャッシング – キャッシングできます

 | 

2009-12-16

ウェブサービスにおける正しい退会ページのあり方

14:35 | ウェブサービスにおける正しい退会ページのあり方 - 金利0無利息キャッシング – キャッシングできます を含むブックマーク はてなブックマーク - ウェブサービスにおける正しい退会ページのあり方 - 金利0無利息キャッシング – キャッシングできます

トークンの確認があるべき

  • いわゆるCSRF対策。
  • サービスにログインした状態のユーザーを退会フォームにPOSTするような罠を仕込んだページに誘導するだけで退会出来てしまうから
  • 退会ページでJavaScriptでconfirm出して「本当によろしいですか?」とか確認してもフォーム直接POSTしてしまえば意味が無い

パスワードの確認があるべき

  • もしサービスにXSS脆弱性があったら、そのユーザー自身に退会ページにアクセスさせて正しいトークンを含んだ正規のformを自動でsubmitできてしまうので
  • あるいはログインされたまま放置されたPCを誰かが勝手に操作できる状態だったら、セッションが維持されている限り本人でなくても退会できてしまう

パスワードの入力フォームがautocomplete=offであるべき

  • ユーザーがパスワードを保存していて、サービスにXSSが存在する場合、パスワードが自動入力された退会ページのsubmitボタンを押すJavaScriptを仕込むことが出来る
    • OperaはCtrl+Enter押すまで自動入力されない(DOMで参照できない)ので無理、最初から入力された状態になるブラウザが対象
  • XSSが存在しなくても、クリックジャッキングによって(パスワードが自動入力された)退会ページを開いて退会ボタンを押すことが出来る
    • JavaScriptでconfirmを出すのはこういう攻撃に対して一定の効果があるかもしれない。

退会処理が500エラーを返すべき

  • 落ち着け、よく考えてから退会しろ
  • わざわざサポート宛にメールを送って本当に退会したいと言ってくるやつだけ本当の退会ページに案内すべきだ
 |