반응형

 첫 문제여서 그런지 아주 쉬운 문제였습니다. 다행히 빠른 포기는 없는 걸로..ㅎ


 Flag 값 인증 방법을 알려드릴게요^^(다 아시겠지만요)


 우선, 문제를 클릭합니다.



 [Start the Challenge] 버튼을 눌러 문제를 보겠습니다.



음,,, 그냥 Password를 입력받는 칸만 나와 있습니다. 우선은 임의의 값을 넣어서 로그인을 시도해보겠습니다.


패스워드가 맞지 않다는 메시지가 뜨네요. 아무 정보없이 어떻게 풀어야 할까요?


사실 해답은 문제의 제목을 참고하면 되는데요, HTML을 이용하여 풀어야하는 문제이네요. 

워게임의 제일 기본인 '소스 보기'를 클릭합시다. (우클릭->소스보기 or F12 개발자도구)

패스워드를 찾았습니다!!! 주석으로 처리되어 있었네요. 

이전 페이지로 돌아가 패스워드 입력창에 넣어봤더니 이 패스워드를 입력해서 인증하라는 메시지가 출력되었습니다.

인증 Flag를 입력하는 부분은 [Start the Challenge] 버튼 하단 부분에 있는데요, 그 페이지로 돌아가서 얻은 패스워드(flag) 값을 전송하였더니!!

5 포인트를 얻었습니다^^

 








반응형

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

root-me >> HTTP directory indexing  (0) 2018.02.21
root-me >> User-agent  (0) 2018.02.21
root-me >> Weak password  (0) 2018.02.21
root-me >> HTTP - Open redirect  (0) 2018.02.21
Root-me Wargame site  (0) 2018.02.21
반응형

 지금까지 공부를 소홀히 했던 나를 반성하며,,, 다시 블로그를 시작하려고 합니다!!


 공부 이외에도 지금까지 여행했던 곳들... 차근차근 올려보려고 해요


 www.root-me.org 워게임 사이트를 발견했는데, 초급부터 고급까지 다양한 난이도에 문제 수도 꽤 많아 아주 만족하고 있습니다.


 많이 부족한 실력이지만, 포기하지 않고 풀어보겠습니다.




  링크 : https://www.root-me.org/en/Challenges/Web-Server/ 



 (웹 서버 문제 이외에도 다양한 분야의 챌린지가 있어 실력을 향상하여 도전해보고 싶네요.)

반응형

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

root-me >> HTTP directory indexing  (0) 2018.02.21
root-me >> User-agent  (0) 2018.02.21
root-me >> Weak password  (0) 2018.02.21
root-me >> HTTP - Open redirect  (0) 2018.02.21
root-me >> HTML  (0) 2018.02.21
반응형

일단, fd를 들어간 후, 어떤 파일들이 설치되어 있는지 ls명령어를 사용하여 확인한다.

위의 화면을 보면, fd 실행파일과, 소스, flag가 있는 것을 알수 있다.

우리가 얻어야 할 것은 이 flag에 저장되어 있는 키값이다.


이 문제는 소스 분석만 잘한다면 쉽게 풀수 있는 문제이다.(물론 나한텐 어렵지만ㅜㅜ)


cat [파일이름] 명령어를 써주면 파일의 속내용을 화면으로 뿌려주는데, cat fd.c를 하면 fd의 소스를 볼수 있다.

우리가 어떤 값을 입력했을 때, 입력한 개수는 argc에 저장되고 그 값은 배열 argv[]에 저장된다는 것을 알고 있을 것이다.


위에서 부터 천천히 분석해보면 입력하는 값이 2개 이하면 "pass argv[1] a number"가 출력되고 프로그램이 종료된다. 입력하는 값이 두개 이상이되어야 된다는 것을 알 수 있다.


변수 fd에는 atoi(argv[1])-0x1234를 연산한 값이 저장되고, len에는 read(fd, buf, 32)가 저장된다. 여기서 read() 함수를 잘 살펴보아야 한다.

read함수의 첫번째 인자에는 파일 디스크립터가 들어간다.

- 0 : stdin // 1 : stdout // 2 : stderr

두번째인자에는 파일을 읽어드리는 버퍼가 들어가고, 세번째엔 버퍼의 크기가 들어간다.


>>파일 디스크립터에는 파일이 입력되야하므로 fd값은 0이 되어야한다. 어떤 값에서 16진수 0x1234를 뺀 값이 0이 되어야 하므로, 0x1234 즉 십진수로 변환한다면 4660값이 들어가야 한다. (첫번째 입력값은 4660!!!!)

>>두번째 입력값과 문자열 "LETMEWIN"을 비교하였을 때 같아야 하므로!!!답은??ㅋㅋㅋㅋ


소스를 천천히 분석하고 답을 알았으니 fd를 실행시켜 값을 입력하면~~~

flag에 들어있는 키값을 볼 수 있다.


반응형

'Study > Reversing' 카테고리의 다른 글

PE헤더-NT Header  (0) 2014.08.03
PE헤더-Dos header/Dos stub  (0) 2014.08.03
PE파일 구조  (0) 2014.07.31
리버싱 분석방법-정적분석, 동적분석  (0) 2014.07.07

+ Recent posts

반응형
반응형