3대 웹 공격을 조심하라 … `SQL 인젝션 · 웹 셸 · XSS 스크립트` 5분안에 다뚫려

관련 통계자료 다운로드 웹 공격 시나리오(SQL 인젝션+웹 셸)

 #. 해커가 SQL인젝션(SQL injection) 공격을 감행했다. 10초 만에 서버에 침입했다. 이후 DB에 있는 개인정보를 찾아 탈취하기까지 걸린 시간은 단 5분.

 #. 해커가 웹 셸을 실행하자 DB 개인정보를 긁어가는 것은 물론, 시스템의 모든 정보를 빼 갈 수 있었다. 백도어를 만들어두고 수시로 서버에 드나들 수 있게 설정했다. 이 모든 과정에 걸린 시간은 3분여 가량.

  #. 해커가 ‘관리자님 질문 있습니다’라는 제목을 달고 게시판에 자바스크립트 구문을 삽입한 글을 올리는 ‘XSS스크립트’ 공격을 실행했다. 관리자가 그 글을 클릭한 순간 관리자의 PC는 해커의 손아귀에 넘어갔다. 해커는 관리자 PC의 쿠키를 모두 가로채는 형태로 서버 권한을 획득, 서버에 있는 정보를 훔쳐갔다. 여기에 걸린 시간은 1분.

 

  로그인창이나 게시판에 특정 문자열을 입력했을 때 나타나는 오류를 이용, 개인정보를 탈취하고 악성코드를 삽입하기 위한 SQL인젝션 공격에 불과 5분이 소요됐다.

 웹 서버에 명령을 실행해 관리자 권한을 획득하는 웹 셸 공격에는 3분이, 악성코드를 유포하거나 특정 사이트로 사용자를 유도하는 XSS 스크립트 공격에는 겨우 1분이 필요했다.

 본지와 호서전문학교 사이버해킹 보안과가 가장 간단하면서도 심각한 사태를 불러올 수 있는 SQL 인젝션과 웹 셸, XSS 스크립트 등 3가지 웹 공격을 시연해 본 결과, 이같이 나타났다.

  SQL인젝션 공격은 최근 리딩투자증권에서 개인정보를 도난당한 방식이다.

  이종락 호서전문학교 사이버해킹보안과 교수는 “SQL인젝, 웹 셸, XSS 스크립트 공격은 일반적으로 해커가 가장 손쉽게 활용하는 3대 웹 공격 방법”이라며 “쉽고 빠른 공격인 반면에 그 피해는 매우 치명적”이라고 말했다.

  실제로 이 학교 사이버해킹보안과 학생들이 해커와 방어자 역할을 맡아 시연해본 결과, SQL 인젝션 공격과 웹 셸 공격, XSS스크립트 공격으로 관리자 권한을 획득하고 개인정보 탈취하는 데 1분에서 5분이면 충분했다.

  이 교수는 “SQL 인젝션은 DB 구조를 알아내어 직접 SQL 구문을 실행시켜야 하기에 초보자는 주로 툴을 이용한다. 가장 많이 알려진 툴은 HDSI라는 중국에서 만든 툴이며 웹 셸은 ‘ASPShell’이 주로 이용된다”며 “구글에서 약간의 컴퓨터 지식만 있으면 쉽게 무료로 구할 수 있다”고 설명했다.

  SQL 인젝션, XSS스크립트 공격을 방어하기 위해서는 사용자가 입력하는 입력 값을 서버에서 필터링하도록 설정하면 된다. 이런 설정은 아주 간단하지만 설정하지 않은 서버들이 상당수다.

 웹 셸이 심어지지 않게 하기 위해서는 게시판 디렉터리에 쓰기 권한만 주고 실행 권한을 제어해야한다. 서버 출하 시 기본적으로 실행 권한이 설정되어 나오기 때문에 관리자가 이를 찾아 제거해야 한다.

 하지만 국내 중소형급 인터넷사이트에서 거의 그대로 제거하지 않고 사용된다.

 김덕수 펜타시큐리티 연구소장은 “지난해 자사에서 조사한 하반기 웹 공격동향 보고서에 의하면 주요 웹 공격 1~2위를 차지하는 것이 인젝션 공격을 포함한 SQL인젝션 공격 기법”이라며 “웹 공격은 관리자의 주의 및 웹 방화벽 등과 같은 보안솔루션으로 충분히 방어 가능하다. 간단한 공격에 소중한 정보를 탈취당하지 않도록 관심을 기울여야 할 것”이라고 말했다.

  장윤정기자 linda@etnews.co.kr