3대 웹 공격을 조심하라

웹 공격 개요도
웹 공격 개요도

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

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

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

 

 본지와 호서전문학교 사이버해킹 보안과가 가장 간단하면서도 심각한 사태를 불러올 수 있는 SQL 인젝션과 웹 셸, XSS 스크립트 3가지 웹 공격을 시연해 본 결과, 이들 공격이 성공하기까지 걸린 시간은 5분 미만에 불과했다.

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

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

 실제로 이 학교 사이버해킹보안과 학생들이 해커와 방어자 역할을 맡아 시연해본 결과, SQL 인젝션 공격에 걸린 시간은 총 5분, 웹 셸 공격은 3분, XSS스크립트 공격은 단 1분 만에 관리자 권한 획득 및 개인정보 탈취가 가능했다.

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

 SQL 인젝션, XSS스크립트 공격을 방어하기 위해서는 사용자가 입력하는 입력 값을 서버에서 필터링하도록 설정하면 된다. 이런 설정은 아주 간단하지만 설정하지 않은 서버들이 상당수다. 웹 셸이 심어지지 않게 하기 위해서는 게시판 디렉터리에 쓰기 권한만 주고 실행 권한을 제어해야한다. 서버 출하 시 기본적으로 실행 권한이 설정되어 나오기 때문에 관리자가 이를 찾아 제거해야 한다. 하지만 국내 중소형급 인터넷사이트에서 거의 그대로 제거하지 않고 사용된다. 해커가 노리는 먹잇감이다.

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

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

웹 쉘 업로드 화면
웹 쉘 업로드 화면
1. 취약점이 있는 웹 페이지의 소스를 보고, 공격 대상 페이지를 탐색, 파라미터 값을 찾는다. (10초)
1. 취약점이 있는 웹 페이지의 소스를 보고, 공격 대상 페이지를 탐색, 파라미터 값을 찾는다. (10초)
3. 서버에 있는 회원 DB를 탈취한다. (5분)
3. 서버에 있는 회원 DB를 탈취한다. (5분)
2. URL을 통해 기본 우회 기법을 사용한 공격을 감행, 회원 DB에 있는 첫 번째 ID로 로그인 된다. (1분 )
2. URL을 통해 기본 우회 기법을 사용한 공격을 감행, 회원 DB에 있는 첫 번째 ID로 로그인 된다. (1분 )