被小夥伴們蠢哭了的那些事兒:找回密碼篇

鄭昀 建立於2014-01-12;html

最後更新於2014-01-13.shell

 

找回密碼功能是漏洞傳統重災區,下面列出兩個經典錯誤點,請引覺得戒吧Web開發工程師們!安全

  • Web安全:服務器

    • 一)覺得用戶不會抓包不會看源碼不會分析表單參數,HTML文檔和表單裏想寫啥就寫啥函數

      • 1)某手網:測試

        • +手機App的忘記密碼功能:加密

      • 2)PPS:htm

        • +網頁版忘記密碼功能:

          • 貼心地實現了「從新發送找回密碼郵件」功能;可是,不幸地在這個GET請求的URL裏,目標email參數是明文的;從而能夠將任意用戶的密碼重置郵件發給指定郵箱;

          • 找回密碼篇-案例2-圖1

          • 找回密碼篇-案例2-圖2

      • 3)新網互聯:

        • +網頁版忘記密碼功能:

          • 頁面雖然展現的是星號遮擋的郵箱地址,但HTML文檔構造的表單參數裏卻使用郵箱明文,最終致使土豆網域名被劫持;

          • 找回密碼篇-案例3-圖1

          • 找回密碼篇-案例3-圖2

          • 找回密碼篇-案例3-圖3

      • 4)搜狐:

        • +網頁版找回密碼功能:

          • 找回密碼時要回答「密碼提示問題」;可是工程師把答案明文寫在 textarea 控件的JS校驗函數裏了,致使能夠重置任意搜狐用戶密碼;

          • 找回密碼篇-案例4-圖1

    • 二)把MD5(key)加密當成神器,卻不知在MD5爆破庫面前等於說明文傳遞

      • 1)奇虎360:

        • +網頁版找回密碼功能:

          • 360的找回密碼郵件裏,重設密碼地址格式爲:http://i.360.cn/findpwd/setpwdfromemail?vc=%一個MD5加密串%&u=blabla%40gmail.com;

          • 利用MD5爆破庫逆向解密後發現,這個MD5加密串是一個相似於1339744000的數字,很像是UNIX時間戳

          • 白帽子進一步驗證後猜想,用戶找回密碼時,系統將此時的UNIX時間戳,與賬號綁定,記錄在密碼重置隊列裏,修改該用戶的密碼時會驗證輸入的vc參數;

          • 看似合理,但360工程師忽略了一個細節:假如這個時間戳是新生成的,攻擊者就能在必定時間段內進行暴力破解,給定任意郵箱,很快就能算出一個有效的重置密碼連接;

          • 找回密碼篇-案例5-圖1

      • 2)某牛網:

        • +註冊激活郵件功能:

          • 註冊某牛網後,系統發的註冊郵件裏,激活URL裏id參數其實是用戶的userid,str參數則是MD5(id)加密串,以下圖所示;

          • 這樣能註冊任意郵箱並激活,或遍歷全部整數id激活;

          • 找回密碼篇-案例6-圖1

          • 找回密碼篇-案例6-圖2

          • 補充案例:絕非個案。中國郵政旗下某站點的找回密碼也這麼銷魂過,http://www.wooyun.org/bugs/wooyun-2013-039383

 

參考資源:

1,2011,陳皓,你會作Web上的用戶登陸功能嗎?

2,2013,烏雲知識庫,密碼找回功能可能存在的問題

3,2013,鄭昀,Web開發基本準則-55實錄-Web訪問安全

-over-

 

馬年繼續贈圖幾枚:

不要在地毯上剎車啊

http://ww1.sinaimg.cn/bmiddle/62037b5ajw1ec0lxccvrbg20a305ve83.gif

讓老闆覺得你在上班的神器:http://targetkiller.net/hackertyper/index.html

 

通 病啊通病:『據一位騰訊電商的前產品經理透露,騰訊電商的產品經理、工程師更執着於測試網購流程、響應速度等,但願可以減小步驟提高體驗,卻忽略了須要 更強大技術支持的供應鏈、物流等業務體系。』注意力過於集中於C而不是B和I——《騰訊電商門前摔了一跤:「QQ+」模式失效http://t.cn/8FhPSQv

http://ww2.sinaimg.cn/mw1024/62a92ba0gw1ecbx735thuj20np0slwiv.jpg

相關文章
相關標籤/搜索