티스토리 뷰



이번 포스팅은 webhacking.kr 워게임 사이트 Challenge 17번 문제를 풀어보도록 하겠습니다.

Challenge를 풀어가는 순서는 번호 순이 아닌 점수 분배가 낮은 문제들부터 풀어나가고 있습니다.


Challenge 17번을 푼 환경은 Windows 10, Chrome, Python 3.6.0 을 사용하였습니다.


이번 포스팅의 Challenge 17번 문제는 아래 접근 방법과 기초 개념을 필요로 합니다.


1. HTML/PHP 코드 이해



이제 Challenge 17번을 본격적으로 풀어보도록 하겠습니다.



17번 문제의 첫 화면입니다.


문제페이지에는 입력을 받는 텍스트박스와 check 버튼 하나만 존재합니다.



어떤 동작을 하는지를 보기 위해 입력 텍스트박스에 admin을 넣고 check 박스로 보내봅니다.



결과는 예상대로 Wrong 입니다.


그럼 맞는 답을 찾기 위해 페이지 코드를 보겠습니다.



코드를 보면  unlock 변수를 지정하고 해당 변수에 수를 사칙연산해 계산한 값을 넣어 줍니다.


코드의 20 번째 라인을 보면 입력값인 pw 값과 unlock 값이 같으면 alert 창으로 Password를 가르쳐 주고, 다르면 Wrong 창을 띄우게 됩니다.


그럼 해당 unlock 값을 알기 위해 파이썬을 이용해 계산해보도록 하겠습니다.



파이썬 쉘을 이용해 unlock 값을 계산하고 결과를 받았습니다.


이 값을 문제 페이지의 입력 값에 다시 넣어보도록 하겠습니다.



계산한 unlock 값을 넣어보니 코드대로 Password를 alert창으로 보여줍니다. 이 값을 Auth 페이지에 넣어 인증받겠습니다.



Flag 값을 넣고 인증하면 아래와 같이 Challenge 17번이 해결됩니다.



Challenge 페이지로 돌아가면 17번 문제의 Score 100을 획득하였음을 확인할 수 있습니다.




여기까지 봐주셔서 감사합니다.


다음 포스팅에서 봐요 :)

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함