일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 웹 해킹
- CTF
- Web Hacking
- hackingcamp
- thinkPHP
- 해킹캠프
- cve 분석
- 해킹캠프 ctf
- 웹해킹
- php
- webhacking
- RCE
- XSS-game
- Web
- XSS
- hackingcamp ctf writeup
- hackctf
- WEB-hacking
- 해외 워게임
- hacking
- backdoorctf 2023
- backdoorctf 2023 web
- backdoorctf writeup
- Hacker.org
- CVE
- WarGame
- writeup
- 해외 wargame
- backdoorctf 2023 web Unintelligible
- wargame.kr
- Today
- Total
목록Wargame (32)
<OOO>
타이머를 설정하는 기능이다. 세미콜론을 넣어서 확인해보면 이렇게 뜬다. 상단에 있는 URL을 보면 timer 이라는 파라미터로 값을 받는다. time.html의 소스중 21번 라인에 있는 onload가 있다. 즉, timer=('~~~~~')가 된다. 그러면 onload=startTimer('1');alert('1 하면 되지 않을까? 라는 생각으로 시도를 해 보았으나 1') 뒤에 부분이 인식이 되지 않는것을 발견할 수 있다. 이런 경우 URL 인코딩을 통해 세미콜론을 인코딩 해주면 되는데 세미콜론은 %3B로 인코딩이 되므로 URL에 1')%3Balert(1을 해주게 된다면 풀리게 된다. 그리고 또 다른 방식으로 푸는 방법도 있다. 애초에 처음부터 타이머를 작동 시키는 부분(URL 아님)에서 1');ale..
Image 버튼을 누르면 사진이 바뀐다. 여기서도 alert를 띄워줘야 하는데.... level1에서 설명했지만, alert를 띄워주면 통과가 되는 느낌이기에... 그냥 alert만 띄워볼것이다. ctrl + shift + c 를 누르면 F12를 누른것 같은 개발자 모드가 뜨게 되는데, 사진을 한번 클릭해주면 해당 소스 부분으로 이동하게 된다. 거기에 보면 img 태그가 있다. level2와 같이 alert를 띄우는 방법은 동일하다. 부분에 onclick 혹은 onload 등등 다양한 태그를 써도 된다. 1) onclick 옵션을 이용하여 푸는법
방명록 같은곳에 글을 쓸 수 있는데, 여기에서 alert를 해야한다. level1 과 다르게 구문이 먹히지 않는다. 그럼 어떻게 해야할까? xss를 공격하는 방법에는 정말 많은 방법이 있지만, 여기에선 img 태그를 이용하여 공격을 할 것이다. 글 쓰는 부분에서 을 입력하면 이런 아이콘이 생성되는데, 이 아이콘을 누르게 된다면 1이라는 alert가 띄워진다. level2도 클리어!
XSS 공격하는 방법을 공부할 수 있는 사이트이다. https://xss-game.appspot.com/ XSS game Welcome, recruit! Cross-site scripting (XSS) bugs are one of the most common and dangerous types of vulnerabilities in Web applications. These nasty buggers can allow your enemies to steal or modify user data in your apps and you must learn to dispatch the xss-game.appspot.com 이 사이트에서 어떠한 방법으로 사용하든 alert를 띄우면 다음 문제로 넘어갈 수 있다. 처음..
첫 화면이다. F12를 눌러 페이지 소스를 확인하면 잠긴 계정의 목록이 나오고 get source를 누르면 소스가 나온다. php 소스를 보면 mysql에 연결하고 입력한 id 와 pw를 검증을 한다. 근데 id가 guest 혹은 blueh4g 이면 your account is blocked 라는 문구가 출력된다. 이 두개의 계정 외에 다른걸로 입력하면 login ok 와 $key 가 출력이 된다. 처음에 mysql_real_escape_string 보고 mysql 함수 취약점이겠구나 싶은 생각은 No! 물론 그렇게 접근을...해도 될진 잘 모르겠지만.. 이 문제에서는 그걸 말하고자 한 것은 아니다. 쿼리를 잘 보면, 대소문자를 구분하지 않는다. 즉, guest 나 Guest나 동일하다는 것이다. 여기서..
뭔가 노가다로 풀어야.... 하는 생각은 버리자. F12를 눌러서 페이지 소스를 보면 이 부분에 url 인코딩이 되어 있는 것을 디코딩 해준다. 그러면 qr코드의 원본이 있는 곳의 경로가 나오는데, 그걸 URL에 입력해준다. qr이 뜨는데, 이걸 해석하면 flag 값이 나온다. (qr을 어떻게 해석하는지 모르면, 휴대폰 카메라를 켜서 이 qr을 바라보자. 그러면 flag값이 뜬다.)
버튼을 클릭해야한다. 정상적인 방법으로 버튼을 누를수 없게끔 만들어졌다. 이 문제를 푸는 방법은 2가지가 있다. 1) 태그 버튼으로 푸는법. 2) ctrl + shift + c 로 푸는법 1) 태그 버튼으로 푸는법 onclick 에 있는 window.location='?key=02ad' 를 복사해서 console 탭에서 입력을 해준다. 그러면 flag가 나온다. 2) ctrl + shift + c 를 이용해서 푸는법 ㅋㅋㅋㅋ 솔직히 이건 꼼수로 푸는거라 딱히 추천은 안하지만... 이런 모습이 뜨는데, 버튼 부분을 클릭해도 버튼이 안움직인다. 만일 움직일경우 다시 한번 더 이 과정을 반복해주면 된다. 가만히 있는 버튼을 클릭하면 flag가 나온다.