**1. Certificate** - Đầu tiên khi truy cập vào trang web ta có thể thấy 3 dòng input có thể nhập được khi nhập input sẽ in ra certificate với tên mà mình nhập vào, cộng thêm với Description của challenge là tìm certificate của Eth007 nên em đã thử nhập tên Eth007 nhưng đã bị filter và preview ra REDACTED bởi hàm này ![image](https://hackmd.io/_uploads/S1-43_Wsxg.png) ![image](https://hackmd.io/_uploads/Bymt3u-ill.png) - Sau khi lục trong source code của challenge thì e tìm thấy 1 cái khá giống flag nhưng nhập vào thì không phải flag đúng ![image](https://hackmd.io/_uploads/HyGC2dWsgl.png) Khi ta thay đổi name thì flag cũng thay đổi - Trong script của chall thì e tìm được một hàm tính ra flag dựa theo name --> nếu truyền vào tham số Eth007 thì sẽ lấy đc flag ![image](https://hackmd.io/_uploads/B1cTqOboxg.png) --> flag ictf{7b4b3965} ![image](https://hackmd.io/_uploads/rJbJ0ubigx.png) **2. imaginary-notes (100pts)** - Tóm tắt Description của chall ta có + *Web sử dụng Supabase* + *User là admin* + *Database Users* + *Và Secret được giấu ở đâu đó trong web??* -> Sau khi kham khảo docs về Supabase Javascript thì biết được muốn truy cập vào db thì phải cần tới Url và Key của db ở dạng jwt -> Tiếp tục tìm kiếp bằng cách Ctrl F từ khóa "ey" trong các file js của chall ![image](https://hackmd.io/_uploads/SkkpztWolg.png) Sau một lúc tìm kiếm thì ta đã tìm ra supabase url và key ở file js page -> Đên đây thì chỉ cần viết script connect tới supabase truy cập vào database users và truy vấn tới username admin để lấy password cũng là flag của bài này ![image](https://hackmd.io/_uploads/BJ34WtZoxg.png) Flag (password): ictf{why_d1d_1_g1v3_u_my_@p1_k3y???}