駭客靶場練習(突破登入介面的方法)

本次靶場是Try Hack Me的authenticate https://tryhackme。com/room/authenticate ,翻譯過來是突破驗證,本文會講講幾種突破登入介面的方法。

駭客靶場練習(突破登入介面的方法)

0x01:登入埠暴力破解

破解登入埠最簡單的方法就是抓包載入一個字典爆破看看有沒有使用者能跑出來。這種方法雖然簡單但是成功率是個謎,有時也許admin 123456就進去後臺了有時你把kali上所有字典跑一遍都不一定能成功,這裡只為簡單的演示。

駭客靶場練習(突破登入介面的方法)

這裡Try hack me減輕了難度,給定了一個使用者Jack,只需要爆破其密碼即可。開啟Burp 啟動抓包功能。

駭客靶場練習(突破登入介面的方法)

捕捉到輸入的資訊右擊點send to Intruder裡面把123456密碼段標起來

駭客靶場練習(突破登入介面的方法)

然後點Payloads選擇載入字典這裡的字典我選用的是kali自帶的/usr/share/wordlists/fastattack。txt字典。選擇好以後點選Start attack

駭客靶場練習(突破登入介面的方法)

最後可以透過長度判斷,如果有其中一條跟其它格格不入的多半是它了。最後密碼為12345678。

駭客靶場練習(突破登入介面的方法)

最後登入成功。

駭客靶場練習(突破登入介面的方法)

0x02:重新註冊

重新註冊一般存在於註冊介面主要是欺負系統的邏輯,判斷不出哪個是註冊過的賬號。

駭客靶場練習(突破登入介面的方法)

比如說現在輸入一個已有的賬號名darren重新註冊,密碼隨便設計正常的系統會先拿去後臺檢驗發現該賬號已存在會返回使用者已存在。

駭客靶場練習(突破登入介面的方法)

那此時我們可以嘗試一個新的方法去欺負系統的智商。Darren存在但是不代表空格darren註冊不了。

駭客靶場練習(突破登入介面的方法)

此時點註冊會成功彈回去,這裡用空格darren登入,此時系統判斷不出來哪個是darren畢竟都是一樣的東西。直接把你當成darren放你進去了。

駭客靶場練習(突破登入介面的方法)

0x03:JSON WEB TOKEN

JSON WEB TOKEN簡稱JWT, 是一串比較長的base64加密字串也是比較主流的授權方式之一。主要是用了公鑰和私鑰來生成一個cookie,從而讓系統知道該使用者登入以後要賦予什麼許可權。

先解析一下JWT的組成。下面是一個JWT的例子,JWT由三部分組成以點作為分割。

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9。 eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ。 SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c

一般第一部分稱為header,裡面會包含使用的演算法和token型別。Alg裡面的值可以為RSA, SHA256 之類的甚至是NONE也可以。

比如第一部分解密後為:

{ “alg”: “HS256”, “type”: “JWT”}

第二部分稱為payload,裡面會包含使用者的ID和一些其它個人資訊

解密後為:

{

“sub”: “1234567890”,

“name”: “John Doe”,

“iat”: 1516239022

}

第三部分為簽名主要是確保資料的完整性,一般不會篡改這部分。一般解密後也是串奇怪的字串。

接下來透過一個實際案例看看如何更改JWT部分達到偷換身份效果。

首先輸入一個已知使用者user,點選驗證順便開啟抓包模式可以看到其資料。

駭客靶場練習(突破登入介面的方法)

驗證完點選GO以後看到授權這裡有串JWT 字串,可以複製下來等下解密。

駭客靶場練習(突破登入介面的方法)

點選Forward可以看到彈出歡迎user使用者。

駭客靶場練習(突破登入介面的方法)

先解析下剛才的JWT字串。可以用https://jwt。io/#debugger-io 該網站解析。第一段是加密型別和資訊,第二段有個關鍵詞identity 1。

駭客靶場練習(突破登入介面的方法)

篡改JWT的目的就是為了獲得其它使用者的身份令牌,讓網站賦予更高的許可權。當然不能直接把identity改為其它值,由於第三段是加密套娃所以需要聯動第一段一起改掉。

由於是base64加密那好吧隨便選一個線上的先把HS256改為NONE加密獲得第一段。

駭客靶場練習(突破登入介面的方法)

然後就可改identity的值這裡可以改為0或者2都行

駭客靶場練習(突破登入介面的方法)

第三段不用改,每段加。作為分割最後點GO用Burp抓包以後把原有的JWT字串做替換

駭客靶場練習(突破登入介面的方法)

點選Forward以後可以看到已經變成歡迎管理員而不是guest了。

駭客靶場練習(突破登入介面的方法)