목표: 관리자의 쿠키를 탈취하라!
실습 사이트에 들어왔습니다.
일단 마이페이지 부터 차근차근 살펴보도록 하죠.
<마이페이지>
일단 URL 에 있는 변수를 바꿔준다고 페이지에 출력되는 값이 변하는것은 아닌것 같습니다.
마이페이지에서 이용해볼만한건 이정도 인것 같으니 게시글 페이지로 이동해주겠습니다.
<게시글 페이지>
게시글 페이지에 들어왔습니다.
일단은 입력가능한 곳은 Search 를 통한 게시글검색 및 게시글 작성인것 같습니다.
일단 게시글 검색에 james라는 없는 이름으로 검색해서 오류창을 일으켜 보겠습니다.
입력값 : james | alert창 |
일단은 알림창이 뜨지만 저희가 입력한 값이 출력되진 않습니다.
아직까지는 XSS 에 사용할 만한 요소는 보이지 않네요.
그러면 게시글 작성 페이지로 이동하여 < " ' > 같은 특수문자가 허용이 되는지 체크해보겠습니다.
<게시글 작성 페이지>
게시글 작성 |
Burp Suite 로 확인한 게시글 내용 |
어라? Html Entity 처리가 되지않고 특수문자가 그대로 삽이되는것을 보실 수 있습니다.
그러면 POC 코드가 작동 되는지 스크립트 코드를 작성해서 넣어주겠습니다.
게시글 작성 |
Burp Suite 로 확인한 게시글 내용 |
뭔가 이상합니다. 특수문자는 들어갔지만 script 라는 글자와 alert 라는 글자가 사라졌습니다...
XSS 를 막기위한 방법중 대표적인 방법은 HTML Entity , 블랙리스트 필터링 , 화이트리스트 필터링 입니다.
그러면 HTML Entity 가 아닌것은 확인했으니 블랙리스트 필터링으로 막고있는것 같습니다.
그러면 대소문자 혼용을 하여 필터링을 우회하여 보겠습니다.
예상되는 필터링 단어 : script , alert
입력해줄 단어 : Script , prompt(1)
게시글 작성 |
Burp Suite 로 확인한 게시글 내용 |
결과는. ...
무사히 스크립트 코드가 동작하게 됐습니다!
그러면 POC 코드 동작확인도 했으니 쿠키탈취 코드를 넣어주겠습니다.
게시글 작성 |
쿠키탈취 코드 동작확인 |
쿠키가 무사히 제가 설정한 사이트로 보내지는것을 확인하였습니다.
그러면 관리자의 컴퓨터로 스크립트를 삽입한 게시물에 접근을 해보겠습니다.
무사히 관리자의 쿠키(flag) 값을 흭득하였습니다!
긴 글 읽어주셔서 감사합니다!
'워게임 문제풀이 > Segfault' 카테고리의 다른 글
<Segfault> 워게임 문제풀이 [XSS Challenge] (1) | 2024.07.02 |
---|---|
<Segfault> 워게임 문제풀이 [XSS 5](feat.자기반성) (0) | 2024.07.01 |
<Segfault> 워게임 문제풀이 [XSS 3] (0) | 2024.07.01 |
<Segfault> 워게임 문제풀이 [XSS 2] (0) | 2024.06.30 |
<Segfault> 워게임 문제풀이 [XSS 1] (0) | 2024.06.26 |