CSRF(Cross Site Request Forgery):웹 어플리케이션 취약점 중 하나로 사용자가 자신의 의지와는 무관하게 공격자가 의도한 행위(수정, 삭제, 등록 등)를 특정 웹사이트에 요청하게 만드는 공격기법.
CSRF공격 발생원인
-개별 링크와 폼이 사용자 별로 예측 가능한 토큰을 사용할 때 발생 한다. 예측 불가능한 토큰이 있다면 공격자는 요청 메시지를 변조 할 수 없지만, 예측 가능한 토큰이 있다면 공격자는 요청 메시지를 변조할 수 있다.
- 인증이나 세션, 쿠키 등 모든 웹 사이트에서 인증된 사용자가 보내는 데이터는 정상적인 경로를 통한 파라미터 요청으로 판단을하는데. 즉, 정상적인 요청과 비 정상적인 요청을 구분하지 못하여 발생한다.
XSS공격과 CSRF공격의 차이점
XSS공격:공격대상이 클라이언트이고 스크립트코드를 통해 악성스크립트를 삽입시켜 데이터를 수집 및 브라우저의 특정 동작을 유발 시켜 악성스크립트가 사용자 클라이언트에서 실행 된다.
CSRF공격: 공격대상이 서버이고 인증 완료 된 사용자의 권한을 이용하여 악성스크립트를 서버에 요청하여
원하는 명령을 사이트로 전송한다.
CSRF공격의 미치는 영향
-트랜잭션을 전송,사용자 로그아웃,계정 닫기
-계정 정보 변경
-SPAM공격,관리자권한 획득,검색순위 조작,웜바이러스 등에 이용
-웹 관리를 지원하는 라우터,공유기
CSRF 공격방법
1. 공격자는 CSRF 스크립트가 포함된 게시물을 등록한다.
2. 사용자는 CSRF 스크립트가 포함된 페이지의 게시물 열람을 요청한다.
3. 게시물을 읽은 사용자의 권한으로 공격자가 원하는 요청이 발생한다.
4. 공격자가 원하는 CSRF 스크립트 결과가 발생한다.
공격 실습
PART 1: CSRF를 이용한 사용자 강제 회원 탈퇴
버프스위트 툴로 잡은 해당 회원탈퇴 소스코드
CSRF 악성 스크립트 작성
게시글 등록 후 클릭
그 결과 자동으로 회원탈퇴가 실행된 것을 알 수 있다.
로그인을 재시도 한 결과 회원탈퇴가 된 것을 알 수 있음.
'웹 취약점 분석' 카테고리의 다른 글
PART 4: CSRF를 이용한 사용자 강제 정보수정. 위즈몰(PHP 기반) (0) | 2019.10.02 |
---|---|
PART 3: CSRF를 이용한 관리자 PWD변경. 위즈몰(PHP 기반) (0) | 2019.10.02 |
PART 2: CSRF를 이용한 포인트 변조. 위즈몰(PHP 기반) (0) | 2019.10.02 |
파일 업로드 취약점(ASP기반) (0) | 2019.07.03 |
XSS(Cross site Scripting)(ASP기반) (0) | 2019.06.19 |
댓글