本系列導航
安全技術區
前言哎呀,好久沒上來了,先前的計畫也擱淺了一段時間。考試,課程設計,找工作,上不了網,各種問題。今天忙裡偷閒,寫點東西。
使用者名稱列舉和密碼猜測是攻擊
web驗證兩個核心部分。這篇文章只**使用者名稱列舉的一些常見情況。正文
11.1從**的使用者標識獲取使用者名稱
對於部落格,論壇,交友網這樣的**,對於不同的使用者的標識有使用者名稱,id號,暱稱等級種形式,很多時候會很明顯的暴露使用者登入用的使用者名稱。
比較好的辦法是登入名和**的功能操作的使用者標識區分開。下面看校內網的乙個例子。
校內網的使用者id是程式自動和使用者名稱繫結的,而操作的過程用的是id而不是使用者名稱,使用者登入的時候用的是使用者名稱而不是id,這在一定程度上給使用者名稱列舉造成了困難。
11.2內容資訊
很多**是以郵箱登陸的,但個人資訊也有email選項,如果該使用者填寫了,很有可能就是暴露了他的登入使用者名稱。
填寫了可以暴露他的使用者名稱的間接資訊。比如在xx**填寫了的空間鏈結,那麼的登入使用者名稱很可能就是他在xx**的使用者名稱。因為很少有人不斷的更換自己的使用者名稱和密碼。
其他的一些敏感資訊。頁面內的username,uid等關鍵字。
11.3暴力登入探測
(1)登入介面
這是很多軟體常用的方法,利用已有的字典不斷做登入嘗試,根據返回的資訊判斷是否成功。
仍以為例:
我先在登入介面輸入使用者名稱dudu,密碼123,返回密碼錯誤資訊。
我再輸入dudu123456,密碼123,返回使用者名稱不存在資訊。
根據返回資訊的不同,我們可以確定使用者名稱的存在與否。
(2)註冊資訊
我輸入乙個已經存在的使用者名稱,會返回使用者名稱已存在的資訊。這樣就獲得了使用者名稱。
(3)找回密碼資訊
剛才我們說了校內網在防止使用者名稱列舉的安全策略,下面我們再看看它的找回密碼介面。
把我們要探測的帳號輸入,如果錯誤就會返回這樣的錯誤資訊。如果正確呢?
看,連郵箱都給我們顯示出來了。
(5)賬戶鎖定
對於返回錯誤資訊不明顯的頁面我們也可以利用它的賬戶鎖定機制。原因很簡單,賬戶鎖定僅僅針對已經存在的使用者,而對不存在的使用者是不鎖定的。比如126郵箱。但是賬戶鎖定很容易被暴力程式造成拒絕服務攻擊。
11.4 阻止暴力探測的一些方法的**
(1)賬戶鎖定
賬戶鎖定是很有效的方法,因為暴力破解程式在5-6次的探測中猜出密碼的可能性很小。但是同時也拒絕了正常使用者的使用。如果攻擊者的探測是建立在使用者名稱探測成功之後的行為,那麼會造成嚴重的拒絕服務攻擊。對於對大量使用者名稱只用乙個密碼的探測攻擊賬戶鎖定無效。
如果對已經鎖定的賬戶並不返回任何資訊,可能迷惑攻擊者。
(2)返回資訊
如果不管結果如何都返回成功的資訊,破解軟體就會停止攻擊。但是對人來說很快就會被識破。
(3)頁面跳轉
產生登入錯的的時候就跳到另乙個頁面要求重新登入。比如126和校內網都是這樣做的。侷限性在於不能總是跳轉頁面,一般只在第一次錯誤的時候跳轉,但是第一次之後又可以繼續暴力探測了。
(4)適當的延時
檢查密碼的時候適當的插入一些暫停,可以減緩攻擊,但是可能對使用者造成一定的影響。
(5)封鎖多次登入的ip位址
這種方法也是有缺點的,因為攻擊者可以定時更換自己的ip。
(6)驗證碼
剛才mien ng給我說了驗證碼的問題,本來打算在下次說的,既然提了,也感覺該在這裡說一下比較好。驗證碼確實是阻止暴力攻擊的好方法,但設計不好的驗證碼是可以繞過的,這裡也不詳細說。對於特定目標的手工探測來說驗證碼是沒有作用的。
Web安全實踐(11)使用者名稱列舉
本系列導航 安全技術區 前言哎呀,好久沒上來了,先前的計畫也擱淺了一段時間。考試,課程設計,找工作,上不了網,各種問題。今天忙裡偷閒,寫點東西。使用者名稱列舉和密碼猜測是攻擊 web驗證兩個核心部分。這篇文章只 使用者名稱列舉的一些常見情況。正文 11.1從 的使用者標識獲取使用者名稱 對於部落格,...
remoting 安全認證,密碼,使用者名稱
的回覆 伺服器端 namespace remoteserver public string getthescoop string name 配製檔案 type remoteserver.scoop,remoteserver objecturi scoop.soap 客戶端 static void m...
解決啟動WebLogic11g輸入使用者名稱密
windows 2008環境下 真實測試通過 1 修改weblogic的啟動指令碼,即修改startweblogic.cmd,增加如下內容 rem set user and password here.set wls user weblogic set wls pw password linux 環...