본문 바로가기

HACKING/WEB HACKING

[WEB HACKING 01] Old-01

Webhacking.kr 이라는 사이트에서 취미삼아 웹 해킹을 시작했다!

 

첫번째 old-01 문제에 들어가면, 위와 같은 화면이 뜬다.

여기서 view-source 를 클릭해보자.

 

<?php
  include "../../config.php";
  if($_GET['view-source'] == 1){ view_source(); }
  if(!$_COOKIE['user_lv']){
    SetCookie("user_lv","1",time()+86400*30,"/challenge/web-01/");
    echo("<meta http-equiv=refresh content=0>");
  }
?>
<html>
<head>
<title>Challenge 1</title>
</head>
<body bgcolor=black>
<center>
<br><br><br><br><br>
<font color=white>
---------------------<br>
<?php
  if(!is_numeric($_COOKIE['user_lv'])) $_COOKIE['user_lv']=1;
  if($_COOKIE['user_lv']>=6) $_COOKIE['user_lv']=1;
  if($_COOKIE['user_lv']>5) solve(1);
  echo "<br>level : {$_COOKIE['user_lv']}";
?>
<br>
<a href=./?view-source=1>view-source</a>
</body>
</html>

이런 소스코드가 뜬다. 

여기서 중요한 부분만 살펴보자면, 다음과 같다.

  if(!is_numeric($_COOKIE['user_lv'])) $_COOKIE['user_lv']=1;
  if($_COOKIE['user_lv']>=6) $_COOKIE['user_lv']=1;
  if($_COOKIE['user_lv']>5) solve(1);

만약, cookie값이 숫자가 아니면 cokie값을 1로 설정하라.

만약, cookie값이 6이상이면 cokie값을 1로 설정하라.

만약, cookie값이 5보다 크면 solve이다.

 

즉, cookie값이 6보다는 작으면서 5보다 크게 설정해주면 해당 문제를 풀 수 있다.

 

그럼, cookie값은 어떻게 바꿀까?

'EditThisCookie'라는 웹 해킹에 유용한 툴을 하나 소개해주려한다.

크롬 확장 플러그인으로 설치할 수 있다.

설치하면 이렇게 주소창 옆에 쿠키 모양이 추가되고

이 툴을 통해서 쿠키값을 변경할 수 있다. 

 

쿠키값을 2로 변경 후 밑에 초록색 체크 표시를 클릭해보자.

그리고 새로고침 (F5)를 누르면, 쿠키값이 2로 변경된 것을 확인할 수 있다.

 

문제를 풀기 위해서는 5보다 크고 6보다 작은 수를 쿠키값으로 줘야하므로,

쿠키값으로 5.5를 줘보자.

 

이번에도 5.5를 입력 후 초록색 체크 모양을 클릭 후, 새로고침을 누르면 된다.

 

그럼, 이렇게 풀었다! 라는 메세지가 뜨는 것을 확인할 수 있다.