본문 바로가기
웹 취약점 분석

Part 1: CSRF를 이용한 사용자 강제 회원 탈퇴. 위즈몰(PHP기반)

by 웹하는빡통 2019. 7. 16.

CSRF(Cross Site Request Forgery):웹 어플리케이션 취약점 중 하나로 사용자가 자신의 의지와는 무관하게 공격자가 의도한 행위(수정, 삭제, 등록 등)를 특정 웹사이트에 요청하게 만드는 공격기법.

 

CSRF공격 발생원인

-개별 링크와 폼이 사용자 별로 예측 가능한 토큰을 사용할 때 발생 한다. 예측 불가능한 토큰이 있다면 공격자는 요청 메시지를 변조 할 수 없지만, 예측 가능한 토큰이 있다면 공격자는 요청 메시지를 변조할 수 있다.

 

- 인증이나 세션, 쿠키 등 모든 웹 사이트에서 인증된 사용자가 보내는 데이터는 정상적인 경로를 통한 파라미터 요청으로 판단을하는데. 즉,  정상적인 요청과 비 정상적인 요청을 구분하지 못하여 발생한다.

 

XSS공격과 CSRF공격의 차이점

XSS공격:공격대상클라이언트이고 스크립트코드를 통해 악성스크립트를 삽입시켜 데이터를 수집 및 브라우저의 특정 동작을 유발 시켜 악성스크립트가 사용자 클라이언트에서 실행 된다.

 

CSRF공격: 공격대상서버이고 인증 완료 된 사용자의 권한을 이용하여 악성스크립트를 서버에 요청하여

원하는 명령을 사이트로 전송한다.

XSS(CROSS-SITE-SCRIPTING)
CSRF(Cross Site Request Forgery)

 

CSRF공격의 미치는 영향

-트랜잭션을 전송,사용자 로그아웃,계정 닫기

-계정 정보 변경

-SPAM공격,관리자권한 획득,검색순위 조작,웜바이러스 등에 이용

-웹 관리를 지원하는 라우터,공유기

 

CSRF 공격방법

1. 공격자는 CSRF 스크립트가 포함된 게시물을 등록한다.

2. 사용자는 CSRF 스크립트가 포함된 페이지의 게시물 열람을 요청한다.

3. 게시물을 읽은 사용자의 권한으로 공격자가 원하는 요청이 발생한다.

4. 공격자가 원하는 CSRF 스크립트 결과가 발생한다.

 

 

공격 실습

PART 1: CSRF를 이용한 사용자 강제 회원 탈퇴

 

 

버프스위트 툴로 잡은 해당 회원탈퇴 소스코드

 

 

CSRF 악성 스크립트 작성

 

 

 

게시글 등록 후 클릭

 

 

그 결과 자동으로 회원탈퇴가 실행된 것을 알 수 있다.

 

로그인을 재시도 한 결과 회원탈퇴가 된 것을 알 수 있음.

 

 

 

 

 

 

댓글