컴퓨터 웜

From Hidden Wiki
Jump to navigation Jump to search

Template:다른 뜻 Template:정보 보안 사이드바 컴퓨터 웜(computer worm)은 스스로를 복제하는 악성 소프트웨어 컴퓨터 프로그램이다. 컴퓨터 바이러스와 비슷하다. 바이러스가 다른 실행 프로그램에 기생하여 실행되는 데 반해 은 독자적으로 실행되며 다른 실행 프로그램이 필요하지 않다. 은 종종 컴퓨터의 파일 전송 기능을 착취하도록 설계된다. 컴퓨터 바이러스와 웜의 중요한 차이점은 바이러스는 스스로 전달할 수 없지만 웜은 가능하다는 점이다. 웜은 네트워크를 사용하여 자신의 복사본을 전송할 수 있으며, 어떠한 중재 작업 없이 그렇게 할 수 있다. 일반적으로 웜은 네트워크를 손상시키고 대역폭을 잠식하지만, 바이러스는 컴퓨터의 파일을 감염시키거나 손상시킨다. 바이러스는 보통 네트워크에 영향을 주지 않으며 대상 컴퓨터에 대해서만 활동한다.



Worm

|| 2000년대 초에 유행했던 블래스터 웜[* 진단명 Win32/Blaster.worm] 바이러스. [br]감염되면 무작정 시스템 종료 메시지를 뿌리는 것으로 악명 높았다.[* 이유는 RPC(Remote Procedure Call; 원격 프로시저 호출) 버퍼가 데이터의 크기를 검사하지 않는다는 허점을 이용해서 RPC버퍼를 꽉 채워 과부하를 일으키고 강제 재부팅을 일으키는 원리다. 그리고 윈도우즈는 과부하로 다운된 RPC버퍼를 되돌리기 위해 재부팅을 해야하기 때문.] ||

개요

다른 프로그램에 감염되어 전파되는 컴퓨터 바이러스와는 달리 자체적으로 실행되면서 다른 컴퓨터에 전파가 가능한 프로그램. 대한민국에서는 '인터넷 웜', '컴퓨터 웜'등으로 불리기도 한다.

기능 및 피해

웜은 일반적인 바이러스와 달리 네트워크를 사용하여 스스로 복사본을 전파할 수 있다. 이들은 또한 자기 복제를 이용하여 네트워크를 손상시키고, 파일 등을 악의적으로 암호화한다. 일부 웜의 경우 악성 백도어 프로그램을 유포하기도 한다.

네트워크를 통해 전파되기에 과도한 네트워크 트래픽을 유발시킨다. 웜이 전 세계 네트워크로 퍼질 경우 심각한 속도 저하 또는 마비가 우려될 수도 있다. 백도어를 유포시키는 웜의 경우 추가적인 좀비 PC 양산 등의 피해를 낳기도 한다.

다음은 마이크로소프트에서 제공하는 웜 감염 사례와 예방책을 다이어그램화한 것이다.

||

width=100%|| ||<)>,,출처: Microsoft,,||

감염 경로

주요 감염 경로는 E-Mail, 공유 폴더, 특정 네트워크 포트 등이 있다. 특히 운영체제보안 취약점을 이용하는 경우가 많으니 백신을 설치하는 것 외에도 보안 패치가 나올 때마다 꼬박꼬박 설치하는 것이 매우 중요하다.

컴퓨터 바이러스와의 구분

일반적으로 컴퓨터 바이러스와 웜은 다음과 같은 유사점과 차이점을 가지고 있다.


특징 ||<:>바이러스 ||<:>웜 ||

||<:>자기복제 ||<:>O ||<:>O ||

||<:>독립실행 ||<:>X ||<:>O ||

||<:>전파 ||<:>X ||<:>O ||

||<:>파일감염||<:>O ||<:>X ||

기타

예전에 마이크로소프트에서 미래에는 웜을 이용해서 운영체제 업데이트를 실시할 예정이라고 발표했다가 신나게 까인 적이 있다.[* 다만 이런 아이디어는 리처드 도킨스 역시 진지하게 고려하고 있었다. 더 나아가 미래에는 웜과 호환되는 운영체제만이 살아남을 것이라고 내다보기도 했다. (도킨스의 저서 'Devil's Chaplain'에서) 물론 도킨스는 과학자 겸 과학 저술가이지 컴퓨터 공학자가 아니라서, 이것은 일종의 상상력 발휘 정도일 뿐이지만.]

미국이 이라크를 두들겨 팬 1991년 걸프전쟁에서, 이라크에 수출된 HP프린터에 웜을 심어서 웜이 이라크 군부내의 컴퓨터들에게 퍼졌으며, D-day 전날 웜이 모든 감염된 컴퓨터들을 먹통을 만들어서 방공망을 무력화시키는데 일조를 했다는 이야기가 굉장히 그럴듯하게 퍼져 있으나, 사실이 아니다. 해당 이야기는 1991년 4월 1일, 만우절 장난으로 인포월드라는 매체에 실렸던 내용이 너무 그럴듯하다 보니 와전되어 퍼져 나간 것.

이름의 유래

'웜'이라는 이름은 1975년에 출판한 존 브루너(John Brunner)의 공상과학소설 《더 쇼크웨이브 라이더(The Shockwave Rider)》에서 차용되었다. 초기 분산 컴퓨팅 관련 실험에 대한 논문을 작성하던 연구자들은 그들의 소프트웨어와 브루너에 의해 묘사된 프로그램이 유사하다는 사실에 주목했고, 그래서 '웜'이라는 이름을 채택하였다.

역사

웜은 1978년 제록스 파크(Xerox PARC)의 두 명의 연구자에 의해 최초로 구현되었다.[1] 개발자인 존 쇼크(John Shoch)와 존 허프(Jon Hupp)는 원래 네트워크에서 놀고 있는 프로세서들을 찾아 그들에게 업무를 할당하고 연산처리를 공유하여 전체적인 네트워크의 효율을 높이도록 웜을 설계했다.[2]

많은 주목을 받았던 최초의 웜은 당시 코넬 대학교의 대학원 학생이었던 로버트 터팬 모리스(Robert Tappan Morris)가 개발했던 모리스 웜이다. 이 웜은 1988년 11월 2일에 배포되었는데, 그때 당시 인터넷에 연결된 수많은 컴퓨터들을 빠른 속도로 감염시켰다. 이 웜은 BSD 유닉스와 그것으로부터 파생된 운영 체제들의 많은 버그들을 통해 확산되었다. 모리스는 미국의 컴퓨터 범죄와 남용에 관한 법(Computer Crime and Abuse Act)에 따라 유죄가 선고되어 3년의 집행유예와 400시간의 사회 봉사, 10000달러가 넘는 벌금을 지불했다.



웜은 로버트 모리스가 처음 만들었다. 웜의 시초는 1970년대 말까지 거슬러 올라간다. 처음 나왔을 때는 컴퓨터의 자료를 직접적으로 파괴하기보다는 컴퓨터 안에서 무한정 증식하면서 컴퓨터의 메모리CPU 등 자원을 잡아먹음으로써 이용에 지장을 주는 것이 고작이었다. 그러나 이후 악질적인 행동을 하는 코드가 추가된 웜이 계속 나옴으로써 악성 바이러스와 다름없는 존재가 되었다.

기타 기능

웜은 자기 복제 이외에 많은 다른 일을 하도록 설계된다. 예를 들어 호스트 시스템에서 파일을 지우거나, 파일을 악의적 공격 목적으로 암호화 하거나, 이메일을 통해 문서를 보내는 등의 일을 한다. 최근의 웜은 다양한 곳으로 전달되며 실행파일을 첨부하기도 한다. 그러나 웜은 그런 것들 없이 단지 자기 복제 과정에서 생성되는 네트워크 트래픽만으로도 피해를 줄 수 있다. 예를 들어 마이둠(Mydoom)같은 웜은 최대로 살포되면 세계 전역의 인터넷 속도를 현저하게 느리게 만든다.

일반적으로 웜에 수반되는 것은 감염된 컴퓨터에 백도어를 설치하는 것이다. 소빅(Sobig)이나 마이둠 같은 웜이 그렇게 한다. 이런 좀비 컴퓨터들은 대량의 스팸 메일을 보내거나 그들의 웹사이트 주소를 은폐하는 데 사용된다.[3] 스패머들이 그러한 웜에 대한 대가를 지불하고 있다고 여겨지며[4], 감염된 기계의 IP 주소 리스트를 판매하던 웜 개발자들이 붙잡히기도 했다.[5] 다른 웜 개발자들은 회사를 서비스 거부(DoS) 공격을 한다는 공갈 협박을 시도하기도 하였다.[6] 또한 백도어는 다른 웜에 의해 사용될 수도 있는데, 둠주스(Doomjuice) 같은 웜은 마이둠에 의해 설치된 백도어를 사용하여 자신을 확산시킨다.

평가

웜이 유용한지 여부는 컴퓨터 과학인공지능 분야에서는 일반적인 이론적 질문이다. 예를 들어 나치(Nachi) 웜은 마이크로소프트 웹사이트에서 패치를 다운로드한 후 설치하여, 그들이 사용했던 취약성을 포함한 호스트 시스템의 다양한 취약성을 패치하려고 시도한다. 이는 결과적으로 시스템을 더 안전하게 하지만, 종종 패치를 통해 막고자 한 웜의 네트워크 트래픽보다 더 많은 네트워크 트래픽을 발생시키며, 패치로 인해 시스템을 리부팅하게 하고, 결정적으로 컴퓨터 소유자 또는 사용자의 동의 없이 무단으로 그런 일을 하게 된다. 따라서 보안 전문가는 웜이 어떤 걸 수반하던지 간에 웜에 반대해야 한다.

각주

같이 보기

* 컴퓨터 바이러스
* 악성코드
* 트로이 목마
* 스파이웨어
* 안티 바이러스
* 애드웨어

분류:악성 코드 분류:웜 분류:악성 소프트웨어 분류:악성코드