웹해킹 CSRF

2017.04.09 01:15

졸리운_곰 조회 수:339

CSRF

최근 수정 시각:

 

1. 개요2. 공격 방법3. 예시4. 방어 방법
 

 

1. 개요[편집]

[오류!] CSRF 방지 토큰이 일치하지 않습니다. 다시 시도해주세요.[1]

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com


사이트 간 요청 위조(Cross-site Request Forgery)

웹 어플리케이션 취약점 중 하나로 사용자가 자신의 의지와 무관하게 공격자가 의도한 행동을 하여 특정 웹페이지를 보안에 취약하게 한다거나 수정, 삭제 등의 작업을 하게 만드는 공격방법을 의미한다. 2008년에 발생한 옥션개인정보 유출사건에서도 관리자 계정을 탈취하는데 이 방법이 사용되었다. 공격의 난이도가 높지 않아 널리 사용되는 방법 중 하나다.

2. 공격 방법[편집]

이러한 공격을 하기 위하여 해커는 우선 공격을 할 사이트를 먼저 분석한다. 예를 들어서, 나무위키의 경우에 토론은 namu.wiki/topic/ 이라고 시작하며 뒤에 숫자가 붙는 형식인데 이 뒤의 숫자에 패턴이 있다.[2] 그러면 이 패턴을 이용하여 일반적인 방법으로 접근할 수 없는 페이지를 오픈 한다든지, 개발에 사용되고 실제로 사용하지 않는 샘플 페이지를 찾아낸다든지 이러한 방법이 가능하다. 그것이 아니라 웹페이지가 독자적 개발이 아닌 외부에서 이미 개발된 웹 어플리케이션을 사서 조금 수정한 것이라면 공격자는 경우에 따라서 해당 웹 어플리케이션을 구매하여 개인 서버에 설치를 한다. 그 다음에 공격 가능 패턴을 분석한다. 주로 공격자들이 찾는 것은 사용자 패스워드 변경페이지나 타 시스템과 로그인 연동 주소 패턴같은 인증 관련된 취약점을 찾는다.
그 다음에 여기서 나온 취약점을 이용하여 공개된 게시판이나 메일을 이용하여 사용자가 해당 링크를 열게 만들면 공격이 완료된다.

3. 예시[편집]

만일, A라는 사이트의 사용자 개인 비밀번호 변경을 하는 주소 패턴이 abc.com/user.do?cmd=user_passwd_change&user=admin&newPwd=1234 라고 한다면 이러한 링크를 사용자의 메일로 XSS 형태로 보내고 메일을 읽게되면 해당 사용자의 패스워드가 1234로 초기화 된다. 이를 관리자에게 보내서 일반계정을 관리자 계정으로 바꾸도록 한다든지, 아니면 관리자 계정 패스워드를 바꾸는데 이용한다면 해당 사이트의 모든 정보가 해킹당하는데는 오랜 시간이 걸리지 않는다.
참고로, img 태그도 GET 메소드를 사용해서 보내는 것이기 때문에 img를 이용할 수도 있다! 대부분의 사이트는 img를 필터링하지 않으므로, 혹은 필터링하지 못하므로 유용한(...) 방법이 될 수 있다.
예를 들면 나무위키의 경우 <img src="https://namu.wiki/logout"> 와 같은 코드를 넣어주면 해당 문서를 볼 경우 로그아웃이 된다. 이는 나무위키뿐만이 아닌 대부분의 사이트의 문제.

4. 방어 방법[편집]

방어 방법 중 가장 기초적인 방법은 Referer 체크를 하는 방법이 있다. Referer는 HTTP 헤더에 있는 정보로 해당 요청이 요청된 페이지의 정보를 가지고 있는데 해당 정보는 Paros나 Zap, fiddler같은 프로그램으로 조작이 가능하지만 방법이 간단하여 소규모 웹사이트에 주로 이용되는 방법이다.
그 외에는 패스워드 변경 같은 민감한 정보를 다룰 때에는 세션에 임의난수(토큰)를 발급하여, 해당 난수가 없는 상황에서 해당 동작들이 이루어지면 요청을 거부하는 방법을 통하여 사용자가 정말로 변경을 의도하는 경우에만 변경을 시켜주는 방법, 변경 시에 CAPTCHA를 이용하여 캡챠 인증코드가 없거나 틀리면 거부하도록 하는 방법 등이 이용되고 있다. 또한 GET/POST 등을 구분하여 주는 것 역시 유용하다. img 태그 등을 이용할 경우 GET 요청으로 들어오게 될 것이고, 반면 흔히 하듯 form을 이용해 값을 받을 경우 POST를 이용하게 되는 경우가 많기 때문이다. 위의 방법들을 일일이 적용하기 귀찮다면, 대개 프레임워크에서 위의 방법들을 통합한 플러그인 등을 제공하는 경우들이 많으니 찾아보도록 하자. 또한 form 대신 ajax[3]를 통한 JSON API만 사용하는 방법이 있다.
 

[1] 이 오류가 왜 발생하는 지에 대해서 의견이 많다. 대개 한 문서를 편집하다가 다른 문서를 편집하다 보면 일어난다. 크롬에서 안되면 익스플로러로 시도해보자.[2] 실제론 토론이 개설된 순서대로 붙는 일련번호이다.[3] CORS가 비활성화되어 있어야 한다.
본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
공지 침투테스트(취약점검점검, 모의해킹) 문의 / 답변 졸리운_곰 2017.12.10 28360
52 세계 70여개국서 사상최대 해킹 공격…병원·기업 업무 마비 졸리운_곰 2017.05.13 150
51 사이버 위협 첩보 전문가가 되는 세 가지 방법 file 졸리운_곰 2017.04.27 127
50 손해배상, 2차 피해 등 ‘여기어때’ 해킹사고 후폭풍 거세지나 file 졸리운_곰 2017.04.27 102
49 인터폴, 아세안 지역서 C&C 서버 9000여개 적발 file 졸리운_곰 2017.04.26 142
48 한국 비트코인 거래소 ‘야피존’ 해킹!...55억 규모 탈취 file 졸리운_곰 2017.04.26 153
47 우버, 극비 프로그램으로 경쟁사 `리프트` 정보 몰래 빼내 졸리운_곰 2017.04.15 161
46 가전제품·자동차 해킹 위험 커져...사이버범죄자=도둑 시대 오나 file 졸리운_곰 2017.03.04 126
45 [사례로 보는 개인정보 침해] ⑩여행상품 전화상담 후, 문자·전화가 계속 와요 file 졸리운_곰 2017.03.04 137
44 차세대 사이버 전쟁은 선한 AI와 악한 AI간의 대결? file 졸리운_곰 2017.03.04 130
43 신용카드사·인터파크 개인정보 유출사건 이후...기업의 법적 대응은? file 졸리운_곰 2016.08.12 147
42 암호화된 PDF 문서파일 잘못 클릭했다간...‘이메일 피싱’ 주의보 file 졸리운_곰 2016.08.07 153
41 언론보도로 집계해본 2분기 사이버 위협 키워드 넷 file 졸리운_곰 2016.08.07 192
40 정부?기업 서버 7만개 파는 지하시장 file 졸리운_곰 2016.06.19 158
39 해커가 좋아하는 '최악의 비밀번호' 1위는 file 졸리운_곰 2016.06.12 280
38 "당신의 컴퓨터가 암호화되었습니다, 풀려면 돈을 지불하세요" file 졸리운_곰 2016.06.12 167
37 애플 엑스코드고스트 변종으로 iOS 9 및 미국 비상! file 졸리운_곰 2015.11.07 172
36 '뽐뿌' 사이트 190만명 개인정보 유출 졸리운_곰 2015.09.13 261
35 구글도 찾지못한다는 다크웹(darkweb)의 실체 졸리운_곰 2015.08.22 3658
34 나체사진·성적 취향까지…해커들, 일부 회원정보 공개 file 졸리운_곰 2015.07.23 394
33 성인데이트 사이트 6천400만명 개인정보 유출 졸리운_곰 2015.05.23 248
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED