1. 程式人生 > 其它 >Lab: Modifying serialized data types 修改序列化的資料型別

Lab: Modifying serialized data types 修改序列化的資料型別

靶場內容:

本實驗使用基於序列化的會話機制,因此容易繞過身份驗證。解決實驗室,編輯會話cookie中的序列化物件以訪問該administrator帳戶。然後,刪除carlos。

您可以使用以下憑據登入自己的帳戶: wiener:peter

靶場解析

  • 這個靶場的關鍵知識點在於PHP中的 == 弱比較
  • 使用您自己的憑據登入。在 Burp 中,開啟登入後GET /my-account請求並使用 Inspector 檢查會話 cookie 以顯示序列化的 PHP 物件。將此請求傳送到 Burp Repeater。
  • 在 Burp Repeater 中,使用 Inspector 面板修改會話 cookie,如下所示:
    • 將username屬性的長度更新為13。
    • 將使用者名稱更改為administrator.
    • 將訪問令牌更改為整數0。由於這不再是一個字串,您還需要刪除圍繞該值的雙引號。
    • 更新更換令牌訪問的資料型別的標籤s用i。
    • 結果應如下所示:
      O:4:"User":2:{s:8:"username";s:13:"administrator";s:12:"access_token";i:0;}
  • 這樣修改的目的是斷定token的字串開頭不是以數字開頭的,這樣 0=="dhufashfosf" 返回的都是ture,如果不是,再做修改即可
  • 單擊“應用更改”。修改後的物件將在請求中自動重新編碼和更新。
  • 傳送請求。請注意,響應現在包含一個指向管理面板的連結/admin,表明您已以administrator使用者身份成功訪問該頁面。
  • 將您的請求路徑更改為/admin並重新發送。請注意,該/admin頁面包含刪除特定使用者帳戶的連結。
  • 將請求的路徑更改為/admin/delete?username=carlos併發送請求以解決實驗室。

本文來自部落格園,作者:{Zeker62},轉載請註明原文連結:https://www.cnblogs.com/Zeker62/p/15174777.html