세상 모든 보안 이야기

보안 백과사전

좌우로 움직여보세요

보안 위협

포스팅 뷰495

웜의 정의

웜(Worm)은 다른 프로그램에 독자적으로 실행되어 네트워크를 통해 자신을 복제하는 악성코드이다.


자신을 복제한다는 점은 바이러스와 비슷하지만, 바이러스가 한 컴퓨터 안에 있는 여러 실행 파일 내에 자신을 복제하는 것과 달리 웜은 다른 프로그램에 기생하지 않고 독자적으로 실행되면서 네트워크로 연결되어 있는 다른 컴퓨터에 자신을 복제한다. 복제가 매우 빠른 속도로 이뤄지므로 네트워크 트래픽이 급격히 증가하여 웜에 감염되면 종종 사내 네트워크가 마비되거나 아예 인터넷이 마비되는 피해가 발생하기도 한다.


웜이 사용자의 개입 없이 네트워크를 통해 복제되기 위해서는 운영체제나 DBMS의 취약점이 있어야 한다. ‘웜 바이러스’라는 표현을 쓰는 사람도 있는데, 이것은 바이러스를 악성코드의 의미로 사용할 때만 맞는 용어이고, 웜과 바이러스가 각기 악성코드의 한 종류를 나타낸다고 보면 틀린 용어이다.


웜 피해 사례

  • 슬래머 웜(Slammer worm)
    • 2003년 1.25 인터넷 대란을 일으킨 웜이다. 마이크로소프트의 윈도2000용 DBMS인 SQL Server 2000의 취약점을 공격해 순식간에 국내에 퍼졌고, 폭발적으로 늘어난 UDP 트래픽으로 인터넷의 해외 관문인 혜화전화국의 DNS(Domain Name Service) 서버가 다운되면서 인터넷이 마비되었다.


  • 워너크라이 랜섬웨어 사례
    • 2017년 5월 세계를 강타한 워너크라이 랜섬웨어는 SMB(Server Message Block) 취약점이 있는 윈도OS를 공격하여 네트워크를 통해 자신을 복제하는 웜 기능을 갖고 있어서 세계적으로 피해가 컸다. 이메일이나 외부 접속을 통해 워너크라이가 회사 내부로 유입하면 SMB 취약점을 통해 순식간에 사내 퍼져서 랜섬웨어로 암호화되는 피해가 발생하였다.


웜 대응 방안

웜은 보안취약점을 통해 확산되므로 운영체제나 DBMS 등에 있는 보안취약점을 패치를 통해 제거해야 한다. 발표된 취약점의 심각도에 따라 고객 서비스용 서버의 운영체제나 DBMS도 신속하게 패치하는 체계를 갖춰야 한다.