※ 주의 : 보안 관련 학습은 자유이지만, 학습 내용을 사용한 경우 법적 책임은 행위자에게 있습니다. (Note: Security-related learning is allowed, but the individual is solely responsible for any legal consequences arising from the use of the acquired knowledge.)
※ CTF - Capture The Flag ※ 문제 푸는 방법이 다양할 수도 있습니다.
SegFault CTF - GET Admin 1
1. 목표 : $ID_admin계정을 탈취하여 Flag획득
2. 접근 방법
계정을 탈취 하는 방법(XSS, CSRF)
- XSS로 쿠키를 탈취하여 로그인하는 방법
- CSRF로 비밀번호 변경 요청을 보내는 방법
계정을 탈취하지 않고 Flag만 획득하기
- iframe으로 HTML소스 코드를 긁어오는 방법
(document.documentElement.outerHTML)
3. 방법 선택
XSS로 쿠키를 가져오는 방법은 간단하지만 Secure,HttpOnly옵션 때문에 불가능 할 것 같아서 생략.
iframe으로 HTML 소스 코드 긁어오는 방법은 아마 잘 될 것 같아서 생략.
CSRF 방법은 두가지이다. GET method로 바로 비밀번호를 변경하는 방법, FORM태그를 쓰고 submit을 하는 방법
SQLi의 취약점이 있으면 SQLi로도 할 수 있다.
CSRF 진행
일단 비밀번호 변경 로직을 알아야 한다. 비밀번호 변경로직을 살펴보니 GET으로 날려도 될 것 같다. 리피터로 보내서 GET method로 바꿔어 URL을 확보하자. GET method로 확보한 URL