들어가기에 앞서, 본 글은 전산/컴퓨터 전공자도 아니고 그렇다고 OS/네트워크 등의 컴퓨터 지식이 해박한 사람이 아닌, 비 전공 대학생이 쓴 글이기 떄문에 내용상에 오류가 있을 수 있음을 알려드립니다. 최근 발생한 "7.7 인터넷 대란"에 대한 궁금증을 풀어보고, 다른 분들에게 정보를 제공하기 위해 쓴 글이므로 내용상에 오류가 있다면 따끔한 지적 부탁드리겠습니다. 2009년 07월 07일 오후, 학교 도서관에 있던 필자는 웹 메일 확인을 위해 아이팟 Wi-Fi로 포털사이트 메일계정에 접속을 시도하였다. 그런데 접속이 지연이 되는것이 아닌가? 계속되는 장애에 단순히교내 네스팟 AP로부터 문제가 있다고 생각했다. 그날 저녁 집에 들어서자마자 어머니께선 “아들~ TV에서 인터넷이 이상하다고 하네? 무슨 말인지 도통 모르겠어~뉴스 봐봐”라고 말씀하시는게 아닌가. “(”무슨 말씀이시지..“라고 생각하며) 그래요? 어차피 메일 확인할게 있어서 컴퓨터 켜는데, 웹에서 기사 좀 찾아볼께요.”라고 별 생각 없이 답하였다. PC를 켜자마자 어머니와의 그 약속(?)은 잊은 채 메신저에 접속하였고 몇 일전 대화상대 등록 후 한 번도 대화를 못 나눴던 안랩 커뮤니케이션팀 차장님이 계신게 아닌가. 등록을 했는데 한번은 인사를 드려야지 예의(?)지 라고 혼자 중얼거리며 “설마 이 늦은 시간까지 업무 보시는건 아니시지요?”라는 말로 대화창을 열었고 이어지는 차장님의 대답.... “회사에요~ 언론 대응 하느라 너무 바쁘네요” 잠깐의 정적 후 순간 머리를 스치는 어머니의 말씀! 부랴부랴 포털사이트에 접속하여서 시선을 이리저리 바쁘게 움직였다. 아니나 다를까 헤드라인을 장식한 “국내 사이트 대거 접속불가 현상”이란 제목의 기사문, 리고 DDoS라는 매우 익숙한 키워드가 눈에 보이는 것이 아닌가. 당연히 익숙 할 수밖에 없었다. 분산서비스 거부(Distribute Denial of Service)의 약자인 DDoS는 매일 읽는 IT 신문과 IT 커뮤니티에서 보안상 취약점으로 기사문이나 대화 주제로 많이 다뤘던 내용이다.
위에서 DDoS 공격을 "사이트에 많은 이용자들이 한꺼번에 접속해 서비스를 중단시키는 공격"이라 간략히 설명 하였는데 한 줄로 DDoS 공격을 설명하기엔 부족하다. 이번 글에서 대학생 기자 입장에서 본 DDoS 공격에 대해 쉽게 풀어보았다. 글쓰기에 앞서 기술적 표현 잘못되거나 및 구성이 미흡할 수 있다. 지적 사항이 있으면 따끔히 해주시길 바라며 DDoS 공격은 어떻게 이뤄지는지 자세히 들어가보도록 하겠다. 간단한 예로 DDoS 공격에 대한 개념 설명을 시작하겠다. 우리가 흔히 쓰는 말 중에 하나가 “인터넷을 하다”라는 말인데, 이 말이 담고 있는 의미가 무엇일까? 검색이면 검색엔진을 뉴스나 커뮤니티 등을 즐기면 포털 사이트를 물건을 살 떄는 인터넷 쇼핑몰 웹사이트에 방문하여 원하는 서비스를 제공받는다. 서비스를 제공하는 업체들은 SERVER(서버) 라고 불리는 대용량 컴퓨터를 배치해 놓는다. 무엇인가 검색하기 위해 ‘야후’라는 검색엔진 서비스에 접속한다고 하자. 웹브라우저에 http://google. google.co.kr에 대한 ping test를 하면 아래와 같이 google.co.kr의 실제 주소인 72.14.203.104로 32byte크기의 패킷을 주고 받는것을 확인 할 수 있다. 우리가 PC(이하 Clinet;클라이언트라 표시)로 인터넷 주소와 맵핑된 IP주소로 접속 요청을 하면 서비스 업체의 컴퓨터(이하 Server;서버라 표시)는 응답하여 클라이언트가 요청하는 Query(질의)를 수행하고 결과를 Client에 보내게 된다. 이와 같이 서버가 이렇게 무한정 자원을 제공하고 처리할 수 없는 점을 이용, 수많은 접속 시도를 통해 다량의 패킷(Packet)을 보내어 해당 시스템의 자원을 부족하게 만들어 정상적인 서비스를 불가능하게 만드는 것이다.
DoS 공격으로 초래되는 피해는 크게 세가지로 나뉜다.
DDoS 공격이 어떻게 진행되는지 알아보겠다.
Attacker(공격자 혹은 공격 근원지)가 Master라 불리우는 C&C(Command & Control)서버를 두고 불특정 다수의 PC에 악성코드를 배포하여 감염시킨다. 수백대에서 수만대에 이르는 PC가 숙주(bot)가 되어버리고 이들이 네트워크로 묶여 봇넷(Botnet)이 된다. 중간 사령부격인 C&C 서버는 Bonet과 통신을 통해 공격 시간과 공격 대상을 담은 명령을 하달한다. 7·7 인터넷 대란을 일으켰던 DDoS 변종 공격은 C&C 서버를 통해 PC에 감염되는 악성코드에 사전에 공격 대상과 시간을 담은 스케쥴이 포함되어있어 C&C 서버와의 통신 없이도 계획된 시간에 지정된 목표를 공격이 가능하다는 것이다.
- 7월 7일 DDoS 공격은 어떻게 시작되었는가? 최초 감염은 msiexec.exe라는 파일이 DDoS 공격을 수행하는 악성코드에 감염되면서 시작되었다. 이 파일은 MS社의 Windows 구성요소 중 install과 관련된 파일이며 C:\Windows\system32 경로에 존재하는 Windows에서 Microsoft Install 실행 화일로 install(프로그램 설치)과 관련된 역할을 하는 정상 파일이다.
- 어떤 경로를 통하여 감염이 되었나? 현재 보도된 바로는 웹하드 서비스를 제공하는 서울의 ‘P’업체와 부산의 ‘D' 업체라고 밝혀졌다. 공격자는 웹하드 서비스 업체의 서비스 서버에 침입하여 웹하드 프로그램 업데이트 파일에 악성코드를 심어 놓고 웹하드 서비스를 이용하는 사용자의 PC는 수행 시 자동으로 업데이트되면서 악성코드가 타겟으로 하는 msiexec.exe 파일을 감염 시켜버린다. 사용자의 의사 결정 없이 자동으로 수행되는 웹 하드 프로그램의 특징을 악용한 결과이다.
이런 경로를 통해 감염된 사용자 PC의 msiexec.exe는 Master(C&C 서버)에 최초로 접속하게 되는데, 이떄 msiexec1.exe, msiexec2.exe, msiexec3.exe 파일을 내려받게 된다. ‘msiexec1’ 라고 명명된 실행파일(exe)은 * uregvs.nls(V3 진단명 Win-Trojan/Agent.24576.AVC ) 아래 화면은 uregvs.nls를 생성하는 msiexec2.exe 파일이 담고 있는 공격 리스트이다.
* wmiconf.dll(V3 진단명 Win-Trojan/Agent.67072.DL) - DDoS에 이용되는 트래픽을 발생시킨다. 실제적으로 공격을 하는 파일이다. miconfig를 windows 서비스에 등록시킨후 uregvs.nls에서 공격대상을 읽어 DDoS 공격을 수행한다. AhnLab의 ASEC 분석자료에 의하면 감염시스템에서 초당 1050패킷/100KB발생을 하며, 공격받는 시스템에선 초당 100패킷/7KB 정도의 네트워크 트래픽을 발생한다고 나와있다. wmiconf.dll 외에도 공격파일로 알려진 perfvwr.dll도 동일한 동작을 수행한다고 한다. * vme.bat (V3 진단명 Win-Trojan/Agent.24576.AVC )
* wmcfg.exe (V3 진단명 Win-Trojan/Downloader.374651) * mstimer.dll (V3 진단명 Win32/Mydoom.worm.45056.D) * flash.gif (V3 진단명 BinImage/Destroyer) * Wversion.exe (V3 진단명 Win-Trojan/Destroyer.37264) 위 그림은 악성코드가 감염된 msiexec.exe로 부터 파생된 msiexec1.exe, msiexec2.exe,msiexec3. exe 중 msiexec1이 어떻게 움직이는지 나타낸다.msiexec2.exe와 msiexec3 모두 동일한 방식으로 움직인다고 한다. 다만 각 msiexec*.exe(*=1~3)가 포함한 uregvs.nls파일이 담고 있는 공격 대상 리스트는 각각 다르며 msiexec2와 msiexec3 중 트래픽을 발생시키는 wmicong.dll이 포함되지 않는것도 있다고 한다. 이런 경우 기존에 msiexec1.exe에 의해 미리 생성된 서비스를 이용해 자신의 공격리스트(uregvs.nls) 기반으로 공격을 수행하는것으로 예측된다. 자신의 PC가 DDoS 공격에 이용되는지 확인할 수 있는 방법이 있는가? 자신의 PC가 DDoS 공격의 무기로 이용됬다는 사실이 조금 충격적이지 않는가? 감염 PC가 늘어나면 날수록, 그리고 목표 대상의 범위가 크면 클수록 인터넷 대란이 아닌 인터넷 재앙으로 만들 수 있는 공격 기법이다. 지금 DDoS 공격을 유발하는 악성코드를 찾으려 시스템 검사를 하거나, 혹은 검사를 통해 뒤늦게 발견하여다고 해보자. 계획된 공격 스케쥴이 끝난 지금 어쩌면 무의미(?)한 일 일수있다. 하지만 명심해야 할것은 위에도 설명하였듯이 uregvs.nls에 담긴 스케쥴대로 움직였다는 것이다. 이 말은 스케쥴이 추가가되면 언제든지 재 공격이 이루어질수 있다는 사실이다. 따라서 아직까지 감염된 PC에서 악성코드를 제거하는것은 반드시 필요한 작업이며, 관련기관에서는 악성코드를 담고 있는 PC가 인터넷망에 접속시 별도로 조치를 취해 제거해가고 있다고 한다. 자신이 사용하는 최신엔진의 백신으로 스캔하는 방법도 있지만 별도의 전용백신을 소개하고자 한다. 아래는 안철수연구소에서 제공하는 DDoS 전용 백신이다. "전용백신 다운드로" 아이콘을 눌러 다운
출처: http://kr.ahnlab.com/dwVaccineView.ahn?num=81&cPage=1 실행 후 '검사 시작'을 누르면 지정된 모든 디렉토리를 검색하여 악성코드를 색출하게된다. 7.7 인터넷 대란의 피해규모는 어느정도 인가? 사이버테러대응센터에 따르면 이번 DDoS 공격으로 피해를 본 사이트의 수는 총 35곳(국내 21곳, 해외 14곳)으로 피해 규모는 정확히 측정하기 힘들정도이다. 특히 기업의 경우 경제적 피해가 막대한데 7월 8일 복구된 옥션(Auction.co.kr)의 경우 하루 동안 영업을 하지 못해 큰 손실을 보았다. 지난해 이 회사 연간 매출액은 2조 7천억원으로 하루 평균 매출액이 약 74억원이었음을 감안할 때 상당한 피해를 입은 셈이다. 또한 7월 10일 00시를 기점으로 하드디스크의 MBR 파괴로 인해 발생한 개인 사용자의 피해도 막대한 것으로 예상된다. 분산서비스거부(DDoS) 공격은 차단할 수 없는 것인가? 공격을 차단하기 보다는 예방하고 공격이 발생할 경우 피해를 최소화시킨다는 표현이 옳다고 생각한다. 서비스를 제공하는 한 24시간 내내 수많은 곳에서 이용자들이 접속하여 트래픽을 발생시키기 떄문에 서비스 제공자 쪽에서 정상적인 트래픽인지 아닌지를 가려내기란 매우 어렵다. 공격자인 Bonet PC 들은 동일한 프로토콜의 절차 및 규칙을 사용해 DDoS 공격을 시도하기 때문에 보편적인 보안장비인 방화벽이나 침입방지시스템(IPS)이나 고성능 통합위협관리솔루션(UTM) 등에서 원천 차단이 불가능하다. 즉 DDoS 공격은 고정 시그니처로 차단할 수 있는 취약점 공격이 아닌 일반적인 통신 환경상에서 사용할 수 있는 극히 정상적인 변수값을 이용하는 비취약점 공격이기 때문이다. 또한 공격자들의 공격 유형이 보다 체계적이고 다양한 접근 방법으로 변형되고 순환되고 있기에 기존의 보안장비로는 DDoS 공격 차단이 쉽지 않다. 다음은 피해를 최소화 할 수 있는 방안을 몇 가지 정리해보았다. - 웹페이지 탐색 중 Active X ‘보안경고’ 창이 뜰 경우, 신뢰할 수 있는 기관의 서명이 있는 경우에만 - P2P 방식의 공유 어플리케이션 사용을 가급적 피하고, 이용시 내려받은 파일은 반드시 백신 필터링 - 메신저를 통해 요청하지 않는 URL이나 파일을 받은 경우 보낸이에게 직접 확인 후 실행한다. - DDoS의 특정 패턴 분석이 가능한 Anti DoS 솔루션 설치와 운영으로 공격 전·중에 방어가 가능하도록 - 안정적인 네트워크의 설계로 일정량 이상으로 패킷이 라우터로 들어올 경우 각 - 시스템으로 분산시켜 균형을 조절하거나 패킷을 차단할 수 있도록 한다. - 홈페이지의 철저한 보안 관리로 웹페이지의 취약점을 노려 사용자들에게 악성코드를 전이 시키는것 - 시스템에 대한 지속적인 패치(서비스팩, 핫픽스 등..)로 최신 보안 상태를 유지한다. - 충분한 인원을 배치하여 실시간으로 서버 트래픽 상태를 모니터링한다. - 공격이 일어났을 때 어느정도 완충 역할이 가능한 대용량 시스템을 구축 혹은 공격을 우회할 수 있는 국가, 정부는 - 발생 시에만 구성되는 TFT(Task Force Team;대책본부)가 아닌 정부 산하 위기 대응반을 설립하여 - 국민의 안전한 PC사용에 관한 공익광고나 교육자료등을 배포 및 교육활동을 펼친다. DDoS 공격으로 인한 7·7 인터넷 대란이 주는 시사점은 무엇인가? 2003년 1월 25 인터넷 대란 이후 또 한번의 재해를 겪은 우리나라.
첫쨰로, 일반 이용자들은 DDoS 공격에 대한 개념을 자세히 아는 계기가 되었음은 물론 개인 부주의로 인해 발생한 보안상의 취약점으로 개인 PC가 공격에 이용되어 엄청난 피해를 발생하였음을 인식, 보안에 대한 관심과 이해도를 높이는 계기가 되었다고 생각한다. 두 번쨰로, 서비스 제공 업체는 평소 간과하던 보안 문제가 일으킨 피해를 통해 큰 교훈을 얻었고, 보안 인프라 구축에 대한 필요성 인식은 물론 관련 예산안을 증액하여 더 많은 투자를 할것으로 기대된다. 세 번쨰로, 국가는 이번 피해를 계기로 다시 한번 보안 인프라 확충의 필요성을 느꼈으며 양적인 발전보다는 질적인 발전을 위해 정부 차원의 관련 정책 수정 및 마련, IT 서비스 업체에 대한 지원 등으로 보안 인프라 후진국이라는 불명예를 씻어내기 위해 다각적인 노력을 기울일것으로 예상된다. 최근 경기불황으로 인한 IT투자 위축 현상으로 오히려 보안위협 노출의 가능성을 증가시키고 있다는 우려의 목소리가 높다. 특히 각종 보안사고가 끊이지 않은 요즘 무조건적인 투자 축소보다는 최적의 비용으로 높은 효율성을 제공하는 인정받은 검증된 솔루션을 도입하는 것은 현명한 선택임은 틀림없다. |
'Article & Review' 카테고리의 다른 글
<7.7 인터넷 대란>대학생이 분석한 DDoS 공격 분석 (2) | 2009.08.21 |
---|---|
중급 유저가 V3 365 클리닉 사용해보니 (0) | 2009.06.25 |
게임 해킹, 온라인 게임산업 발전의 걸림돌 (0) | 2009.06.13 |
친구가 보낸 쪽지. 잠깐! 이것만은 조심하자! (0) | 2009.05.06 |
