-
DOM 접근 및 조작을 이용하여 XSS 공격_3IT/웹 해킹 2024. 1. 17. 15:52
[이 블로그는 해킹 공부하면서 가볍게 정리용으로 기록 및 내 생각을 끄적여 두기 위한 블로그(라 쓰고 일기라 읽는)이다.]
- 목차
- CTF 문제 및 시나리오
- 실습
1. CTF 문제 및 시나리오
admin 계정의 마이페이지의 정보란에 flag가 숨겨져 있다. 그러나 내 id는 tmdgh123이고 관리자 계정은 비밀번호를 모른다. 마이페이지의 취약점을 찾아 지난번 공격 때와 같이 관리자의 계정(관리자 봇)을 이용하기 위해 ifram태그를 이용할 것이다. (현재 html문서에 관리자 계정의 프레임을 삽입)
2. 실습
1) 마이페이지의 flag 위치를 추측하고 document.getElement를 이용하여 객체값 가져와 놓기
2) 마이페이지의 취약점
get방식의 파라미터 값으로 user의 아이디가 url창에 노출되는 모습을 확인이 된다. 이때 주소창을 admin으로 바꾸면 아무 변화가 일어나지 않지만 관리자가 접속했을 때는 admin의 이름을 가진 아이디가 user=admin으로 되어있을 것으로 추측된다.
3) Stored XSS 취약점이 있는 곳을 찾아내어 공격할 스크립트 구문을 작성
-코드설명-
(1) iframe에 mypage.html에 ?user=admin 으로 주소를 입력해 주고 id=targetId라는 id값을 지정해 준다.
(2) 이 관리자 계정의 주소가 열리면서 스크립트 문이 실행되고 target이라는 변수에 targetId의 객체문서 id값을 담아준다.
(3) target.onload의 Eventhandler를 이용하여 함수를 실행시키고 이때 객체문서의 내용을 DOMData에 담고 flag에 비밀데이터가 있는 위치의 객체값 내용을 지정해 준다.
(4) 이미지 태그를 생성하여 공격자 서버의 주소 + flag(가져올 데이터)를 붙여 저장
4) 관리자 봇에게 저장된 게시물 링크를 전달
5) 공격자 서버에서 데이터 확인
플래그 데이터 획득!
'IT > 웹 해킹' 카테고리의 다른 글
CSRF 실습 (세션 인증 방식 우회) (0) 2024.01.23 CSRF(Cross Site Request Forgery) (0) 2024.01.18 DOM 접근 및 조작을 이용하여 XSS 공격_2 (0) 2024.01.17 DOM 접근 및 조작을 이용하여 XSS 공격 (0) 2024.01.16 XSS 이용하여 쿠키 탈취하기 및 취약점 분석 보고서 (0) 2024.01.11