문제풀이

webhacking.kr old1번문제 풀이

모랄타이거 2021. 5. 27. 14:35
반응형

대문사진

https://webhacking.kr/

 

Webhacking.kr

Index Welcome Stranger! Chatting Notice(en) [2021-04-16] Score of old challenges has been adjusted to 1/10. For a while now, new challenges will be added "without" notice. [2020-08-12] Replace chat feature with Discord. Please do not cause inconvenience to

webhacking.kr

이곳에는 웹해킹 관련 문제를 올려놓고 CTF형식으로 공부를 할 수 있게 만들어놓았다.

ㄷㄷ.. 한참남앗네

글작성 당시의 클리어한 목록들 old-04문제는 레인보우테이블을 이용한 문제인데 이게참 용량,메모리,시간 전부

오래걸리기 떄문에 푸는법만 간단하게 포스팅하고 넘어갈것이다.

 

 

1번문제사진

아무것도없이 view-source 소스만 보고 풀 수 있는 문제인거같다.

if(!$_COOKIE 부분부터 보면 될거같다.

 if(!$_COOKIE['user_lv']){
    SetCookie("user_lv","1",time()+86400*30,"/challenge/web-01/");
    echo("<meta http-equiv=refresh content=0>");
  }

만약 user_lv 이라는 이름의 쿠키가 없다면

user_lv라는 쿠키를 생성하고 1이라는 값을 넣어주는거같다.

뒤에 time은 만료 기간을 뜻하는것 같고.

setcookie (쿠키명, 쿠키값, 만료시간, 경로, 도메인, 보안, httponly);

 

 

그다음은 <?php

<?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']}";
?>

 

만약 (숫자인지 아닌지)=!is_numeric(쿠키 [유저레벨])

유저레벨 쿠키가 숫자가 아니라면 쿠키레벨을 1로 초기화한다

만약 쿠키 유저레벨이 4보다 크거나 같다면 1로 초기화한다

만약 쿠키 레벨 이 3보다 작다면 solve(1);

4보다 작고 3보다 큰 값을 입력하는것이 이문제의 해결 방법인거같다.

 

쿠키에딧

글쓴이는 크롬의 확장프로그램을 사용하여 쿠키를 조작하려고한다.

PHPSESSID는 내가 webhacking.kr에서 로그인한 정보이고

user_lv는 우리가 풀어야할 값이다.

 

4<=N>3

3보다 크고 4보다작으면 뭐 소수점 하나 찍고 아무값이나 입력해줘도될거같다

01번 문제 클리어
3.5값을 넣어준 모습
축하한다고하네요

 

반응형