2016-12-04 2 views
0

私は自動ログインを試みています。ここに自分のHMTLフォームがありますPHPによる自動承認リンク

<input name="login:username" type="text" class="INPUT_USER"> 
<input name="login:password" type="password" class="INPUT_PASS"> 
<input type="image" src="login.gif" class="BUTTON" value="" border="0"> 

これは私のユーザー名管理者とパスワードのテストです。

私はこのリンクをwww.example.com/adminと開いて、何とか私はユーザ名とパスワードを入力してシス​​テムに自動的に入力したいと思います。それは可能ですか?

私は誰かがオプションを提案している場合、このhttp://Admin:[email protected]/admin

のようなものは、私は喜んでいると思います。事前に感謝し、私は明確でない場合は謝罪します。

+0

自動認可をお持ちの場合は、認可チェックを削除してください。役に立たないです。 – sensorario

+0

@ sensororario私は知っているが、持っている必要があります。手伝って頂けますか? – didsun

+0

私はあなたに悪い提案を与えることはできません、ごめんなさい^ _^ – sensorario

答えて

-1

あなたのURLで決してパスワードを渡すことはありません。 ServerはこのURLを入力して、そのユーザーは、それが彼をログに記録する持つアカウントの所有者である知っている必要があります

解決方法1:トークンまたはハッシュされたパスワードとクッキー ストアクッキーをサーバがそれを確認することができますので。

ソリューション2:永遠にログイン - 単に - セッションが

+0

パスワードをクッキーに保存することは、攻撃者にとってより簡単なターゲットになります。サーバがハッシュ自体を受け入れない限り、パスワードハッシュをクッキーに格納することは無意味です。この場合、ハッシュ*はパスワードです。 –

0

私はあなたのパスワードすべての時間なしでユーザーをログに記録する必要はありません確信しています。このシナリオでは特別なケースでなければなりません。

実際にログオンリンクが必要なときにユーザーのトークンを生成するのが正しいことです。あなたは、暗号的にランダムで安全なトークンを生成し、それをあなたのユーザに関連付けることができます。トークンには、その使用をタイムリミットするタイムスタンプも必要です。必要に応じて、トークンを含むリンクを作成することもできます。ユーザーがリンク(トークン)を使用すると、それを無効にして1回限りのトークンを得ることができます。それが必要な場合は、不要になった時点でトークンを無効にします(トークンが1週間または1ヶ月間有効です。その後、再びログインして更新する必要があります)。

このセキュリティを強化するために、TOTPやHOTP、Google認証システムなどのモバイルアプリで簡単に複数の要素を認証​​することができます。こうすることで、たとえ攻撃者がトークンを持っていても、ユーザーのモバイルデバイスがログオンできる必要があります。

もう1つのコントロールは、トークンが侵害されたかどうかをユーザーに知らせるために、最後のログオン時刻とIPアドレス(クライアントIPから派生したクライアントのおおよその場所)を表示することです。

また、トークンの無効化が必要です。あなたのユーザーは、侵害されたと思ったときにトークンを削除することができます。

これは実際には少なくともいくらか安全にするいくつかのコントロールです。

パスワードをクッキーに保存することは非常に安全です。パスワードハッシュをクッキーに保存することは意味がありません。長い(永遠の)セッションは安全ではなく、攻撃者は一度セッションIDを取得する必要があり、最悪の場合、ユーザーは無効にする方法がありません。

関連する問題