ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [suninatas ] level1/level2
    2022/Write-Ups 2022. 3. 28. 11:02

    개론2팀 유채연

    레벨1

    이런 코딩 문제를 처음 풀어서 어떻게 풀어야 하나 했다.
    먼저, 용어 정리를 해야 문제를 풀 수 있을 것 같아 용어를 찾아봤다.

    request는 입력값
    replace는 문자를 치환
    Mid는 괄호 안에 범위들만 출력
    a&b는 두 단어 붙이기

    용어 뜻을 알고 이 문제는 마지막 값인 admin부터 거슬러 올라가야 한다 생각했다.

    그래서 admin의 바로 전 단계가 단어를 이어 붙이라는 명령이었기 때문에 admin을 임의로 두 단어로 나눴다. result1과 result2가 붙은 것이기 때문에 result1=ad, result2=min이라고 가정했다.

    이걸 가지고 str의 형태를 잡아보면 result1에서는 2번째 글자에서 두 번째까지이기 때문에 ♡ad~라는 글자로 추측할 수 있다. result2를 보면 4번째에서 6번째 글자까지 이기 때문에 str는 ♡admin라고 형태를 잡을 수 있다.

    여기서 a를 aad로 i를 in으로 바꾸라는 명령어가 있었기 때문에 in을 i로 aad를 a로 바꿔주면 처음 str가 나온다. ♡가 a라고 한다면 치환한 str는 aadmin가 되고 다시 원래로 바꾸면 ami가 된다.

    ami를 답에 넣어보면

    문제를 풀었다고 나온다.


    2번

     

     

    2번째 문제다. 처음 보고 로그인을 안 했던가 하고 내 아이디와 비번을 치고 한 3번 정도 시도후 문제라는 것을 깨달았다.
    1번 문제랑은 결이 달라서 어떻게 풀어야할지 전혀 감이 오지 않아
    다른 사람들이 푼 것을 참고하며 문제를 풀어보았다.

    먼저 페이지 소스를 확인해보면 힌트를 얻을 수 있다 해 페이지 소스를 확인했다.

    페이지 소스를 확인하면 id와 pw가 같을 때 "가입할 수 없다. 다시 해라"라고 나온다고 해서 한 번 해 봤다.

    진짜 나와서 너무 신기하고 재밌다. 그런데 이 다음에 어떻게 해야할지 몰라서 막막했다. 아이디와 패스워드가 다르면 서버에 제출이 된다고 소스에 나와있지만 무슨 다른 값을 넣어야 하는지 감이 잡히지 않았기 때문이다.

    혼자 머리를 부여잡고 컴퓨터를 노려보며 조금 생각해 본 결과 id와 pw가 같아도 제출이 되도록 하면 되지 않나 생각했다.
    그래서 id와 pw에 같은 값 k를 넣고 개발자 메뉴 콘솔에서 id와 pw가 다를 때 제출되는 부분을 넣어봤더니

     

    authkey가 나온다.

    다들 너무 생소한 거라 다 매우 쉬운 단계인데도 힘들었다.
    공부가 필요한 부분이 굉장히 많다고 느꼈지만 그것과 동시에 문제를 해결했다는 것이 너무 신기하고 재미있었다. 실력을 더 키워서 더 어려운 문제들에도 혼자 힘으로 도전하고 싶다.



    '2022 > Write-Ups' 카테고리의 다른 글

    [Suninatas] 15. Do you like music?  (0) 2022.03.28
    [Suninatas] 18. Cipher I : What is it?  (0) 2022.03.28
    [ctf-d] 제 친구의 개가 바다에서...  (0) 2022.03.28
    [Suninatas] 21  (0) 2022.03.28
    [Suninatas] Cipher II : What is it?  (0) 2022.03.27