mir.pe (일반/어두운 화면)
최근 수정 시각 : 2024-10-23 17:29:19

컴퓨터 바이러스

1. 개요2. 역사
2.1. 최초의 바이러스2.2. 탄생 원인
3. 종류
3.1. 나무위키에 작성된 바이러스 문서 목록 (발생연도 순)
4. 대책
4.1. 예방4.2. 감염 후
4.2.1. 증상 발견4.2.2. 안티바이러스의 바이러스 분석 방식
5. 기타6. 관련 문서7. 참고자료

1. 개요

Computer Virus

악성코드(Malware)의 감염 방식 중 하나로, 생물학적 바이러스가 다른 세포 속에 들어가 그 세포를 악성세포로 만들듯이, 컴퓨터 바이러스는 정상적인 프로그램과 코드를 악성코드로 만들며 스스로를 복제하여 컴퓨터 소프트웨어 전체에 전파된다. 주로 바이러스라는 약어로 많이 쓰인다.

가장 대표적인 악성코드였기에 악성코드를 의미하는 유의어로도 사용되었다. 그러나 최근에는 컴퓨터 바이러스 - 트로이 목마 - 웜이 모두 혼합된 신종 악성코드들이 많아져 바이러스와 웜을 칼같이 구분하지 않는다.

바이러스의 단순한 시스템 파괴행위는 상대에게 손해가 될지언정 유포자에게는 이득이 하나도 없다. 이후 PC를 인질로 잡고 돈을 뜯어내어 유포자가 이득을 얻는 랜섬웨어가 등장했다.

2. 역사

컴퓨터 바이러스의 역사는 1970년대 크리퍼 바이러스가 그 시초라 볼 수 있다. 그러나 크리퍼 바이러스는 컴퓨터 파괴 목적보다는 자기복제의 개념에 더 가까웠으며, 엄밀히 구분하자면 현대의 의 개념에 더 가깝다. 또한, 크리퍼가 만들어질 당시에는 이러한 프로그램을 바이러스라 부르지는 않았다. 이러한 프로그램에 바이러스라는 이름이 붙은 것은 미국의 SF작가인 데이비드 제롤드의 소설 할리가 하나였을 때(When Harlie was One)에서 “다른 컴퓨터에 계속 자신을 복제, 감염된 컴퓨터의 운영체제에 영향을 미쳐 점차 시스템을 마비시키는 장치를 한 과학자가 제작해 배포한다”는 개념을 바이러스로 소개하면서부터였다. 이후 1985년 미국에서 컴퓨터를 악의적으로 파괴하는 프로그램이 점차 알려지기 시작하였고[1] 1986년에는 파키스탄에서 브레인 바이러스가 유행하였다.[2] 그러나 이 시절의 바이러스는 현재의 복제 개념이 아닌 이동인 원시적 형태였다.

2.1. 최초의 바이러스

파일:external/upload.wikimedia.org/Rich_Skrenta.jpg
엘크 클로너의 개발자
리처드 '리치' 스크렌타
이동이 아니라 진짜 복제 개념이 들어간 최초의 바이러스는 엘크 클로너(Elk Cloner)라는 프로그램이다. 이는 1982년 경에 만들어졌는데, 놀랍게도 이를 만든 이는 당시 15세였던 리처드 '리치' 스크렌타라는 소년이었다.[3] 이 Elk Cloner는 Apple II 시스템에만 감염되었으며 부팅용 플로피 디스크에 감염되는 일종의 부트 섹터 바이러스였다. Elk Cloner는 부팅된 이후 메모리에 남아있다가 만약 감염되지 않은 새로운 디스크가 컴퓨터에 들어오면 자신을 해당 디스크에 감염시켰다. 이런 식으로 Elk Cloner는 디스크에서 디스크를 통해 감염되는 프로그램이었다. Elk Cloner는 특별히 파괴적인 활동을 벌이지는 않았으며, 감염된 컴퓨터는(정확히는 플로피 디스크) 감염된 뒤 50번째로 부팅하면 다음과 같은 짧은 시를 출력했다.
디스크 이미지 파일 다운로드

초다의 시연 영상
Elk Cloner: The program with a personality
엘크 복제자 : 자아를 가진 프로그램

It will get on all your disks
그것은 너의 모든 디스크를 헤집으며

It will infiltrate your chips
네 칩 속을 드나들지

Yes, it's Cloner!
그래, 바로 복제자다!

It will stick to you like glue
그것은 끈끈이처럼 너에게 들러붙고

It will modify RAM too
램도 휘저어 놓지

Send in the Cloner!
복제자를 들여보내라!

한편 이 Elk Cloner는 실질적으로 별다른 피해를 주는 것은 없었고[4], 이 Elk cloner가 퍼져나간 범위도 개발자인 스크렌타의 주변 인물 정도였기 때문에 이것에 대한 백신이 개발된 적은 없다고 한다. Elk Cloner에 대한 분석

2.2. 탄생 원인

악의적 컴퓨터 바이러스가 세상에 퍼지게 된 경위에는 여러 가지 설들이 있다. 대표적으로 자신의 능력을 과시하기 위해 만들었다는 설[5] , 경쟁사 등에 타격을 주기 위한 상업적 목적으로 만들었다는 설, 소프트웨어의 유통 경로 등을 추적하기 위해 만들었다는 설 등이 대두된다. 그러나 이는 은밀하게 유포되는 바이러스의 특성상 정확하게 구분 짓기는 어렵고 복합적이고 전반적인 경위로 보아야 할 것이다.

3. 종류

바이러스는 크게 부트 영역을 감염시키는 부트(boot) 바이러스, 그리고 본래 숙주 프로그램에 감염되었다가 그 기능을 수행하는 숙주 바이러스로 구분된다. 후기에는 이 두 가지를 합친 복합 감염 바이러스도 등장했다. 바이러스는 만들어진 목적과 의도에 따라 그 종류가 크게 세분화되지만, 대표적으로 감염된 뒤 바로 기능을 수행하는 바이러스, 일정 기간의 잠복기를 거쳐 수행되는 바이러스, 공격자가 프로그래밍한 특정 일자에 실행되는 바이러스가 있다.

일단 종류 자체는 악성 소프트웨어이므로 생물학 분야의 바이러스와는 달리 컴퓨터를 물리적으로 파괴하지는 않는다. 다만 하드웨어를 오작동시켜서 간접적으로 물리적 손상을 입히는 사례는 있다.

바이러스 진단명은 백신이 자체적으로 정하는데 널리 알려진 이름은 쓰지만 구체적으로 국제표준 같은 건 없기 때문에 조금씩 다르다. 이름 뒤에 숫자가 붙는 경우, 이 숫자는 일반적으로 바이러스 코드의 크기로(바이트 단위) 이 크기가 달라지면 변종으로 판정한다. 예를 들면 1992년에 발견되었던 나타스(Natas)라는 바이러스는 Natas.4740, Natas.4744, Natas.4774, Natas.4988이라는 4가지 변종이 존재한다.

ActiveX 그 자체는 바이러스가 아니지만, 해당 플랫폼을 기반으로 작동하면서 안 취약점을 파고드는 바이러스나 스파이웨어가 너무나 많은 데다, 마찬가지로 ActiveX 기반 한국제 보안 프로그램( nProtect 등)들의 무겁기만 무겁고 실제 성능은 영 믿을만하지 못한 것까지 겹쳐서 해당 플랫폼 그 자체가 바이러스라고 비난하거나 마이크로소프트가 바이러스 플랫폼을 만들었다는 우스갯소리가 진지하게 통한 적도 있었을 만큼 여러모로 문제가 많아서 결국 마이크로소프트에서도 정식 지원을 중단한 상태이다.

마이크로소프트 오피스 VBA라고 해서 비주얼 베이식 언어로 고급 기능을 가진 매크로를 제작할 수 있는데, 이것도 악성 코드의 표적이 되었다. VBA를 이용한 스크립트로 문서 파일을 열기만 해도 컴퓨터를 파괴하거나 이상행동을 일으키는 종류의 바이러스들이 나타나게 된 것. 이것들은 '매크로 바이러스'라고 부른다. 99년에 대란을 일으킨 멜리사 바이러스가 이 매크로 바이러스의 대표주자. 매크로 바이러스는 2000년대에 기승을 부려 이후 마이크로소프트는 아예 문서에 VBA 매크로가 포함되어 있음을 알려주는 경고창을 만들고 VBA 기능을 옵션에서 켜야만 사용할 수 있게 만들었다.

3.1. 나무위키에 작성된 바이러스 문서 목록 (발생연도 순)

여기에 목록을 추가하거나 관련 문서를 새로 작성할 때, [[분류:컴퓨터 바이러스]]로 분류해주시기 바랍니다. 자기복제 능력이 없는 트로이 목마나 웜에 대해서는 각각 트로이 목마(악성코드) 웜(악성코드) 문서로.
역대 컴퓨터 바이러스
1980년대
크리퍼 바이러스, 브레인 바이러스, 13일의 금요일 바이러스, 비엔나 바이러스, 스톤드 바이러스, 폭포 바이러스, 다크 어벤저 바이러스, LBC 바이러스
1990년대
조쉬 바이러스, DIR-II 바이러스, 미켈란젤로 바이러스, 카지노 바이러스, 안젤리나 바이러스, CIH 바이러스
2000년대
러브 바이러스, X97M.Barisada.H, 파리떼 바이러스, 킨타마 바이러스, Whboy 바이러스, 스턱스넷, 바이럿, 레긴, 2090 바이러스, GENO 바이러스, gogo2me
기타
오토런 바이러스, 랜섬웨어

4. 대책

보안 프로그램 문서 참고.

4.1. 예방

4.2. 감염 후

4.2.1. 증상 발견

다음 증상이 지속적, 또는 갑자기 발생하면 바이러스 감염을 의심해 볼 수 있다.
그리고 몇몇 바이러스들은 증상이 심해지거나 본격적인 증상이 발동되면, 제작자의 메세지나 장난성 그래픽 효과가 튀어나오기도 한다. 이는 바이러스 제작자가 스스로를 과시하기 위한 용도, 혹은 모종의 메세지를 주기 위해서일 가능성이 크다. MS-DOS 시절에는 보통 이런 그래픽 효과를 ANSI 아트로 그렸다.

4.2.2. 안티바이러스의 바이러스 분석 방식

컴퓨터 바이러스 분석은 크게 다음과 같은 두 가지 방법으로 나눌 수 있다.

5. 기타

6. 관련 문서

7. 참고자료



[1] 그래도 최초의 바이러스는 어느 정도 좋은 의도로 만들어졌다. 함부로 크랙 버전을 만들어 무단 배포하는 사람들을 골탕 먹이려는 의도였다. [2] 한국에서도 1988년 브레인 바이러스가 알려지기 시작했다. [3] 이 소년은 이제는 어른이 된 지금도 컴퓨터 프로그래머로 활동 중이며 'blekko'라는 검색 엔진 개발을 주도하기도 했다. [4] 굳이 따지자면 사용자들에게 공포감을 들게 하는 정도였다. [5] 2010년대 들어서는 자신의 이름이나 얼굴을 걸고 유튜브에 자작 바이러스의 실행 영상을 올리거나 GitHub에 소스 코드를 올리고 있다. 단, 이 경우는 대부분은 실행 영상이나 readme 파일 등에 실행하지 말라고 경고하거나 따로 치료 프로그램을 제공한다. [6] 단, 허위 백신에 주의해야 한다. [7] 용량 크기 변화의 경우 파일이 감염되었다는 것이다. [8] csrss.exe을 위장하기 위해 csrss.exe iliawtzg.exe 이렇게 적는 경우가 있다. [9] 대부분 임시폴더(temp)에 생성된다. 혹은 시스템 폴더 또는 appdata에 생성하는 경우도 있다. [10] 트로이 목마, 바이러스, 스파이웨어 등을 통칭하는 개념이다. 해당 문서 참조. [11] 도스 시절 바이러스들은 특정한 그림 그래픽을 보통 이렇게 표현하곤 했다.