ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Easy] Postbook
    Wargame/Hacker101 CTF 2020. 4. 4. 02:28

    # Flag 0

    가입 후 로그인하면 사용자가 'user'와 'admin'이 있다는 것을 확인할 수 있다.

     

    아이디와 비밀번호를 쉽게 설정하는 경우가 있기 때문에 아래와 같이 로그인을 시도해보았다.

     

    - username : admin, password : admin
    - username : user, password : pass/passwd/password

     

    username : user, password : password로 로그인이 가능하고 Flag가 주어진다.

     

    사실 이 풀이는 hint를 보고 풀어본 방식이다.

    나는 Flag5를 얻는 방식으로 user의 계정을 탈취한 후, 비밀번호를 변경하고 로그인하여 Flag를 얻었다.

     

    # Flag 1

    글을 읽어보면 id값이 파라미터로 주어지는데, user의 글은 id=3이고 내가 쓴 글은 id=4, 5로 1씩 증가한다.

    id=2인 글이 없는 게 수상하기 때문에 ?page=view.php&id=2로 접근하였더니 Flag를 얻을 수 있었다.

     

    # Flag 2

    글을 작성할 때 request를 잡아보면 다음과 같다.

     

    user_id = 3이다.

    user_id를 3이외의 값으로 변경하면 해당 유저의 권한으로 글을 작성할 수 있고, Flag가 주어진다.

     

    user_id = 1로 변경하였더니, admin의 권한으로 글이 작성되었다.

     

     

    # Flag 3

    Hint : 189 * 5

     

    이 Flag는 힌트 없이는 풀지 못하였다.

    힌트를 보고 느낌적으로 189 * 5 = 945이기 때문에 945번째의 글로 접근하였더니 Flag를 얻었다.

     

    ?page=view.php&id=945

     

     

    # Flag 4

    글을 작성하면 edit과 delete가 가능한데, 글을 수정하는 페이지에도 id 값이 파라미터로 전송된다.

    내가 작성한 글의 id값이 아닌, 다른 글의 id값인 1로 변경하면 아래와 같이 admin의 글을 수정할 수 있다.

     

    글을 수정한 후 저장하면 정상적으로 글이 수정되고, Flag가 주어진다.

     

    # Flag 5

    cookie 값을 살펴보니 id라는 이름의 쿠키가 32글자의 임의의 문자열로 설정되어 있다.

     

    32글자는 보통 MD5 Hash 값이다.

    나의 user_id 값인 3의 MD5 Hash 문자열을 생성해보니 쿠키 값의 문자열과 같다.

    [MD5 Hash Generator] http://www.md5hasher.net/

     

    아래와 같이 1의 MD5 Hash 값으로 cookie 값을 설정해보았더니,

     

    admin의 계정을 탈취하여 admin의 글을 수정, 삭제할 수 있고 Flag가 주어진다.

     

     

    # Flag 6

    delete를 누르면 ?page=delete.php&id=a87ff679a2f3e71d9181a67b7542122c로 request를 보낸다.

    이때 전송되는 글의 id값도 32글자로, MD5 Hash 값이다.

    따라서, user 글의 id 값인 3의 MD5 Hash 값으로 삭제 요청을 전송해보았다.

     

    ?page=delete.php&id=eccbc87e4b5ce2fe28308fd9f2a7baf3

     

    user의 글이 삭제되고, Flag가 주어졌다.

    'Wargame > Hacker101 CTF' 카테고리의 다른 글

    [Easy] Postbook  (0) 2020.04.04
    [Moderate] Micro-CMS v2  (0) 2019.06.21
    [Easy] Micro-CMS v1  (0) 2019.06.13
    [Trivial] A little something to get you started  (0) 2019.06.13

    댓글 0

@Jo Grini's Blog :)