UMDCTF đã làm mình lú như thế nào :V
Đã lâu ae bọn tui không chơi với nhau, chắc tầm 3-4 giải gì đó :V Cụ thể là do t kém quá T_T
Có mấy bài đã không giải được, xin nhỗi mn nhiều lắm :/
Web1: Terps ticketing system
Cứ thử login với account bất kì xem, có vẻ không có chỗ đăng kí nên tui sẽ test xem có lỗi j khôngYeb, có vẻ nó cho vô luôn
Để ý kĩ một chút là mọi người sẽ thấy tham số num đang nhận giá trị 617, tui tự hỏi nó có phải là IDOR không :v thử thay đổi sang 0 nào
Thể là tui ăn được flag
Web2: pop calc
tôi tự hỏi liệu mình có khai thác được gì từ nó không. Có vẻ là một chiệc máy tính lỗi :D
thử {{7*7}} và boom
Lúc đầu tui cũng nghĩ nó là jinja nhưng test twig thử và bị bonk đây một lúc :>
cuối cùng vẫn là jinja thôi :D
rce đơn giản
payload: cycler.__init__.__globals__.os.popen('id').read()
xin lỗi người anh em. Đọc flag bình thường thôi
nó đã bị lỗi gì gì đó :v trông khả nghi vcl để ý thanh url một chút :v Ta thấy có từ latex, input của chúng ta được chuyển thành base64. Có lẽ là lỗi latex injection :>
Mình kiếm payload trên mạng và gặp hơi nhiều vấn đề, một số từ bị filter như read,write,input,..
m
Sau khi hỏi chatgpt cộng với một chút fuzz mình đã có thể lập được payload
mình sẽ giải thích ở đây, \begin{document} là lệnh bắt buộc đọc tài liệu trong latex
\end{document} là lệnh để kết thúc khi đọc xong :b
do input đã bị lọc, theo latex ^^69 là kí tự được mã hóa theo quy tắc của nó, khi gặp các kí tự kiểu này, latex sẽ tự động giải mã bằng cách lấy ascii kí tự tiếp theo và trừ đi 64 -> i
vậy là đọc thành công. T_T
thx mn đã đọc
talex
Nhận xét
Đăng nhận xét