본문 바로가기

4-1. 2026-1 심화 스터디/워게임 도장깨기

[1주차] 워게임 도장깨기_웹 해킹

https://webhacking.kr/

 

Webhacking.kr

 

webhacking.kr

[old-14] 문제 풀이

처음 뜨는 창

뭘 입력하는 칸이 있다.
 

코드를 먼저 보자. (js 확인)
 

if (ul == pw.input_pwd.value)

 
ul과 입력한 값이 같으면 통과시켜주는군
 

ul = ul.indexOf(“.kr”);

 
첫번째로 정의된 ul을 보니 링크의 문자열에서 .kr이 시작되는 위치를 물어보고 있다.(index)
 

console 창에 입력해서 값을 구한다.
 

ul=ul*30;

 
이제 위에서 구한 값에 30을 곱하면 완성된 ul 값이 나올 것이다.
 

540이 ul 값이 된다.
 

[los.rubiya.kr] 문제 풀이

 

이 사이트는 GET방식을 이용하기 때문에 도메인의 뒤에 값을 주어서 변수의 값을 수정해주면 된다.

 

주소창 뒤에  ?id=admin&pw=1'or'1'=1 를 입력한다. 그러면 뒤에 내용이 항상 값이 참이어서 SQL 쿼리문이 항상 참으로 동작된다.

 

[xss-1] 문제 풀이

xss-1 문제풀이

 

- XSS를 이용해서 봇의 쿠키(FLAG)를 훔치는 문제

- 서버에는 3가지 기능이 있음

 

 

<문제 상황>

1. /vuln

 

 

 

- URL 파라미터 param을 그대로 출력

- 필터 없음 → XSS 취약점 존재

 

2. /memo

- memo 값을 서버에 저장하고 보여줌

- 우리가 훔친 정보를 저장하는 용도

 

3. /flag

- 사용자가 입력한 값을 받아서 봇(셀레니움)이 /vuln?param=입력값 방문

driver.add_cookie({"name": "flag", "value": FLAG})

를 보면 봇은 flag 쿠키를 가지고 있음

 

>> /vuln 는 XSS 가능하고 봇은 flag 쿠키 들고 있음 - XSS로 쿠키 탈취가 가능함

 

 

<공격 흐름>

1. /flag에 악성 코드 (입력 메모에 쿠키를 저장시키는 URL)

 

2. 봇이 이 URL 방문

3. 브라우저에서 JS 실행됨

4. 쿠키를 /memo에 저장 memo에 flag가 뜬다!!