안녕하세요. 오늘은 webhacking 17번을 풀어보겠습니다. http://webhacking.kr - 로그인 - challenge - 17번으로 들어가 주세요.

빈칸과 체크버튼이 있습니다. 흠 무슨 뜻일까요. 일단 문제를 알아내기 위해 오른쪽 마우스 - 소스보기를 눌러줍시다.

script부분에 무슨 복잡한 계산식이 있네요. 그리고 그 밑에는 if(login.pw.value==unlock){ alert("Password is "+unlock/10); }else { alert("Wrong"); } 라고 되어있네요. 해석해보면 unlock에 저 계산식의 값을 저장하라. 그리고 만약 login.pw.value의 값이 unlcok의 값과 같으면 Password is +(unlock/10)을 출력하고 아닌경우엔 Wrong를 출력하라. 라고 되어있습니다. 일단 딱봐도 unlock을 계산해야 문제가 풀릴 것 같습니다. 그런데 또 저걸 일일이 계산하는 분은 없을거라고 봅니다. 그럼 계산기를 이용하느냐? 그것도 귀찮지 않습니까? 그래서 정말 간단하게 풀어봅시다. 아래그림처럼 자바스크립트 콘솔로 들어갑니다.

창이 열리면 unlock=부터 9999999999; 까지 복사하여 붙어주세요. 그리고 엔터를 눌러시면 아래그림과 같이 답이 나옵니다.

음 unlock의 값은 구했습니다. 그런데 아까 소스에서는 unlock의 값이 login.pw.value와 같을경우 패스워드를 출력한다 했으니 즉 login.pw.value의 값이 9997809307이 되어야 합니다.그럼 대체 login.pw.value은 뭘까요? 알아내기위해 오른쪽 상단메뉴 - 도구 더보기 - 개발자도구를 눌러주세요. 

login.pw.value 란 해석하면 form name이 login이고 이름이 pw인 것의 값이라는 소리입니다. 조건에 맞는 소스를 찾아 눌러보니 왼쪽화면에 블록이 딱 잡히는군요. 즉 저 블록잡힌 것이 login.pw라는 뜻입니다. 값이라는 것은 저기에 입력한 값을 말하겠지요. 자 그러면 이제 패스워드를 알아내기 위해 login.pw에 unlock값을 넣어봅시다.

소스에 나온대로 패스워드가 나오는군요. 자 이제 패스워드를 입력해봅시다.

??? 패스워드를 그대로 입력했더니 틀렸다라는 문구가 나왔습니다. 다시한번 소스를 봅시다. 보시면 아시겠지만 login.pw의 값이 unlock값이랑 같을때에는 패스워드를 출력하지만 틀렸을 경우에는 wrong을 출력합니다. 즉 login.pw의 값에는 9997809307의 값 외에는 무조건 Wrong을 출력한다는 소리입니다. 다른 말로 패스워드를 알았지만 login.pw에 넣어선 안된다. 라는 뜻이 되겠네요. 그리고 무엇보다 소스에 solve()가 없습니다. 해결하라라는 함수자체가 존재하지 않기 때문에 이 페이지내에선 문제를 해결할 수 없다는 것입니다. 일단 문제를 해결하기 위해 뒤로가기를 눌러 메인메뉴로 나와봅시다. 답을 어디다 적어야 될까요? 적을만한 곳을 찾기 위해 메뉴를 전부 뒤져봅시다.

forum은 토론회, msg은 message(메세지)의 약자, challenges는 도전과제, auth는 authentication(인증의 약자), rank는 순위 , service는 말그대로 서비스, friendly는 관련사이트 인것 같습니다. 메뉴를 살펴보니까 도전과제 옆에 적혀있는 인증이 맘에 걸리는군요. Auth를 눌러봅시다.

Flag라는 칸이 나오는군요. Flag는 원래 깃발이란 뜻이지만 컴퓨터계에서의 Flag는 프로그램 실행중에 특정 상태가 성립했는지의 여부를 식별하기 위하여 조사되는 데이터의 항목입니다.즉 여기가 인증하는 곳 인것 같으니 여기에 아까 패스워드라고 나왔던 999780930.7을 입력해봅시다. 다 입력한 후 submit(제출)를 눌러주세요

짝짝 참 힘들게 풀었습니다.

감사합니다.



'Webhacking' 카테고리의 다른 글

Webhacking - 27번문제  (2) 2015.07.10
Webhacking - 문제24번  (0) 2015.07.10
Webhacking - 문제 11번  (0) 2015.07.08
webhacking시작 - 문제1번  (0) 2015.07.04
webhacking시작 - 회원가입  (0) 2015.07.04
Posted by englishmath
,