minhui study
Webhacking.kr 1번 본문
Challenge 01 - 200 Points :: Cookie
view-source를 누르면 아래와 같이 소스를 확인할 수 있다.
if(!is_numeric($_COOKIE['user_lv'])) $_COOKIE['user_lv']=1;
*is_numeric()함수 : 특정 데이터의 값이 숫자인지 아닌지를 확인하여 결과를 반환하는 함수로 숫자형 데이터인 경우 true를 아닌 경우에는 false를 반환한다.
그러므로 만약 user_lv쿠키값이 숫자형 데이터가 아닐 경우 쿠키값에 1이 들어간다는 뜻이다.
if($_COOKIE['user_lv']>=6) $_COOKIE['user_lv']=1;
if($_COOKIE['user_lv']>5) solve(1);
만약 user_lv쿠키값이 6보다 같거나 크면 쿠키값이 1로 설정되고 5보다 크면 성공이므로 쿠키값에 5.5같이 5보다 크지만 6보다 작은 값을 넣어줘야 한다는 사실을 알 수 있다.
크롬에서 F12를 눌러서 개발자 도구를 킨 뒤, 쿠키값을 확인해보면 1로 되어있는데 이것을 5.5로 변경하면 문제가 해결된다.
이 방법 외에 또 인터넷 익스플로러에서 cooxie라는 도구를 이용하여 쿠키 값을 바꿀 수도 있다.
다음 동그라미 안의 버튼을 누르면 쿠키값을 변조할 수 있다.
저기에 6이상의 값을 넣으면 level :1이 뜨고 5이하의 수를 넣으면 그 수가 그대로 뜨는 걸 확인할 수 있다. 그리고 위의 코드대로 5보다 크고 6보다 작은 소수(5.1, 5.5)를 넣어주면 문제가 해결된다.
7을 넣었을 때 1출력
5이하 수 4를 넣었을 때
4그대로 출력
5<x<6인 수 넣었을 때
성공!!
마지막으로 Cooxie에 대해 알아보자
Cooxie : 웹 익스프롤러에서 임의로 쿠키를 변조할 수 있게 한다.
*cookie란 : 컴퓨터 사용자가 사이트에 접속을 하기 위해 웹에 입력하는 아이디와 비밀번호 등 웹사이트에서 주고 받는 기본 정보이다.
'Hacking > Webhacking.kr' 카테고리의 다른 글
Webhacking.kr 25번 (0) | 2020.02.14 |
---|---|
Webhacking.kr 19번 (0) | 2020.02.14 |
Webhacking.kr 54번 (0) | 2020.02.14 |
Webhacking.kr 15번 (0) | 2020.02.13 |
Webhacking.kr 17번 (0) | 2020.02.13 |