APP測試之找回密碼_測試雜誌
來源:互聯網
上載者:User
在移動互聯時代,每個人的智能手機上都安裝了各種各樣的APP,那我們在使用這些APP的時候都會用到找回密碼這個功能,這個功能極大的方便了使用者,但是如果這個功能沒有做好,或者對於測試工程師來說,如果沒有對這個功能測試好,也會造成一些嚴重的後果,比如,任意使用者密碼重設,使用者資料泄露等一系列安全問題。這個看起來很簡單的功能,卻被開發工程師挖了很多坑,我們一不小心就會掉下去。下面我們就一起探討一下,APP找回密碼這一功能中的那些坑。
APP端的手機找回密碼流程通常如下:輸入手機號-擷取簡訊驗證碼-設定密碼
如下圖:
坑1:驗證碼沒有和手機號綁定
測試過程:找回密碼時,輸入自己的手機號點擷取驗證碼,此時驗證碼會發到自己手機上,輸入擷取到的驗證碼,這個時候再修改手機號為B(B也是註冊使用者),點下一步進行設定密碼。查看是否可以重設成功。實際測試過程中,某些APP竟然可以重設成功。也就是說用自己的手機擷取的驗證碼,重設了使用者B的密碼。這個坑是個明顯的邏輯漏洞,很明顯程式並沒有把驗證碼和手機號進行綁定,只要驗證碼是合法的,就可以重設任意使用者的密碼,一個小小的邏輯錯誤,導致了一個嚴重的後果,如果做為測試人員,沒有測試出這樣的問題,在市場上讓使用者反饋回來,是否會追究我們的責任,這還得看老闆的心情。感覺這樣的開發人員一定和測試有仇,要不怎麼會挖個這樣的坑。
坑2:簡訊驗證碼出現在返回的資料包中
大家都知道,一般我們APP用戶端和伺服器互動走的都是HTTP或者HTTPS協議。對於HTTP協議來說,我向伺服器發送一條請求資訊,那伺服器必返回一條響應資訊。而發送給使用者的驗證碼,竟然也在伺服器返回的資料包中。那意味著任何人都可以擷取到這個驗證碼,有了驗證碼就可以重設密碼。此時驗證碼形同虛設,重設別人的密碼變得如此簡單,你怕不怕。
測試過程:這個測試過程要藉助抓包工具,這樣的工具很多,大家可以隨意選擇。我這裡用的是Fiddler ,首先設定手機代理上網,行動電話通訊應和電腦處於同一個WIFI下面,代理連接埠設定成和Fiddler上和連接埠一致。具體設定教程可自行網上搜尋,設定好後,啟動APP,進行抓包。
... ...
轉自:http://www.51testing.com/html/65/n-3704165.html