Wednesday, October 17, 2018

[Writeup] PicoCTF2018 - Web

Inspect Me - Points: 125 

- Bài này vào view source ta sẽ có 1/3 flag sau đó click vào mycss.css ta sẽ có được nửa flag còn lại.

Flag: picoCTF{ur_4_real_1nspect0r_g4dget_b4887011}

Client Side is Still Bad - Points: 150

- View source ta sẽ có được hàm check pass và thấy rằng flag đã bị tách ra làm nhiều hàm so sánh và bị viết ngược từ dưới lên. Copy ra và xếp lại cho đúng thì mình có được flag.

Flag: picoCTF{client_is_bad_9117e9}

Logon - Points: 150

- Dùng burpsuite khi đăng nhập ta sẽ thấy cookie có biến Admin = False vậy ta sửa lại bằng True thì sẽ có flag

Flag: picoCTF{l0g1ns_ar3nt_r34l_aaaaa17a}

Irish Name Repo - Points: 200

- Một bài sql injection cơ bản. Để login vào admin, mình dùng username đơn giản nhất là: admin' --và có được flag.

Flag: picoCTF{con4n_r3411y_1snt_1r1sh_c0d93e2f}

Mr. Robots - Points: 200

- Robots? Ý đề bài là file robots.txt? Mình thử truy cập: http://2018shell2.picoctf.com:60945/robots.txt và có được thông tin về file: /65c0c.html sau khi truy cập http://2018shell2.picoctf.com:60945/65c0c.html mình có được flag.

Flag: picoCTF{th3_w0rld_1s_4_danger0us_pl4c3_3lli0t_65c0c}


No Login - Points: 200

- Câu này nếu dùng Burp để ý khi nhấn vào hàm Flag, ta sẽ có Cookie để trống và session là dòng not admin... thì ta chỉ cần xoá session và thêm admin vào sau cookie sẽ được flag.



Flag: picoCTF{n0l0g0n_n0_pr0bl3m_3184f702}

Secret Agent - Points: 200

- Bài này nếu ta bấm vào function Flag ta sẽ có thông báo You're not google! Và kèm theo agent của trình duyệt. Vậy làm sao để có thể là google? Set agent là google sao?
Không ý của bài này là chúng ta phải truy cập trang dưới dạng là một google bot. Và agent của google bot là ... Chỉnh sửa agent trên burp và ta có được flag.
Flag: picoCTF{s3cr3t_ag3nt_m4n_12387c22}

Buttons - Points: 250

- Ở nút button 1 dùng burpsuite ta thấy đó là phương thức POST nhưng ở button 2 là phương thức GET. Dựa vào hint là điểm khác nhau của 2 button thì mình sửa lại button 2 từ GET sang POST và có được flag.
Flag: picoCTF{button_button_whose_got_the_button_ed306c10}

The Vault - Points: 250

- Một bài SQL Injection cơ bản, trong source code php ta thấy rằng một vài ký tự đã bị filter như /,\,or... nhưng mà dấu quan trọng nhất là dấu ' thì không bị tương tự như bài Irish Name Repo
mình dùng admin' -- và có được flag.
Flag:picoCTF{w3lc0m3_t0_th3_vau1t_e4ca2258}

fancy-alive-monitoring - Points: 400

- Trong phần source code ta có thể thấy ở máy client có sẽ có dấu $ nhưng ở máy chủ lại không check ở server. Vậy ta có thể dùng nó mà bypass. Tuy nhiên thì khi thực hiện được câu lệnh exec lại không có output. Thế mình phải ép nó hiện bằng basse64 và dùng curl để có thể lấy được output.

Ta sẽ nhận được một đoạn base64 của hàm ls và decode ta được:

index.php

index.txt
the-secret-1755-flag.txt
xinet_startu
Ok tương tự như trên cat flag thôi.

Flag: picoCTF{n3v3r_trust_a_b0x_36d4a875}

0 comments:

Post a Comment