DOM XSS : LAB [3]

DATE : 2024/1/9

DOM XSS in jQuery anchor href attribute sink using location.search source

이번 문제는 feedback을 작성하는 페이지에 존재하는 취약점을 이용해

쿠키 정보를 출력하는 스크립트를 실행하는 것이 최종 목표이다.

우선, 이 LAB에도 취약점이 존재한다고 하니 어떤 형태로 XSS를 시도할 수 있을 지

분석해보도록 하자.

LAB에 접속하면 우측 상단에 배치된 Submit feedback 버튼을 어렵지 않게 찾을 수 있을 것이다.

피드백 작성 페이지로 접속한 후 URL을 보면 returnPath parameter가 전달되고 있는 걸 볼 수 있다.

이 파라미터가 어디에 사용되는 값인지 Packet을 확인해보니 다음과 같은 코드를 발견할 수 있었다.

코드는 returnPath parameter를 a tag의 href 속성으로 지정하라는 내용으로

이때 선택자가 가르키고 있는 element는 피드백 Form 하단에 제공되는 back 버튼이다.

즉 returnPath로 전달되는 값을 Back 버튼의 링크 값으로 지정함으로써

Back 버튼을 클릭했을 때 이동할 경로를 설정하는 코드인 셈이다.

앞서 풀었던 LAB 중에서 href 속성을 이용해

href="javascript:alert(1)"

이와 같은 스크립트를 삽입했던 문제가 있었다.

<script> tag에 작성된 코드를 보아하니 이번 문제도 유사한 방법으로 풀 수 있을 듯하다.

a tag의 href 속성을 지정하기 위해선 returnPath parameter로 내용을 전달해야 한다.

따라서 URL 바에 위와 같이 쿠키 정보를 alert()으로 띄우는 스크립트를 작성해 넣으면..!!

Back 버튼을 클릭했을 때, 팝업 창을 확인할 수 있고 이로써 이번 LAB을 해결할 수 있게 된다! 🤗

Last updated