일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 배열
- 객체
- 조건문
- document
- htmlspecialchars
- property
- python
- window
- 백준 파이썬
- sql injection
- object
- 자바스크립트
- burp suite
- IF문
- 포인터
- lord of sql injection
- 김성엽 대표님
- 백준 알고리즘
- github
- suninatas 풀이
- Pwndbg
- xss game
- 메소드
- blind sql injection
- jQuery
- 함수
- element 조회
- xss game 풀이
- 사칙연산
- 파이썬
Archives
- Today
- Total
power-girl0-0
QR CODE PUZZLE 본문
728x90
http://www.wargame.kr/challenge
문제
문제 설명을 보면 자바스크립트를 이용한 퍼즐인 것을 알 수 있다.
start를 눌러 문제를 확인해보자.
QR코드가 퍼즐을 확인할 수 있다.
풀이
해당 문제는 QR코드 퍼즐을 맞추면 flag값을 알 수 있을 것으로 예측된다.
먼저, 소스를 확인해보자!
문제 설명에서 자바스크립트를 이용한 퍼즐이라고 했으므로, 자바스크립트 부분을 먼저 살펴보자.
위와 같이 unescape 함수를 확인할 수 있었다.
unescape 란?
escape를 통해서 만들어진 URI escape를 디코딩한 것이다.
즉, escape로 된 문자열을 정상적인 문자열로 되돌려주는 역할을 한다.
그렇다면, unescape함수에 들은 값을 정상적인 문자열로 바꿔보자.
https://www.convertstring.com/ko/EncodeDecode/UrlDecode
위 주소에서 디코딩을 해주었다.
디코딩한 결과 ./img/qr.png 주소인 것을 확인할 수 있다.
출력된 경로로 이동해보도록 하자.
다음과 같이 퍼즐이 맞춰지면 보이는 QR코드 사진이 있는 경로임을 알 수 있다.
그렇다면, 이번에는 QR코드를 인식해보자!
QR코드로 인해 이동된 웹페이지에서 flag값을 얻을 수 있었다.
문제 클리어!!
위 방식과 같이, 디코딩을 하지 않아도 QR코드의 경로를 얻을 수 있다.
이건 사실, 야메(?)라고도 할 수 있다.
자바스크립트가 아닌 QR퍼즐인 사진에 해당하는 소스를 확인해보면, background-image에 url경로가 있는 것을 확인할 수 있다.
728x90
'War game > wargame.kr' 카테고리의 다른 글
fly me to the moon (0) | 2021.02.08 |
---|---|
WTF_CODE (0) | 2021.02.03 |
login filtering (0) | 2021.02.01 |
flee button (0) | 2021.01.31 |
already got (0) | 2021.01.31 |
Comments