注册刷短信验证码的问题
2019獨(dú)角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>
由于目前的項(xiàng)目是比較老舊的PHP代碼,而且沒(méi)有用到開(kāi)放的一些PHP開(kāi)發(fā)框架,全都是最基礎(chǔ)的代碼碼起來(lái)的。 最近遇到有在刷注冊(cè)的短信驗(yàn)證碼,于是加上了圖片驗(yàn)證碼,但是并沒(méi)有達(dá)到預(yù)期的效果,也一直沒(méi)有想通為什么圖片驗(yàn)證碼沒(méi)有阻止刷短信,邏輯上是沒(méi)有問(wèn)題的,在發(fā)送短信驗(yàn)證碼的時(shí)候必須判斷圖片驗(yàn)證碼是否正確。 今天看了nginx的訪問(wèn)log,看到了一些訪問(wèn)代理agency的記錄,突然冒出了一個(gè)想法,既然人家是機(jī)器刷短信,那么很可能就在訪問(wèn)參數(shù)的判斷不夠明確。假設(shè)兩個(gè)參數(shù)都是空的情況也可能會(huì)發(fā)生,也就是說(shuō)人家訪問(wèn)了注冊(cè)頁(yè)面但是沒(méi)有cookie沒(méi)有生成session,如果沒(méi)有驗(yàn)證碼參數(shù),那么$_SESSION['valicode'] != $data['imgCode']就沒(méi)有意義了。 所以突發(fā)奇想的就加上了判斷兩個(gè)參數(shù)是否為空的情況。 其實(shí)如果項(xiàng)目是用一個(gè)比較流行的框架來(lái)做開(kāi)發(fā),那么這樣的低級(jí)問(wèn)題就不會(huì)遇到發(fā)生了。
if (empty($_SESSION['valicode']) || empty($data['imgCode']) || $_SESSION['valicode'] != $data['imgCode']) {//圖片驗(yàn)證碼
轉(zhuǎn)載于:https://my.oschina.net/qingtianjun/blog/818648
總結(jié)
以上是生活随笔為你收集整理的注册刷短信验证码的问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: centos 安装部署 zabbix3
- 下一篇: ftp.listfiles()卡住,不报