No.4ベストアンサー
- 回答日時:
こんにちは。
攻撃者等に対しての対策も考えていたのですね。
そうすると確かにセッションを切り替えられて試行された場合は
規定回数に達することが出来ず(ロックフラグを立てる処理が出来ない)
何回も試行できちゃいますね。
ログイン、パスワード保存ファイルがどのような仕様で格納されてるかわかりませんが
ログインID,パスワード,試行回数,ロックフラグ
というような1レコードにして
ログイン処理一回毎にNGであった場合、試行回数を加算していき指定回数に達したらロックフラグを立てるようにすればセッションも関係なくなります。
2回目とかで認証OKだった場合は、試行回数を0にすることを忘れないで下さいね。
次のログイン時の最大試行回数が減っていっちゃいます。
No.6
- 回答日時:
回答と言うより、質問になってしまうかもしれませんが、関連したことで疑問点があるので書かせてください。
このログインをロックするシステムは、第三者からの特定のユーザのログインをロックにするような攻撃が考えられないでしょうか。
まぁ。情報を盗まれるわけではないですし、いたずら程度かもしれませんが。
コミュニティサイトのようなユーザIDを公開するサイトで無ければ、問題は無いでしょうか。
この回答への補足
当然、それはあると思います。
この場合は、ログ等からアクセス元を判断し、アクセス制御する運用になるかと思います。
正規ユーザに対しては、ログインIDの変更等をお願いする形になるかもしれません。
一般的にはどうしているんでしょうか?識者の方々、回答をお願いします。
No.5
- 回答日時:
No3の返信です。
もし1の場合は、ログイン失敗時ユーザIDなど書いてあるファイルとは別ファイルにIPアドレス、ログイン失敗回数を書き込みます。
ログイン認証する前にこのファイルをチェックしてIPアドレスと一致しなければ認証をします。
一致していてログイン失敗回数が3ならロック処理をします。2以下なら認証をし失敗だったらこのファイルに失敗回数を足します。
この場合ネット接続状況によってはIPが固定じゃないので微妙なところではあるんですがね^^;
No.3
- 回答日時:
まず、ロックをかけるということですが
ロックをかける条件として
1.ログインを複数回失敗したPCからのログインをロック
2.ログインを複数回失敗したユーザIDをロック
どちらでしょうか?
とりあえず2の場合と仮定して説明します。
3回ログイン失敗したらロックをかける場合、
(1)ファイル(ユーザID、パスがあるファイル)にログイン失敗回数を追加します(初期値として0を設定)。
(2)ログイン認証する前に失敗回数を見て3ならロック処理(他のページに飛ばすなりエラーメッセージを出す)、
2以下ならユーザIDとパスの認証。
(3)ログイン失敗時にユーザIDの失敗回数を1足します
(3)ログイン成功時に失敗回数の初期化(0にする)を行います
これで実現可能だと思いますよ。
No.2
- 回答日時:
こんにちは。
スクリプトを全部かくわけにもいかないので大まかな処理手順の一例を
保存ファイルにロックフラグを追加する。
例)UserId,Password,LockFlg
ログイン処理(認証をかける)スクリプトでNGだった場合、セッションに間違え回数を記録する。
また、すでにそのIDに対してロックフラグが立っていた場合はエラーメッセージ等を表示
間違え回数を判断し、指定の回数まで達していたらログインIDとパスワードが保存されているファイルのそのログインIDに対するLockFlgにフラグを立てる
ロックされてしまった旨を表示
後は別のスクリプトにてロック状態を切り替える管理用ページを作っておけば
簡単にロック解除や強制的にロック等できると思います。
この回答への補足
回答ありがとうございます。
この場合は、間違い回数はセッションごとにカウントしますが、ロックフラグは全セッションで共有するということでしょうか?
例えば、攻撃者がセッションを切り替えながら(webブラウザを立ち上げなおしながら?とか)、ログインを試みた場合は、ロックができないことになるのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(セキュリティ) アカウントの乗っ取りで質問です。長いです。 先月ツイッターの乗っ取りにあい、アカウントを全て新しくし 2 2022/03/25 20:47
- その他(セキュリティ) Facebookアカウントを乗っ取られ、ログインも出来ずパスワードの再設定もできずに困っている 2 2023/02/17 14:24
- セキュリティホール・脆弱性 不正ログインされました。対応を教えてください 1 2023/06/22 21:42
- iPad iPad air3 TouchID パスコード 2 2023/04/28 15:31
- Google+ Googleアカウントにログインせずにパスワードを確認する方法を教えて下さい。 間違えてChrome 2 2023/07/07 20:52
- その他(コンピューター・テクノロジー) 下に書いたの条件でgoogleアカウントの復旧方法等を教えてください。 1 2023/02/06 23:32
- UNIX・Linux Ubuntu on Xorgのログインについて 2 2023/08/10 15:16
- Chrome(クローム) 入力フォームの履歴を消したい 2 2023/06/29 13:02
- その他(ソフトウェア) YahooのIDがロックされてしまいました 1 2022/11/25 19:49
- ニュース・地域情報 Yahooメールについて 1 2023/05/26 21:13
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ドコモの携帯サイトをPCから見...
-
戻るボタンで、ログイン中を維...
-
Windowsでログインする時に入力...
-
MAC版DW8 ログインパスワードの...
-
2重ログインのチェック
-
PHPからWindowsログインユーザ...
-
ヤフオクアプリをスマフォにD...
-
ログイン状態が切れないように...
-
ログイン履歴
-
自分の証券システムにログイン...
-
basic認証ログイン画面をHTML...
-
【php】会員登録ログイン時シス...
-
c# 文字列の最後から1文字削除...
-
同じソリューション内の別のプ...
-
Accessの画面更新を一時的に停...
-
VB.netでボリュームレベルメー...
-
getParameterで値が取得できず...
-
submitボタンにvalue属性の値で...
-
リンクでPOSTデータを送信する...
-
ブラウザの×(閉じる)ボタンの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAでHTTPログイン
-
PHPからWindowsログインユーザ...
-
特定の端末からのみWebシステム...
-
セッション管理について(同時...
-
戻るボタンで、ログイン中を維...
-
勝手にログアウトされてしまい...
-
ログインフラグがわかりません。
-
3dsのyoutubeにログインできな...
-
青い枠のみのHTML
-
INPUTにnameがない場合のsubmit
-
Windowsでログインする時に入力...
-
フォーム認証でのパスワードロック
-
XMLHTTPを用いて認証が必要なUR...
-
2重ログインのチェック
-
教えてgooログインについて
-
「次回から自動的にログイン」...
-
エクセルVBAでサイトログイン
-
VBからローカルサーバーにログイン
-
ASPを使用してActiveDirectory...
-
phpmyadminでDBが作成できない。
おすすめ情報