[請益] 密碼錯誤三次執行人機驗證

看板PHP作者 (巨蟹)時間9年前 (2015/01/20 10:31), 編輯推噓4(4031)
留言35則, 8人參與, 最新討論串1/1
不好意思,小弟又來了 最近在研究自己的專題 本身寫網頁也有3年了吧 實力普普,這個專題想做深入一點 也是一個網站 - 想請問 我的使用者登入 為增加使用者體驗 在密碼錯誤三次後才會要求輸入驗碼進行人機驗證 關於 "三次之後"這個步驟該怎麼做比較好? 我用session存錯誤次數 但使用者清除cookie之後就可以繞過... 想在資料庫存ip跟user agent的logs 但這兩個資料都可以偽造 到頭來還是防君子不防小人 請大家指教,謝謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.50.144 ※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1421721065.A.169.html

01/20 10:53, , 1F
可以了,專心達到功能就好
01/20 10:53, 1F

01/20 10:54, , 2F
沒有絕對安全,只有「夠安全」。就跟C語言初學者一樣,
01/20 10:54, 2F

01/20 10:54, , 3F
沒有「無限大陣列」,只有「夠大的陣列」。
01/20 10:54, 3F

01/20 11:53, , 4F
很好奇偽造 IP,response 怎麼傳回去?
01/20 11:53, 4F

01/20 13:53, , 5F
不會有永遠,只會有目前…
01/20 13:53, 5F

01/20 13:54, , 6F
不然大家直接用一個寫法就好啦
01/20 13:54, 6F

01/21 13:14, , 7F
直接在資料表 user 加上 retry 次數和 expire time 呢?
01/21 13:14, 7F

01/21 13:14, , 8F
反正驗證帳密通常都要查 db ,查到 retry 次數三次以上
01/21 13:14, 8F

01/21 13:15, , 9F
加上還沒過期就再跳個驗證碼輸入框,多一個步驟也不過份
01/21 13:15, 9F

01/21 13:16, , 10F
然後密碼正確再把 retry 歸零就好了。
01/21 13:16, 10F

01/21 13:17, , 11F
查 db 是驗證帳密的時候查的,所以也沒浪費 db 查詢的時
01/21 13:17, 11F

01/21 13:17, , 12F
間。
01/21 13:17, 12F

01/21 13:18, , 13F
不過我的方法 retry 是綁在帳號上的,如果他一直試不同
01/21 13:18, 13F

01/21 13:18, , 14F
的帳號的話就不適用了。
01/21 13:18, 14F

01/21 15:22, , 15F
這個很實用,設計帳密資料表一起把登入行為考慮進去。
01/21 15:22, 15F

01/22 00:46, , 16F
感謝大家的建議!,我在考量效能跟使用性還有安全性再
01/22 00:46, 16F

01/22 00:46, , 17F
來想想要不要改
01/22 00:46, 17F

01/22 23:25, , 18F
圖片驗證避不掉嗎?算個微積分XDDD
01/22 23:25, 18F

01/23 00:41, , 19F
呵,微積分嗎?突然覺得不想登入了...
01/23 00:41, 19F

01/23 01:47, , 20F
我一直很欣賞這種設計 http://i.imgur.com/T2akgu4.jpg
01/23 01:47, 20F

01/23 01:47, , 21F
不知道有沒有什麼潛在的問題
01/23 01:47, 21F

01/23 10:53, , 22F
呵,會不會色盲會無法登入啊?
01/23 10:53, 22F

01/23 22:56, , 23F
這是Joomla的留言板套件裡面送的,直接的問題有一個
01/23 22:56, 23F

01/23 22:59, , 24F
他會有6:2這種題目 不知為何畫不出÷也不用/讓人看不懂
01/23 22:59, 24F

01/23 23:00, , 25F
但是自己改寫一下應該就可以
01/23 23:00, 25F

01/25 07:18, , 26F
有的國家確實是用 : 代表除
01/25 07:18, 26F

01/25 07:19, , 28F
In some non-English-speaking cultures, "a divided by b"
01/25 07:19, 28F

01/25 07:19, , 29F
is written a : b.
01/25 07:19, 29F

01/25 07:20, , 30F
萊布尼茲似乎也是這個用法的愛用者
01/25 07:20, 30F

01/25 07:23, , 31F
÷號好像還有一個問題是有的時候它是減的意思
01/25 07:23, 31F


01/25 07:25, , 33F
所以應該不是因為畫不出來而是可能會有誤會的關係
01/25 07:25, 33F

01/26 10:54, , 34F
畫個 / 不就沒事了
01/26 10:54, 34F

03/20 20:36, , 35F
如果我來破解的話..有字的地方塗黑..全塗完後..OCR..解析
03/20 20:36, 35F
文章代碼(AID): #1KlRtf5f (PHP)