Wargame/Webhacking.kr2017. 6. 16. 19:36

 

[Level 1 index.phps 내용]

 

해당 소스를 분석해보면 문제를 풀 수 있다.

 

 1. user_lv 쿠키 값을 체크하며, 해당 쿠키값이 존재하지 않을 때

user_lv 를 1로 세팅 후, 새로고침 한다.

* <meta> 태그 "http-equiv=represh content=0" : 0초 후에 새로고침(refresh)

 

2. 문제 풀이의 조건은 간단하다.

* eregi($pattern, %string) : 문자 검색 함수로 대소문자 구별없이 문자를 검색한다.

숫자 이면서  5 < user_lv <= 6 인 값으로 user_lv를 변조하면 solve()를 실행시킬 수 있다.

 

5보다 크고 6보다 작은 숫자는?

 

크롬 개발자도구를 이용하여 해당 조건에 맞는 쿠키값으로 변조하면

Congratulation! 창과 함께 문제가 풀린다.

 

 

[크롬 개발자도구의 쿠키값 확인 - 현재 값 1]

 

 

'Wargame > Webhacking.kr' 카테고리의 다른 글

Webhacking.kr - 5번  (0) 2017.06.21
Webhacking.kr - 4번  (0) 2017.06.17
Webhacking.kr - 3번  (0) 2017.06.17
Webhacking.kr - 회원가입  (0) 2017.06.08
webhacking.kr  (0) 2017.06.05
Posted by EJ90000
Wargame/Webhacking.kr2017. 6. 8. 19:15


회원가입 메뉴가 없이 로그인 버튼만 존재한다.


회원가입을 위해 소스를 살펴보면 주석처리된 회원가입(등록) 버튼을 확인 할 수 있다.


[크롬 개발자도구 를 이용항 소스 확인]


크롬 개발자도구를 이용하여 소스 수정 or 해당 URL 로 직접 접속하여 회원가입을 시도한다.

* onclick 이벤트 : 해당 객체 클릭시 이벤트 동작을 정의

* location.href : 페이지 이동


[주석을 해제하여 Register 버튼이 출력됨]



회원가입의 마지막 관문 decode me 의 알수없는 문자를 해독해야한다.


문자열 변환 사이트를 통해 복호화를 시도하면

(추천사이트 : http://www.convertstring.com)


Base64로 디코딩 결과 문장끝에 "=" 가 붙는 base64 인코딩의 형태의 문자로 바뀌는 것을 확인할 수 있다. 


*base64 : 8비트 이진 데이터를 ASCII 영역의 문자열로 바꾸는 인코딩 방식

base6로 바꾸는 과정에서 입력된 바이트가 남는경우 "="으로 패딩처리 한다.

(출처 : 위키백과 https://ko.wikipedia.org/wiki/%EB%B2%A0%EC%9D%B4%EC%8A%A464)



몇번의 디코딩을 반복하면 최종적 복호화된 값을 확인가능하다.





'Wargame > Webhacking.kr' 카테고리의 다른 글

Webhacking.kr - 5번  (0) 2017.06.21
Webhacking.kr - 4번  (0) 2017.06.17
Webhacking.kr - 3번  (0) 2017.06.17
Webhacking.kr - 1번  (0) 2017.06.16
webhacking.kr  (0) 2017.06.05
Posted by EJ90000
Wargame/Webhacking.kr2017. 6. 5. 02:46


대표적인 웹해킹 워게임 중 하나로 회원가입부터 시작이다.

'Wargame > Webhacking.kr' 카테고리의 다른 글

Webhacking.kr - 5번  (0) 2017.06.21
Webhacking.kr - 4번  (0) 2017.06.17
Webhacking.kr - 3번  (0) 2017.06.17
Webhacking.kr - 1번  (0) 2017.06.16
Webhacking.kr - 회원가입  (0) 2017.06.08
Posted by EJ90000