보안 제품정보


네이버 로고 프로젝트 페이지, 보안 취약점 패치 2016.09.08

Reflected XSS 취약점, URL 클릭 유도하는 방식으로 공격 가능
네이버 측 “이미 인지하고 있던 취약점, 현재 조치 완료”


[보안뉴스 민세아] 네이버의 로고 프로젝트 페이지에서 XSS(Cross-Site Script) 취약점이 발견됐다가 최근 패치가 완료됐다.


‘네이버 로고 프로젝트’는 우리나라에서 발생했던 첫 순간들과 기념일을 담아 재조명하는 프로젝트로, 스페셜 로고, 기념일 배너, 아트프로젝트 등의 작품을 모아놓은 페이지다. 이러한 서비스를 제공하는 네이버 로고 프로젝트에서 Reflected XSS 취약점이 발견되어 검색창이나 URL에 악성 스크립트를 삽입해 특정 액션이 발생할 수 있는 문제가 제기됐다.

XSS 취약점은 Reflected 방식과 Stored 방식이 있는데, Reflected 방식의 XSS 취약점은 웹사이트 내에 저장되지 않기 때문에 주로 취약점을 이용해 악성코드 은닉사이트로 이동시키는 URL을 작성한 후 블로그, 카페, SNS에 올려 URL 클릭을 유도하는 방식의 공격에 사용된다.

XSS 취약점은 국내 수많은 웹사이트에서 패치되어 있고, 기초적인 웹 취약점으로 인식돼 비교적 덜 위험하다고 판단되는 경우가 많다. 그러나 지난 8월 3일 한국인터넷진흥원(KISA)에서 발간한 ‘2016년 2분기 사이버 위협 동향 보고서’에 따르면 국내 주요 웹사이트들의 하부 페이지나 중소기업 웹사이트가 이러한 XSS 공격에 당하는 비율이 여전히 많다는 조사결과가 발표된 바 있다.

해당 취약점을 제보한 김상현 이지시큐 선임 컨설턴트는 “네이버는 기념일에 맞게 로고를 변경하는데, 이를 통해 우연히 네이버 로고 프로젝트라는 것을 알게 됐고, 검색창에 특수문자 필터링이 되지 않는 것을 발견하게 됐다”고 전했다.

그는 “이번 취약점이 발견된 네이버 로고 프로젝트 페이지의 경우, 페이지 특성상 많은 사용자가 접근하는 페이지는 아니다. 해당 페이지에도 검색기능 이외에 특별한 기능은 없으나, 검색기능에 스크립트를 삽입해 실행이 가능하다”고 설명했다.

IE(Internet Explorer)와 크롬(Chrome)의 경우 웹브라우저에 스크립트 필터 기능이 있어 GET 방식으로 데이터를 전송할 때 스크립트가 동작하지 않지만, 파이어폭스(FireFox) 브라우저의 경우 웹브라우저에 스크립트 필터가 없어 아래 이미지처럼 동작하는 것으로 알려졌다.


해당 취약점을 해결하기 위해서는 HTML이나 자바 스크립트에 해당되는 태그 사용을 사전에 제한하고, 사용자가 입력한 값에 대한 필터링 작업이 필요하다. 김 컨설턴트는 게시물의 본문뿐만 아니라 제목, 댓글, 검색어 입력창, 그 외 사용자 측에서 넘어오는 값을 신뢰하는 모든 form과 파라미터 값에 대해서 필터링을 수행해야 한다고 설명했다.

또한, 입력값에 대한 필터링 로직 구현 시 공백 문자를 제거하는 trim, replace 함수를 사용해 반드시 서버 측에서 구현되어야 한다고 강조했다.

이와 관련 네이버 측은 “이미 인지하고 있던 취약점이었으며, 패치 일정을 조율중인 상황이었다”며, “해당 페이지는 개인정보와 전혀 관련 없고, 서비스 중에서도 영향도가 적어 위험도가 낮다고 판단하고 있지만, 문제가 제기된 만큼 서둘러 패치를 완료한 상황”이라는 입장을 전했다.
[민세아 기자(boan5@boannews.com)]

<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>