$ 웹 해킹 $/webhacking.kr

webhacking.kr 25번 [150p]

ws1004 2019. 8. 15. 12:18

 

Hello word라고 적혀 있습니다. 아직까지 알수 없으니.. 소스코드를 확인해 보겠습니다.

 

 

소스코드에도 뭐… 없습니다.

 

다시 시작화면으로 돌아와서 보니 URL 조금 이상합니다.

http://webhacking.kr/challenge/bonus/bonus-5/?file=hello

file=hello라고 적혀 있습니다. 하지만 확장자가 없습니다. 점을 유심히 확인하면서 file=index.php 입력해 보겠습니다.

 

변화가 없네요.. Index.php 확실하지 않으니 password.php 중점으로 잡고 풀이를 진행 하겠습니다.

 

 

결과는 여전히 같습니다.

 

음… 한번 소스코드를 예상해 보면..

 

hello.txt에서 .txt 없는 봐서 혹시 이런 소스코드이지 않을까 예상해 봅니다.

 

If(file=hello){

location.href(http://webhacking.kr/challenge/bonus/bonus-5/?file=hello + ".txt")

}else if(file=index.php){

location.href(http://webhacking.kr/challenge/bonus/bonus-5/?file=index.php + ".txt")

}else if(file=password.php){

location.href(http://webhacking.kr/challenge/bonus/bonus-5/?file=password.php + ".txt")

}else{

location.href(http://webhacking.kr/challenge/bonus/bonus-5/?file=hello + ".txt")

}

 

위처럼 file= 뒤에 입력한 값에 .txt 붙어서 인식을 한다면 hello 확장자가 없는 것도 이해가 됩니다.

 

그렇다면 입력을 할때 문자열 뒤에 NULL값을 넣어서 뒤의 문자열을 지운다면? 이라는 생각으로 NULL 뜻하는 %00 붙여봤습니다.

 

정답이 나왔습니다. 혹시 index.php에는 무슨 파일이 들어있을지 궁금해서 입력을 했는데…

 

!!!!! 안에 들어있는 값이… hello world였습니다

 

password먼저 보고 index부터 봤다면.. 맞출 뻔 했습니다.