国内自拍在线,久久久夜色精品,欧美日韩一区三区,国产黄a三级三级三级看三级男男,aaa一级片,久久久久久久久一区二区三区,中文一区在线

    電話

    0411-39943997

仟億科技
客服中心
  • 電話
  • 電話咨詢:0411-39943997
  • 手機(jī)
  • 手機(jī)咨詢:15840979770
    手機(jī)咨詢:13889672791
網(wǎng)絡(luò)營(yíng)銷 >更多
您現(xiàn)在的位置:首頁(yè) > 新聞中心 > 常見問題

網(wǎng)站制作應(yīng)該了解驗(yàn)證碼的常見漏洞

作者:billionnet 發(fā)布于:2013/10/28 16:49:38 點(diǎn)擊量:

一般而言我們?cè)?a href='http://www.zyhzmj.com' class='keyWord' target='_blank'>網(wǎng)站制作中為了安全起見,都會(huì)在網(wǎng)站后臺(tái)登陸和網(wǎng)站注冊(cè)界面加驗(yàn)證碼功能,那么我們經(jīng)常用到的網(wǎng)站驗(yàn)證碼是不是就是絕對(duì)安全的呢,下面小編就分析一下我們經(jīng)常用到的驗(yàn)證碼的幾個(gè)漏洞。

把驗(yàn)證碼存儲(chǔ)在Cookie中

一般來(lái)說(shuō),我們會(huì)把驗(yàn)證碼的值用Session存儲(chǔ)起來(lái),通過對(duì)比用戶提交的驗(yàn)證碼和Session中的驗(yàn)證碼,就可以知道輸入是否正確。由于Session會(huì)占用服務(wù)器資源,我曾經(jīng)想過是否可以把驗(yàn)證碼的值加密后存儲(chǔ)在Cookie中。不過事實(shí)證明,這只是異想天開罷了。

假設(shè)驗(yàn)證碼的值是a,通過sha1加密后得到的值為b = sha1(a),并且把b存儲(chǔ)在Cookie中。而用戶提交的驗(yàn)證碼值為c,通過判斷sha1(c)是否與b相等,可以知道輸入的驗(yàn)證碼是否正確。然而,Cookie是受客戶端控制的。如果用戶事先通過肉眼看到驗(yàn)證碼的值是a,又從Cookie中得知此時(shí)的加密值為b,那么,他只要在提交前把Cookie的值修改為b,提交的驗(yàn)證碼值為a,就可以永遠(yuǎn)通過驗(yàn)證。

沒有進(jìn)行非空判斷

這種情況可以直接用代碼來(lái)說(shuō)明:

if (Request["captcha"] == Session["captcha"] as string)
{
    // 驗(yàn)證通過,繼續(xù)操作
}

假設(shè)用戶繞過了系統(tǒng)提供的表單直接提交數(shù)據(jù),此時(shí)驗(yàn)證碼還沒生成,Session["captcha"]為空。用戶不提交驗(yàn)證碼時(shí),Request["captcha"]也為空。于是,驗(yàn)證通過了。

 要解決這個(gè)問題,其實(shí)只要加個(gè)非空判斷就可以了:

if (!String.IsNullOrEmpty(Request["captcha"]) &&
    Request["captcha"] == Session["captcha"] as string)
{
    // 驗(yàn)證通過,繼續(xù)操作
}

沒有及時(shí)銷毀驗(yàn)證碼

使用驗(yàn)證碼要遵循一個(gè)原則,在一次比對(duì)之后,無(wú)論用戶輸入正確與否,都要立刻將驗(yàn)證碼銷毀。

如果不這樣做,就可以出現(xiàn)以下情況:

  • 假設(shè)用戶輸入錯(cuò)誤,且驗(yàn)證碼沒有重新生成,那么他就可以一直嘗試,直到正確為止。雖然機(jī)器對(duì)圖片的一次性識(shí)別率比較低,但是,如果同一張圖片你給它無(wú)限次機(jī)會(huì)的話,它還是可以識(shí)別出來(lái)的。
  • 假設(shè)用戶輸入成功,且驗(yàn)證碼沒有銷毀,那么在Session過期之前,他就可以一直用這個(gè)驗(yàn)證碼通過驗(yàn)證。

以上是仟億科技小編總結(jié)的關(guān)于網(wǎng)站驗(yàn)證碼幾個(gè)常見漏洞的,如果那里有說(shuō)的不完善的地方可以自己補(bǔ)充。



分享到:


Copyright@ 2011-2016 版權(quán)所有:大連千億科技有限公司 遼ICP備11013762-3號(hào)   google網(wǎng)站地圖   百度網(wǎng)站地圖   網(wǎng)站地圖

公司地址:大連市沙河口區(qū)中山路692號(hào)辰熙星海國(guó)際2317 客服電話:0411-39943997 QQ:2088827823 37482752

法律聲明:未經(jīng)許可,任何模仿本站模板、轉(zhuǎn)載本站內(nèi)容等行為者,本站保留追究其法律責(zé)任的權(quán)利! 隱私權(quán)政策聲明