'전체 글'에 해당되는 글 26건

  1. XSS Challenges stage #6 2 2010.05.23
  2. XSS Challenges stage #5 2010.05.23
  3. XSS Challenges stage #4 2010.05.21
  4. XSS Challenges stage #3 5 2010.05.21
  5. XSS Challenges stage #2 2010.05.21
  6. XSS Challenges stage #1 2010.05.21
  7. python challenge level8 2010.05.07
  8. python challenge level7 2010.05.05

XSS Challenges stage #6

from War Game 2010. 5. 23. 21:45
6번 문제다.

사용자 삽입 이미지

당연히 안될테지만 일단 "><script>alert(document.domain);</script> 를 textbox 에 넣어보았다.

사용자 삽입 이미지

소스코드에 보이는것 처럼 태그에서 가장 중요한 <> 가 필터링되는 것을 확인 할 수 있다.
그러면 주어진 힌트를 사용하여 문제를 풀어보도록 하자!


,

XSS Challenges stage #5

from War Game 2010. 5. 23. 21:17
5번 문제다.
이번 문제는 textbox 에 입력할 수 있는 문자의 길이가 15자로 제한이 되어 있다.
맥에서 문제를 풀다 보니까 문제를 풀 수 없는 문제가 발생했는데, 값을 바꾸려고 적절하게 만든 javascript 가 제대로 동작하지 않아 윈도우에서 인터넷익스플로러를 사용해야만 했다. 물론 javascript 를 사용하지 않고 proxy 를 쓰거나 페이지 소스코드를 수정해서 풀 수 있는 방법이 존재하지만 그런건 제외했다.

사용자 삽입 이미지

힌트를 보게 되면 textbox 의 길이가 제한되어 있다는 것을 확인 할 수 있고 페이지 소스코드를 보면 다음과 같다.

사용자 삽입 이미지

maxlength="15" 로 입력 길이를 제한하는 것을 확인 할 수 있다.
javascript 를 이용해 길이 제한을 풀어보려고 삽질을 해봤더니 되지 않아서 그냥 다른걸 바꿨다.


,

XSS Challenges stage #4

from War Game 2010. 5. 21. 20:33
4번 문제다.

사용자 삽입 이미지

3번 문제와 동일한 화면구성을 가지고 있지만 기존의 풀이방법으로 시도해보면 문제가 풀리지 않는것을 확인 할 수 있다.
힌트를 보아하니 input filed 가 숨겨져 있다고 한다.
그럼 페이지의 소스코드를 봐야겠지?

사용자 삽입 이미지

p3라는 이름으로 값을 입력 할 수 있는 부분이 정말 있다!
그러면 2번과 3번 문제 풀이 방법을 응용해서 풀어버리면 되겠지?


,

XSS Challenges stage #3

from War Game 2010. 5. 21. 20:06
3번 문제다.

사용자 삽입 이미지

문제를 보면 입력값을 넣을 수 있는곳 외에 나라를 선택 할 수 있는 부분이 있다.
1~2번 문제처럼 일단 테스트로 <script>alert(document.domain);</script>를 넣고 search 를 해보았다.
그랬더니 다음과 같은 결과를 얻을 수 있었다.

사용자 삽입 이미지

입력한 스크립트가 박히긴 하는데 실행은 안되고 화면에 뿌려질 뿐이다.
뭐가 잘못됐는지 확인하기 위해서 페이지의 소스코드를 보았다.

사용자 삽입 이미지

소소코드를 보니 스크립트를 실행하기 위해서 반드시 필요한 문자들이 필터링되는 것을 확인 할 수 있었다.
필터링을 우회 할 수 있는 방법이 있는지 찾아봤지만 삽질의 연속이었고, 필터링외에 스크립트를 삽입 할 수 있는 곳이 있는지 찾아보았다.

곰곰히 생각해보니 1~2번 문제와 3번 문제가 다른점은 하나 있었는데 바로 나라를 선택 할 수 있는 부분의 존재였다.

사용자 삽입 이미지

나라를 선택 할 수 있는 부분이 바로 위의 소스코드이다.
나라 이름을 <script>...</script> 로 바꾸면 어떻게 될까?


,

XSS Challenges stage #2

from War Game 2010. 5. 21. 19:58
2번 문제다.

사용자 삽입 이미지

우선 페이지의 소스코드를 보도록 하겠다.

사용자 삽입 이미지

우리가 xss 라고 입력한다면 그 값이 value="" 에 들어가서 value="xss" 가 될 것이다.
그렇다면 어떻게 alert(document.domain); 을 실행 할 수 있게 만들 수 있을까?
힌트에서 알 수 있듯이 현재 태그를 닫아주는 약간의 트릭을 사용하면 된다.

,

XSS Challenges stage #1

from War Game 2010. 5. 21. 19:31
주소 : http://xss-quiz.int21h.jp/

친구가 소개시켜준 xss 전문 wargame 사이트다.
도메인을 보면 알 수 있듯이 일본사이트이고 제작자는 yamagata21 이다.
20개가 안되는 xss 문제를 순차적으로 풀어 갈 수 있다.

Notes (for all stages):
* NEVER DO ANY ATTACKS EXCEPT XSS.
* DO NOT USE ANY AUTOMATED SCANNER (AppScan, WebInspect, WVS, ...)
* Some stages may fit only IE.

공지사항을 꼭 확인하고 엉뚱한 공격을 하지 않도록 주의해야한다. ;D

사용자 삽입 이미지

,

python challenge level8

from Closed 2010. 5. 7. 23:37
이번 레벨은 난이도가 낮아서 보너스 게임이 아닌가 싶었다.
문제 페이지의 소스를 보면 아래와 같은 문자열들을 볼 수 있다.

<!--
un: 'BZh91AY&SYA\xaf\x82\r\x00\x00\x01\x01\x80\x02\xc0\x02\x00 \x00!\x9ah3M\x07<]\xc9\x14\xe1BA\x06\xbe\x084'
pw: 'BZh91AY&SY\x94$|\x0e\x00\x00\x00\x81\x00\x03$ \x00!\x9ah3M\x13<]\xc9\x14\xe1BBP\x91\xf08'
-->

BZh91AY&SY 까지 동일 한 것을 확인 할 수 있는데 이걸 구글링하게 되면 bz2의 헤더값이라는걸 쉽게 알 수 있다. 따라서 bz2 모듈을 사용해서 간단하게 풀어보도록 하겠다.

,

python challenge level7

from Closed 2010. 5. 5. 18:17
레벨6을 풀고 접속한 경로에는 다음과 같은 짧은 문장이 있었다.

it's in the air. look at the letters.

.... 응? 뭐? 어쩌라고?
공기 중에는 질소, 산소, 이산화탄소 ... 등등 이 있는데, 화학식 말고 명사로 적다보니 산소에서 아래와 같은 이미지(png)를 얻을 수 있었다.


사용자 삽입 이미지

이전 레벨에서는 페이지 소스에서 힌트를 많이 얻었기 때문에 페이지 소스를 봤지만, 아무것도 없었고
결국 주어진건 이미지 파일 밖에 없었다. 이미지 파일에서 수상한 중앙 부분에서 뭔가를 찾아야겠다는 생각이 들었다.

 

이미지 뷰어로 중앙부분에 있는 색상들을 훑어봤더니 RGB값이 각각 동일했고 쉽게 RGB값이 문자로 출력할 수 있는 ASCII 범위에 포함이 되는걸 확인 할 수 있었다.

 

일단 포럼에서 얻은 정보로 Image모듈을 사용하기 위해서 PIL(Python Image Library)을 검색한 후 Image 모듈을 설치하고 다음 소스를 만들어서 문제를 해결했다.


,