web-dev-qa-db-ja.com

ログインページを悪用する可能性のある方法は何ですか?

最近のインタビューで、ログインページをバイパスする方法を尋ねられました。ユーザー名、パスワード、ログインボタンだけです。

私は以下の可能な方法を思いつくことができました、

  1. SQLインジェクション
  2. フィッシング
  3. クッキーを盗む
  4. デフォルトを試す/ユーザー名とパスワードを推測しやすい

しかし、インタビュアーは私の答えに満足せず、これらの簡単なオプションの代わりにもっと難しい方法を期待していました。

それで、私はログインページが他にどのように悪用されることができるか知りたいですか?どのエクスプロイトが欠けていますか?

1
ChallengeMe

いくつかの考え:

  • ログインページに違反する可能性のある情報については、ソースコードを参照してください。開発者のコ​​メント、認証に使用される変数
  • ページを表示して、セキュリティの問題がある既知のフレームワークを使用しているかどうかを確認します。バージョン番号を見つけ、関連するCVEを検索します
  • リクエストをプロキシしてコンテンツを表示します。渡される情報を改ざんして、アクセスを許可するかどうかを確認する
  • そのデータがアクセスを許可するかどうかを確認するものがある場合は、Cookieのコンテンツを表示します(以前、真剣にaccess = trueに遭遇しました)
  • いくつかのURLを推測できる場合は、ログインページを移動してみてください。アクセスしようとしているページへのアクセス制御が不十分である可能性があります。
  • 詳細はサイト自体をご覧ください。 dirbusterなどを使用して、ログインページに関連する開いているディレクトリがあるかどうかを確認します。多分プレーンテキストのパスワードファイルのユーザーリスト
  • ログインページがホストされているものを確認します。たぶん、アクセスを取得したりページを回避したりするために使用できるホストプラットフォームにエクスプロイトがある
  • 以前の違反からのユーザー/パスワードのリストを使用して、ブルートフォースアクセスを試行します
4
McMatty

さて、あなたはユーザー名とパスワードとログインボタンを備えたログインページを持っています。

  1. エラーを監視して、ユーザー名を列挙してみてください。ユーザー名が既に存在するように(それが問題になります。).

  2. ユーザー名を列挙して、パスワードの品質を確認できることを確認した後。パスワードルールが適切でない場合、ログインページに問題があります(ポイント1 +ポイント2)。

  3. ログインページはHTTPSにありますか?そうでない場合は、攻撃者が応答を傍受してキーロガーを挿入するとどうなるでしょうか。

  4. 資格情報はHTTPS経由で送信されますか?

  5. もちろん、デフォルトのユーザー名のパスワード。

  6. SQLインジェクション。

  7. アカウントにログインすると、パラメーターが慎重に表示されますが、ユーザーIDなどのパラメーターはありますか。そして、もしあればIDORを試してみてください。

はい、利用できる方法は他にもたくさんありますが、私があなたなら、その時にこれらの答えをあげます。

1
Utkarsh Agrawal