picoCTF 2023 Java Code Analysis
本題有超過 20 個 Java 程式,根本看不完。
查看 README.md 發現程式由 BookShelf Base Server 改寫而成。
可先下載 Source Code,用 git 比對哪些程式改過,最後只有 4 個程式要看。
比對程式
BookShelfConfig
沒什麼特別,一些初始設定而已。
ReauthenticationFilter
和 UserSecurityDetails
似乎讓使用者能認證自己之類,沒看懂。
SecretGenerator
負責 JWT 的 Secret,他只放 1234,因此可偽造 JWT Token。
偽造 JWT
JWT 沒存在 Cookie。
貼上 token 可進入 Admin Panel,但不知為何無法看 Flag,test 帳號也顯示 Free Role,無法修改。
可能是沒用正常方式登入,詳細情況需看 code。
但能用正常方式提升別的 user 權限,用 user 登入就能看 flag。