信息來源:Freebuf
微軟近期在其漏洞賞金計劃中向一名安全人員頒發(fā)了高達(dá)50000美元的獎金。如此“高貴”的漏洞不免讓人感到好奇。
據(jù)了解,該漏洞可以讓黑客在用戶不知情的情況下劫持用戶賬戶。也就是說,當(dāng)你躺在床上舒舒服服睡個好覺的時候,黑客可能已經(jīng)偷偷潛入了你的賬戶,并且通過賬戶掌握了你的個人信息,用它進(jìn)行金融交易、創(chuàng)建新帳戶、也可能向你的親人好友們進(jìn)行詐騙,甚至進(jìn)行更嚴(yán)重的違法活動。
雖然會造成嚴(yán)重影響,但該漏洞的利用原理卻并不復(fù)雜。發(fā)現(xiàn)它的安全人員指出,該漏洞可以在用戶重置密碼之前,強行猜測出向用戶的電子郵箱或者手機號碼發(fā)送的七位數(shù)密碼,從而對用戶賬戶進(jìn)行訪問。
然而對發(fā)送驗證代碼的HTTP POST請求進(jìn)行分析后發(fā)現(xiàn),密碼在發(fā)送前是加密的,這意味著如果要強行破解密碼,必須先破解加密。
截圖顯示,輸入的1234567代碼在請求中根本不存在。密碼被加密之后才發(fā)送驗證。這樣做的目的是為了防止自動破解工具利用他們的系統(tǒng)。所以,像Burp Intruder這樣的自動測試工具就無法使用,因為他們無法破解加密。
然而,雖然有旨在防止攻擊者自動重復(fù)提交所有1000萬個代碼組合的加密障礙和限速檢查,但該安全人員表示,他最終破解了該加密功能。
但是破解了加密功能,并不意味著攻擊一定能成功。事實上,測試顯示,在發(fā)送的1000個代碼中,只有122個代碼能夠通過,其他代碼以錯誤代碼1211被阻止。
對此安全人員表示,如果所有發(fā)送的請求沒有同時到達(dá)服務(wù)器,自帶的機制就會將IP地址列入黑名單。并且,請求之間的幾毫秒延遲就能讓服務(wù)器檢測到攻擊并阻止它。
從攻擊范圍來看,雖然這種攻擊只在賬戶沒有被雙因素認(rèn)證保護(hù)的情況下有效,但它仍然可以擴展到擊敗兩層保護(hù)并修改目標(biāo)賬戶的密碼。然而,在實際場景中,該攻擊的操作難度并不簡單,攻擊者必須同時發(fā)送安全碼,大約要進(jìn)行1100萬次請求嘗試,才能更改任何微軟賬戶(包括那些啟用2FA的賬戶)的密碼。這樣一來,就需要大量的計算資源以及1000s的IP地址才能成功完成攻擊。
因此,這種攻擊的可行性并不高,普通的攻擊者很難滿足攻擊條件。
在安全人員向微軟報告了這個漏洞之后,微軟很快承認(rèn)了這個問題,并在2020年11月進(jìn)行了處理。