OWASP-Hackademic-Challenges

落落的学习發表於2024-05-19

1.靶場安裝

靶場下載:https://code.google.com/archive/p/owasp-hackademic-challenges/downloads
在phpstudy中搭建即可
訪問頁面:
image

2.OWASP Hackademic Challenge – Challenge 1

2.1.解題

image

點選連結,進入靶場
image

頁面上沒有什麼有用的訊息,檢視頁面原始碼(Ctrl+U)
image

可以找到不同顯示頁面的資訊:white,rabbit,輸入進入系統
image

點選檢視各功能點,提示說明我們需要找到這5 special clients
image

開啟burp suite代理
image

透過代理,可以看到該網站下存在secret_area_路徑(中文:隱藏區域),訪問該路徑
注意:phpstudy預設不允許目錄索引,在網站管理->修改->高階配置,開啟目錄索引
image

訪問secret_area_路徑後,出現了txt文件,檢視獲得敏感資訊
image

image

根據題目描述:The only thing we remember is that he was hired on Friday the 13th!
獲得目標郵件地址:Jasson Killer Friday13@JasonLives.com
傳送郵件
image

image

2.2.總結

  1. 密碼和口令被放在了網頁原始碼中,資訊洩露,有的開發者也會將賬號密碼直接預設顯示在登入框中;
  2. 在secret_area_目錄存在目錄遍歷的問題,導致能夠直接獲取該目錄下的所有檔案。

3.OWASP Hackademic Challenge – Challenge 2

3.1.解題

image

根據題目,需要找到密碼,點選連結
image

頁面沒有什麼可用資訊,檢視頁面原始碼
分析程式碼,知道:密碼提交的時候呼叫了方法-GetPassInfo(),找到對應的方法,知道是透過該方法進行加密
image
image

此段程式碼,定義了金鑰:givesacountinatoap lary
透過下面的方式對 Wrong 字串進行解密:var Wrong = (d+""+j+""+k+""+d+""+x+""+t+""+o+""+t+""+h+""+i+""+l+""+j+""+t+""+k+""+i+""+t+""+s+""+q+""+f+""+y)
將此段js程式碼執行:https://jsrun.net/new
image

將結果進行登入
image

3.2.總結

  1. 此程式碼將加密操作寫入了JavaScript中,導致加密過程暴露;
  2. 前端的資訊都是不安全的,不要將敏感的資訊寫入前端。

4.OWASP Hackademic Challenge – Challenge 3

4.1.解題

image

根據題目,此處是XSS漏洞
image

根據頁面顯示,沒有做任何保護,直接輸入payload:<script>alert("XSS!");</script>
image

5.OWASP Hackademic Challenge – Challenge 4

5.1.解題

image

根據頁面提示,本次做了一些保護,需要繞過:繞過方法(不限)

透過CharCode來繞過,payload:<script>alert(String.fromCharCode(88,83,83,33))</script>
image

5.2.總結

利用場景:

  1. 盜取使用者賬號密碼等個人敏感資訊,如機器登入賬號、使用者網銀賬號、各類管理員賬號;
  2. 控制企業資料,包括讀取、篡改、新增、刪除企業敏感資料;
  3. 盜竊企業重要的具有商業價值的資料;
  4. 非法轉賬;
  5. 強制傳送電子郵件;
  6. 網站掛馬;
  7. 控制受害者機器向其他網站發起攻擊。

防禦總體思路:對輸入(和 URL 引數)進行過濾,對輸出進行編碼。
也就是對提交的所有內容進行過濾;然後對動態輸出到頁面的內容進行 html 編碼,使指令碼無法在瀏覽器中執行。

6.OWASP Hackademic Challenge – Challenge 5

6.1.解題

image

檢視頁面原始碼沒有什麼有用資訊
根據頁面顯示,必須使用 p0wnBrowser 瀏覽器訪問,可以嘗試使用該瀏覽器的UA頭進行訪問
image

6.2.總結

本題中,只透過 UA 頭來判斷是否透過設定的瀏覽器進行訪問。

7.OWASP Hackademic Challenge – Challenge 6

7.1.解題

image

檢視網頁原始碼,發現有一段 url 編碼的程式碼,進行解碼,發現了一段有用的程式碼
image
image
image

密碼需要呼叫 GetPassInfo() 函式,該函式中指定了值:easyyyyyyy!
image

8.OWASP Hackademic Challenge – Challenge 7

image

8.1.解題

image

檢視頁面原始碼,發現原始碼中有一個路徑:index_files,訪問
image

檢視 lastlogin.txt 檔案
image

從本頁面可知,Irene 是有效賬戶,輸入
image

從題目知道,需要管理員登入,抓取該頁面資料包:
image

Cookie 欄位有 Userlevel,是 user 級別,將其修改為 admin
image

8.2.總結

  1. 需要做嚴格的許可權校驗,而不僅僅只是透過 Cookie 頭中的值;
  2. 目錄頁面做好檔案訪問許可權,保證網站上不會出現目錄遍歷等情況。

9.OWASP Hackademic Challenge – Challenge 8

image

9.1.解題

image

本題需要提權為 root 許可權,透過 help 命令,檢視到能執行的命令:ls、whoami、id、helo、su
su 是用來切換使用者的,那麼剩餘有用的命令就是 ls
image
image

出現了兩個檔案,當前頁面是 index.php,那麼訪問另一個檔案
image

出現了一串加密的程式碼,根據該檔案命名是 b64,猜測是透過 base64 編碼的,解碼後,獲得 root 的賬戶密碼,然後登入
image
image

9.2.總結

透過編碼來實現安全性是不可取的:

  1. 不要把敏感檔案包含在檔案系統中供使用者訪問;
  2. 或者不允許使用者提示其許可權。

10.OWASP Hackademic Challenge – Challenge 9

image

10.1.解題

image

根據題目資訊,需要將 http://www.really_nasty_hacker.com/shell.txt 這個連結包含的後門寫入網站
抓取提交備註(Comment)的資料包
image

將 payload 透過 source 執行,失敗
payload1:
payload2:
image

嘗試透過 UA 頭執行 payload,成功
image

訪問後門:tyj0rL.php
image

檢視當前目錄下有什麼檔案
image

訪問:sUpErDuPErL33T.txt 和 adminpanel.php
image
image

透過獲取到的賬戶密碼登入:Admin/teh_n1nj4_pwn3r
image

11.OWASP Hackademic Challenge – Challenge 10

image

11.1.解題

image

檢視頁面原始碼:有一個隱藏的輸入框
image

F12 將 type="hidden" 刪除
image

在 False 框中,將值修改為 True,回車
然後會彈出一個框
image

對編碼進行 URL 解碼:
image

頁面點選確認後,會訪問新的頁面,輸入 From 和 Serial Number(剛才解碼的字串)
image

這裡彈出密碼錯誤可能是原始碼的問題,不重要,點選確定後顯示成功
image

11.2.總結

  1. 前端設定的 type="hidden",並不能真的隱藏,只是不會顯示,檢視原始碼中仍然存在;
  2. 敏感的資訊(本題是序列號),應採用負責的加密方式。