CSRF 공격 (1)

웹해킹/DVWA 2020. 1. 12. 11:39
반응형
SMALL

1. CSRF 공격 개요

 

 

[그림 1-1] CSRF 공격 시나리오

CSRF 공격의 일반적인 시나리오는 공격자가 피싱 기법을 사용해 사용자에게 이메일을 보내 공격자가 심어놓은 악성 링크를 클릭하게 유도한 후 사용자가 클릭하면 로그인 되어 있는 웹 사이트로 이동되서 어떤 기능을 실행하게 된다. 대표적으론 패스워드 변경, 비밀번호가 설정된 게시판 글 우회 등이 있다. CSRF 공격과 XSS 공격은 비슷해 보일 수 있지만 다르다. 특히 CSRF 공격과 XSS 공격의 결정적인 차이점은 CSRF 공격은 웹 사이트에 로그인이 되어 있어야 공격이 가능하다는 것이다. 쿠키 및 세션을 탈취해야 공격이 가능하기 때문에 웹 사이트에 로그인 됨은 필수 조건으로 들어간다.

 

2. CSRF 공격 실습

 

 

 

[그림 2-1] 비밀번호 변경

DVWA에 로그인 한 후 CSRF 탭을 클릭하고 패스워드를 변경한다. CSRF 공격은 쿠키 및 세션 값을 이용한 공격이기 때문에 DVWA 로그인이 되어 있어야한다.

 

 

 

 

[그림 2-2] 프록시

기존 패스워드와 변경할 패스워드 값이 프록시 결과에 나타난다. Low 단계에선 CSRF 공격에 대한 방어 코드가 없기 때문에 user_token 값이 바뀌지 않고 계속 유지된다.

 

 

 

[그림 2-3] 피싱 메일 소스 코드

스크립트 부분에서 poc() 코드를 정의하는데 URL과 파라미터를 똑같이 구성한다. 이 때 패스워드 파라미터는 hacker라는 패스워드 값으로 변경됐는데 CSRF 공격이 성공하면 그 계정은 공격자가 원하는 패스워드인 hacker로 변경된다. 또한 XMLHttpRequest() 함수를 사용한 Ajax 기법을 활용하고 있는데 poc()가 호출될 때마다 새로운 요청을 전송하도록 만들고 withCredentials 속성을 true로 설정해 요청을 전송할 때마다 쿠키를 자동으로 전송하게 한다.

 

 

 

[그림 2-4] csrf.html 업로드

csrf.html 파일을 웹 서버에 업로드한 후 아파치를 재시작한다.

 

 

 

 

[그림 2-4] 피싱 메일

사용자를 CSRF 공격으로 유도하기 위해 피싱 메일을 발송한다. 링크에는 http://서버 IP/csrf.html을 입력한다.

 

 

 

[그림 2-5] CSRF 공격

사용자가 링크를 클릭하면 공격자가 심어놓은 csrf 공격 페이지로 이동된다. 사용자는 피싱을 당하면 Click! 버튼을 클릭한다.

 

 

 

[그림 2-6] 변조된 패스워드

사용자가 공격자가 심어놓은 URL에 접속해 Click! 버튼을 클릭하는 순간 비밀번호가 변경된다. 로그아웃을 하고 기존 비밀번호로 접속하면 접속이 불가하다. 반면 공격자가 심어놓은 hacker를 입력하고 로그인을 시도하면 접속이 가능함을 확인할 수 있다.

 

 

 

[그림 2-7] 접속 성공

DVWA 계정인 admin, hacker를 입력하고 로그인을 시도하면 접속이 성공함을 볼 수 있다. 공격자가 원하는 비밀번호로 바꿔 접속 되서 사용자의 주민등록번호 등 개인정보를 탈취할 수 있게될 수 있다.

 

 

 

[그림 2-8] 요청 값 비교

왼쪽 Length:439는 공격자가 원하는 패스워드 변경을 요청 할 때, 오른쪽 Length:542는 사용자가 패스워드를 변경했을 때를 나타낸다. 두 그림을 비교했을 때 차이가 없지만 쿠키값이 같다는 걸 볼 수 있다. 쿠키값이 같으면 웹 사이트는 정상적인 사용자로 인지하기 때문에 공격자와 사용자를 구분할 수 없게 된다. CSRF는 쿠키 값을 통해 공격을 하기 때문에 웹 서버에 요청을 할 때마다 쿠키 값을 계속 바꾸는 대응 방안이 필요하다.

반응형
LIST

'웹해킹 > DVWA' 카테고리의 다른 글

Stored XSS 공격  (0) 2020.01.21
CSRF 공격 (2)  (0) 2020.01.12
Command Injection 공격 (2)  (0) 2020.01.04
파일 업로드 공격 대응 방안  (0) 2020.01.04
파일 업로드 공격 (2)  (0) 2020.01.04
블로그 이미지

만년필석사

,