보안 제품정보


웹 해킹, 개발자 책임 크다! 2006.03.20

홈페이지변조, 공개 웹 소프트웨어 취약점 공개가 주요인

호스팅 업체-홈페이지 운영자, 보안인식 부재와 지식 부족


지난해 1월 한 달간 국내 홈페이지 변조사고가 2004년 전체 사고 건수보다도 많이 발생하는 등 급격히 증가했다. 이러한 홈페이지 변조 사고의 증가는 홈페이지 웹 호스팅 서버환경에서 많이 사용하고 있는 공개 웹 소프트웨어 취약점이 공개된 점이 주요 원인이다.


해당 취약점은 이미 국내 해커 사이에서는 어느 정도 알려진 취약점이었지만 해외 보안 사이트에 취약점이 공개된 이후부터 해당 취약점을 이용하는 해외 해커그룹이 늘어남에 따라 지난해 상반기에만 1만 3214건의 변조사고가 발생하는 등 많은 피해가 발생했다.


KISA 인터넷침해사고대응지원센터 성재모 팀장은 “이런 홈페이지 변조사고는 제로보드 등이 공개 웹 소프트웨어의 보안 취약점에 대한 패치를 하거나 PHP의 설정을 변경해 막을 수 있는 문제이지만 웹 호스팅 업체와 홈페이지 운영자들의 보안인식 부재와 지식 부족으로 인해 홈페이지 변조사고가 지속적으로 발생하는 주요 원인이 된다”고 밝혔다.


또한 그는 “홈페이지 변조에 이용된 취약점은 공개 게시판 프로그램인 제로보드의 취약점으로 이미 이에 대한 보안 패치을 발표했고 보안 대책도 공지 했지만 실제 시스템을 운영하는 관리자와 홈페이지 운영자의 보안에 대한 관심 없이는 피해사고를 예방할 수 없다”고 덧붙였다.


공격에 이용되는 제로보드의 취약점은 원격 사이트의 PHP 파일을 로컬 시스템에서 구동시킬 수 있는 PHP Injection 취약점으로 공격자는 이 취약점을 이용해 피해 시스템에서 웹서버 권한으로 임의의 명령을 실행할 수 있다.


한편 대형 포털 사이트, 뉴스 사이트 등의 웹사이트들이 해킹을 당해 악성코드가 삽입되는 사고가 발생했다. 이러한 공격은 주로 중국에 할당된 IP블록으로부터 발생되는 경우가 많은데 이는 온라인 게임 아이템이 현금으로 거래되고 있어 게임 아이템을 불법적으로 획득하기 위한 목적으로 해킹을 하는 것으로 보인다.


이에 대해 성재모 팀장은 “웹서버의 보안성을 강화하기 위해서는 보안 솔루션의 도움을 받는 것도 하나의 방법이지만 기존의 전통적인 보안 솔루션인 방화벽이나 IDS는 웹 공격을 탐지해 차단하기에는 한계가 있으므로 웹 전용 보안 솔루션의 도입이 웹 보안 강화에 도움이 될 수 있다”며 “웹 방화벽과 웹 취약점 스캐너 솔루션으로 웹 트래픽을 감시ㆍ분석하고 공격 트래픽을 차단하고 홈페이지에 존재하는 공격 가능한 취약점을 사전에 찾아서 차단해야 한다”고 밝혔다.


또한 그는 “최근 홈페이지 해킹은 단순 홈페이지 변조 수준이 아니라 해킹한 홈페이지를 이용해 고객의 게임 비밀번호 유출, 금융정보 유출 등 범죄적인 성향으로 바뀌고 있다”며 “공격 방법도 공개 웹 게시판의 취약점 이용, 웹서버 설정 오류, SQL Injection 등 개발 오류 등과 같이 다양한 취약점들에 대해 공격하고 있으므로 기업의 전반적인 웹 보안 현황을 점검해 보완할 필요가 있다. 이제는 인터넷상에서 고객의 개인정보를 지키고 기관의 신뢰를 유지하기 위해 홈페이지보안 관리에도 각별히 신경을 써야 할 때”라고 덧붙였다.


< 홈페이지 침해사고 대응 방안 >


■ 사용자 입력 값 검증(SQL Injection 취약점 제거)

SQL Injection 공격을 방어하기 위해 사용자 입력값이나 URL 인자값에 대한 검증이 우선시 돼야 한다. 데이터베이스와 연동하는 스크립트의 모든 파라미터들을 점검하여 사용자의 입력값이 SQL Injection을 발생시키지 않도록 수정한다.


■ 불필요한 확장 저장 프로시저 제거

MS-SQL 서버에서 제공하는 있는 확장 저장 프로시저 중 사용하지 않는 프로시저들을 제거하도록 한다. xp_cmdshell, xp_regread, xp_dirtree와 같은 프로시저들은 공격자에 의해 이용될 수 있으므로 제거한다.


■ 업로드 취약점 제거

업로드 파일을 위한 디렉토리의 실행설정 제거 업로드파일을 위한 전용 디렉토리를 별도 생성해 웹 서버 설정 파일에서 실행설정을 제거함으로써 Server side Script가 업로드 되더라도 웹 엔진이 실행되지 않게 환경을 설정한다.


< 네트워크 장비에 대한 침해사고 대응 방안 >


네트워크 장비의 디폴트 로그인 패스워드 취약점에 대한 가장 기본적인 대책은 출고시에 설정된 로그인 패스워드를 변경하는 것이다. 또한 네트워크 장비에 대해 원격지로부터의 telnet 서비스 접근을 차단하거나 특정 관리자 IP에서만 접속할 수 있도록 허용해야 한다.


■ 불필요한 원격접속 서비스 제거

자신이 관리하고 있는 네트워크 장비들에 원격지에서 텔넷등 원격 접속 서비스가 제공되고 있는지 점검한다. 이는 nmap, superscan 등 공개용 포트 스캐너를 이용하면 쉽게 확인할 수 있다. 텔넷 뿐만 아니라 전체 시비스 포트에 대해 점검을 하고 불필요한 서비스가 제공되고 있을 경우, 이를 제거할 필요가 있다. 텔넷 서비스도 원격지에서 접속할 필요가 없을 경우 서비스를 disable 시키는 것이 안전하다.


■ 배너정보 숨기기

텔넷 접속시 네트워크 장비의 배너에는 장비명과 소프트웨어 버전등 장비에 대한 상세한 정보가 제공되는 경우가 있다. 이러한 배너 정보는 공격자에는 공격을 위한 아주 유용한 정보가 될수 있고 이 정보를 이용하여 해당 장비의 디폴트 로그인 패스워드로 공격을 시도할 수 있다.


■ 디폴트 로그인 패스워드 변경

CISCO 라우터에 사용되는 모든 패스워드는 초기 setup 모드에서 설정할 수 있으며 config 모드에서도 간단한 명령어를 사용하여 설정할 수 있다. CISCO 라우터에서 Virtual Terminal 패스워드는 원격지에서 텔넷 접속을 가능하게 하는 패스워드로 Virtual Terminal 패스워드가 정의되지 않으면 텔넷을 사용할 수 없다. CISCO 라우터에서는 원격 텔넷 접속시 다음과 같이 패스워드를 설정할 수 있다.


■ 소스 IP별 접근통제

디폴트 로그인 패스워드를 변경해도 공격자에 의한 ‘Brute Force’ 공격 등에 의해서 패스워드가 공격받을 위험성이 도사리고 있다. 네트워크 장비에 대한 텔넷 접근은 일반인들에게 불필요한 서비스이므로 가능한 관리자 시스템에서만 접근할 수 있도록 소스 IP별 접근통제를 할 필요가 있다. 홈페이지 운영 중에 발생되는 보안 문제점에 대한 수시조치 보다는 홈페이지를 최초 설계ㆍ개발하는 단계에서부터 보안이 고려돼야 한다.


웹 개발자들은 KISA에서 작성 배포하고 있는 ‘홈페이지 개발 보안 가이드’를 참고해 홈페이지 개발 과정에서부터 공격 가능성이 있는 다양한 취약점에 대해 보안조치를 할 의무가 있다.


홈페이지 개발 보안 가이드는 다음 사이트에서 배포하고 있다.

www.kisa.or.kr/news/2005/announce_20050427_submit.html

[박은수 기자(boannews@infothe.com)]


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