첫 번째 문제입니다.
접속하면 사진과 같이 level과 소스코드가 있습니다. 소스코드가 있기 때문에 먼저 확인을 해보겠습니다.
<?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>");
}
?>
user_lv 쿠키가 존재하지 않으면 초기 값을 1로 설정하여 생성합니다.
<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']>=4) $_COOKIE['user_lv']=1;
if($_COOKIE['user_lv']>3) solve(1);
echo "<br>level : {$_COOKIE['user_lv']}";
?>
<br>
<a href=./?view-source=1>view-source</a>
</body>
</html>
solve(1) 함수를 실행하기 위해선 앞의 조건들을 통과해야 합니다.
if(!is_numeric($_COOKIE['user_lv'])) $_COOKIE['user_lv']=1; 를 먼저 살펴보면 user_lv 값이 숫자가 아닐 경우 user_lv를 1로 설정합니다.
if($_COOKIE['user_lv']>=4) $_COOKIE['user_lv']=1;에서는 user_lv의 값이 4 이상이면 앞과 마찬가지로 값을 1로 설정합니다.
if($_COOKIE['user_lv']>3) solve(1); 에서는 user_lv의 값이 3보다 크면 solve를 실행합니다.
조건을 전부 정리해 보면 user_lv의 값은 3 < user_lv < 4 인 숫자 값이 됩니다!

적절한 값으로 user_lv 쿠키의 값을 설정하면 문제를 해결할 수 있습니다.