'webhacking 6'에 해당되는 글 1건

  1. 2015.10.12 webhacking 6번 문제

안녕하세요. 오늘은 webhacking 6번 문제를 풀어보겠습니다.

홈페이지로 들어가 webhacking 6번을 눌러주세요.

phps라는 소스파일이 있습니다. 확인해 봅시다.


소스 한번 더럽게 기네요. 일단 solve부분을 보시면 decode_id의 값이 admin이고 pw 값이 admin이면 문제가 해결된다는군요. 

현재 화면에 출력된 부분을 보시면 ID는 guest이고 PW는 123qwe 라고 출력되 있는 것을 알 수 있습니다. 그리고 소스를 보시면 현재 출력된 ID와 PW는 decode_id와 decode_pw를 20번 디코딩한 값이라고 볼 수 있습니다. 그리고 decode_id와 pw는 쿠키값 user과 password에서 받아오는 것을 알 수 있습니다.

우리는 decode_id와 pw가 admin이 되도록 해줘야 하므로 거꾸로 올라가도록 해주면 됩니다.

$decode_id=$_COOKIE[user]; 
$decode_pw=$_COOKIE[password]; 

$decode_id=str_replace("!","1",$decode_id); 
$decode_id=str_replace("@","2",$decode_id); 
$decode_id=str_replace("$","3",$decode_id); 
$decode_id=str_replace("^","4",$decode_id); 
$decode_id=str_replace("&","5",$decode_id); 
$decode_id=str_replace("*","6",$decode_id); 
$decode_id=str_replace("(","7",$decode_id); 
$decode_id=str_replace(")","8",$decode_id); 

$decode_pw=str_replace("!","1",$decode_pw); 
$decode_pw=str_replace("@","2",$decode_pw); 
$decode_pw=str_replace("$","3",$decode_pw); 
$decode_pw=str_replace("^","4",$decode_pw); 
$decode_pw=str_replace("&","5",$decode_pw); 
$decode_pw=str_replace("*","6",$decode_pw); 
$decode_pw=str_replace("(","7",$decode_pw); 
$decode_pw=str_replace(")","8",$decode_pw); 


for(
$i=0;$i<20;$i++) 

    
$decode_id=base64_decode($decode_id); 
    
$decode_pw=base64_decode($decode_pw); 

최종으로 디코딩된 값이 admin이어야 하므로 디코딩하기전의 decode_id는 admin을 인코딩한 값이어야 합니다. for문을 이용해 20번 디코딩을 하므로 decode_id엔 admin을 20번 인코딩한 값이 들어가야 합니다. decode_id는 user pw는 password에서 입력받으므로 admin을 20번 인코딩하여 그값을 쿠키 user과 password에 넣어 봅시다.

hint에서 base64가 적혀있었으므로 base64로 인코딩 해 봅시다.

홈페이지에 보시면 base64 인/디코딩 하는 버튼이 있습니다. 체크 된 버튼이 인코딩이므로 20번 눌러서 20번 인코딩 해 줍시다.

인코딩이 완료되었습니다. 이걸 각각 쿠키값 user와 password에 넣어봅시다.

소스 도중에 str_replace라는 치환함수가 있어서 걱정하실텐데 인코딩된 문구를 보시면 !나 @같은 특수기호가 없기 때문에 있으나 마나합니다. 그냥 무시하고 합시다.



체크버튼을 누르시고 새로고침을 합시다.

네 이것으로 문제 풀이를 마치겠습니다.


'Webhacking' 카테고리의 다른 글

webhacking 14번 문제  (0) 2015.10.13
webhacking 4번 문제  (0) 2015.10.13
webhacking 6번 문제  (0) 2015.10.12
webhacking 15번 문제  (0) 2015.10.12
webhacking - 26번 문제  (0) 2015.10.02
webhacking - 18번 문제  (0) 2015.10.02
Posted by englishmath