Web 취약점 진단 - 악성 콘텐츠

1. 악성 콘텐츠(CS)

 

2. 취약점 개요

 

악성 콘텐츠 취약점은 사용자 입력이 허용되는 게시판이나 댓글 등의 기능에서 입력값 및 업로드 검증 미흡으로 악성 스크립트나 파일이 삽입되거나 실행되어, 페이지 열람만으로도 악성코드 감염, 세션 탈취, 피싱, 웹 변조 등 심각한 보안 위협을 유발시키는 취약점이다.

 

3. 진단 결과

 

시나리오 :  XSS(악성 콘텐츠 삽입)를 이용한 CSRF 연계 공격 점검 

※ XSS는 브라우저에서 실행되어 페이지나 콘텐츠가 변경되는 취약점이고 CSRF는 서버에서 사용자 권한으로 상태(데이터)가 변경되는 취약점이다.

- 콘텐츠(Content) : 웹 페이지에서 사용자에게 보여지거나 브라우저가 해석 또는 실행하는 모든 요소를 말함

- XSS를 이용한 CSRF 공격으로 서버도 변조할 수 있음

- 쉽게 말해 XSS은 화면에서 사고가 나고 CSRF는 서버에서 사고남

 

1) 비밀번호 변경에 필요한 변수명 확인

사용되는 변수명 확인

 

2) GET 방식 파라미터 노출 확인

 

3) 데이터 수정 페이지에 비밀번호 변경용 악성 스크립트를 삽입한 뒤 다른 사용자가 해당 게시글을 열람하면 스크립트가 실행되는지 확인

삽입한 악성 스크립트 

<iframe src=“http://192.168.113.131/bWAPP/csrf_1.php password_new=leegyumin&password conf=leegyumin@action=change” width=0></iframe>

악성 스크립트 삽입
게시글 열람 시 비밀번호 변조 확인

 

4. 권고사항

 

1) 악성 콘텐츠가 삽입된 페이지에 대해 화면 캡처, 소스 코드 등 증거 자료를 확보하고 보존해야 함

2) 삽입된 악성 콘텐츠를 즉시 삭제하거나, 해당 페이지 전체를 삭제 또는 접근 불가 상태로 전환해야 함

3) 확보된 증거 자료를 기반으로 악성 콘텐츠의 삽입 원인을 철저히 분석하고, 근본적인 취약점을 파악하여 원인을 제거할 것을 권고함

4) 게시판의 글 등록 및 파일 업로드 기능 이용 시 Flash, AVI, EXE 등 악성코드가 포함될 수 있는 특정 확장자의 콘텐츠 삽입 및 업로드를 금지하는 필터링을 적용해야함

5) 주기적으로 웹 서버에 업로드된 파일을 대상으로 바이러스 검사를 실시하여 잠재적인 악성 콘텐츠를 탐지하고 제거함