d라이브러리









하드디스크도 파괴하는 컴퓨터바이러스 완전 퇴치법

브레인바이러스출현이후 한동안 잠잠했던 컴퓨터바이러스는 최근 LBC바이러스 예루살렘바이러스 일요일 바이러스등 최신형 악성바이러스들로 공습경보가 잇따르고 있는데…

88년 중반에 컴퓨터 사용자들을 깜짝 놀라게 했던 브레인 바이러스(Brain virus)는 아직도 많은 사람들의 기억속에 생생하게 남아있을 것이다. 브레인 바이러스는 자신의 존재를 쉽게 드러내고 데이터를 파괴하지 않으며 하드 디스크는 건드리지 않는다는 점에서, 컴퓨터 사용자들에게 바이러스 프로그램에 대한 경각심을 일깨워준 공로자(?)라고도 할 수 있다. 또한 필자를 비롯한 몇몇 사람들에 의해서 브레인 바이러스를 진단하고 치료하는 프로그램이 개발됨으로써 브레인 바이러스는 더 이상 사용자들의 고민거리가 아니다.

하지만 최근 하드 디스크를 파괴하는 LBC바이러스나 파일에 전염되는 '13일의 금요일 바이러스' 등이 급속하게 퍼지면서 사용자들을 또 한번 공포에 몰아넣고 있다. 특히 LBC바이러스는 한국에서 만들어진 것으로 생각되어 많은 사람들이 우려하고 있다.

이글에서는 브레인 바이러스 이후에 국내에서 발견된 LBC바이러스, 스톤 바이러스, 13일의 금요일 바이러스 및 일요일 바이러스의 감염되는 방식과 나타나는 증상에 대해 설명하고자 한다(브레인 바이러스에 대해서는 과학동아 89년 1월호와 89년 8월호 참조, 편집자). 또한 지금까지 한국에서 발견된 다섯가지 바이러스를 검사하여 제거하기 위한 목적으로 필자가 제작한 프로그램인 '백신Ⅱ플러스'를 소개하고자 한다.

LBC 바이러스/하드디스크를 공격

LBC 바이러스는 브레인 바이러스와 비슷하게 디스크의 첫 부분인 부트 섹터(boot Sector)에 감염되는 바이러스다. LBC 바이러스가 그러한 이름을 가지게 된 이유는 바이러스 프로그램 중에 'virse program messge Njh to Lbc'라는 메시지가 나오기 때문이다.(virse는 virus를, messge는 message를 잘못 표기한 것으로 생각된다.) 따라서 LBC 바이러스는 노턴 유틸리티(Norton utility)나 PC TOOLS 등을 사용하여 부트 섹터를 검사해 보면 쉽게 그 존재를 알 수 있다.
LBC 바이러스가 브레인 바이러스와 다른 점은 다음과 같다.

① 디스크의 라벨을 바꾸지 않는다.
② 디스크에 불량섹터(bad sector)를 만들지 않는다.
③ 하드 디스크에도 감염될 수 있다.

LBC 바이러스의 증상은 첫째 플로피 디스크가 감염되었을 때는 브레인 바이러스에 감염된 경우와 마찬가지로 부팅 및 디스크 입출력 속도가 현저하게 떨어진다. 둘째 플로피 디스크의 부트 섹터를 PC TOOLS나 노턴 유틸리티로 살펴 보면 'virse program messge Njh to Lbc'라는 메시지가 보인다. 셋째 LBC 바이러스에 감염된 하드 디스크는 자체로 부팅이 되지 않고, 플로피 디스크로 부팅한 후에 하드 디스크로 접근하려고 해도 도스에서는 하드 디스크를 인식하지 못하여 'Invalid drive specification'과 같은 메시지를 출력하게 된다.

LBC 바이러스가 한국에서 만들어 진 것이라고 생각되는 이유는 다음과 같다.
① 외국에서는 이 바이러스에 대한 보고가 없다.
② 영문 메시지에 틀린 철자가 많이 나온다.
③ 영문 메시지에서 사람 이름이 NJH나 LBC 등의 약자로 표기되며, 이것은 한국에서 많이 사용되는 방식이다.

LBC 바이러스는 원래 하드디스크를 파괴시키려는 목적으로 만들어진 것은 아닌 것 같다. 그 이유는 바이러스 프로그램 중에 디스크를 검사하는 부분이 포함되어 있기 때문이다. 하지만 이 부분이 불완전하게 구성되어 있기 때문에 하드 디스크에 감염된다. 아마도 이 바이러스의 제작자의 단순히 사람들을 놀라게 할 목적으로 LBC 바이러스를 만들었으리라고 추측된다. 하지만 시스템에 대한 제작자의 지식 부족으로 엉뚱하게 하드 디스크를 파괴하는 악성 바이러스가 되었을 것이다.

많은 사용자들이 LBC 바이러스에 감염된 하드 디스크를 복구하지 못하고 다시 포맷팅을 해버림으로써 귀중한 데이터를 포기하는 경우가 많다. 하지만 필자가 개발한 백신Ⅱ플러스를 사용하면 자동적으로 감염된 플로피 디스크 및 하드 디스크를 복구시켜 주며, 플로피 디스크의 경우에는 면역성을 부여하여 다시 LBC 바이러스에 감염되지 않도록 예방조치까지 해준다. 백신Ⅱ플러스에 대해서는 뒤에 설명하겠다.

스톤 바이러스/뉴질랜드산

스톤 바이러스(stoned virus)는 영국과 뉴질랜드에서 만연하는 바이러스이며, 일명 뉴질랜드 바이러스(New Zealand virus)라고도 한다. 우리나라에서는 지난해 11월경 부산에서 최초로 발견되었다.

스톤 바이러스는 브레인 바이러스나 LBC 바이러스와 같이 부트 레코드에 기생하는 바이러스이며 크기는 LBC 바이러스와 거의 비슷하다. 스톤 바이러스도 플로피 디스크뿐만 아니라 하드 디스크에도 감염되지만 LBC 바이러스처럼 하드 디스크를 파괴하지는 않는다. 이 바이러스에 스톤 바이러스라는 이름이 붙는 이유는 바이러스 프로그램 내에 'Your PC is now Stoned'라는 메시지가 있기 때문이다.

스톤 바이러스의 증상 및 검사방법은 다음과 같다.
① 디스크의 입출력속도가 현저하게 느려진다.
② 플로피 디스크로 부팅할 때 1/8의 확률로 'Your PC is now stoned!'라는 메시지가 출력된다.
③ 플로피 디스크의 부트 레코드나 하드 디스크의 주 부트 레코드를 PC TOOLS나 노턴 유틸리티로 살펴보면 'Your PC is now Stoned!'라는 메시지가 나온다.

스톤 바이러스는 파괴적인 행동은 하지않고 번식만 하도록 설계된 양성 바이러스지만, 디스크가 정상적인 구조를 가지고 있지않고 조금 다른 디스크에서는 문제를 일으킬 수 있다. 또한 컴퓨터의 정상적인 수행과정을 도중에서 가로채기 때문에 부작용이 발생할 가능성이 있다.

13일의 금요일 바이러스/PLO의 보복(?)

13일의 금요일 바이러스는 88년 초에 이스라엘 헤브류 대학의 컴퓨터 프로그래머인 이스라엘 라대(Israelj Radai)가 발견한 바이러스다. 따라서 이스라엘 바이러스(Israeli virus), 헤브류 바이러스(Hebrew virus) 등으로도 불린다. 또한 PLO(팔레스타인 해방기구)에서 이스라엘에 해를 끼칠 목적으로 제작한 것이 아닐까 하여 PLO 바이러스라고 불리기도 한다. 이 바이러스는 보통 때는 증식만 하다가 13일의 금요일이 되는 날은 파일들을 지워버리기 때문에 이러한 명칭이 붙여졌다.

13일의 금요일 바이러스는 파일에 직접 감염되는 바이러스 중에서는 국내에서 최초로 발견된 바이러스다. 13일의 금요일 바이러스 역시 부산을 통해 들어온 것으로 추측되며, 특히 PC 통신을 하는 사람들이 많아지면서, 부주의한 사용자들이 13일의 금요일 바이러스에 감염된 게임 프로그램을 전자 게시판(Bulletin Board System, BBS)에 올려 놓음으로써 바이러스가 전국적으로 확산되었다.

13일의 금요일 바이러스의 주요 증상을 다음과 같다.

첫째 바이러스에 감염된 이후로 실행되는 실행파일(확장자가 COM 또는 EXE인 파일)에만 바이러스를 감염시킨다.
둘째 바이러스에 감염된 실행파일은 파일의 크기가 증가한다. COM 파일은 파일의 크기가 1천 8백 13바이트 증가하며, EXE 파일은 1천 8백 8바이트 증가한다. 또한 COM 파일은 한번 감염되면 다시 감염되지 않는데 비해, EXE 파일은 계속 감염될 수 있다. 따라서 파일의 크기가 너무 커져서 기억장소내로 불러들여서 실행시키지 못하는 경우도 생긴다.
셋째 프로그램을 로드하는 시간이 오래 걸린다.
넷째 바이러스 프로그램을 실행시킨지 30분이 경과하면 화면의 일부를 위로 밀어올리며 컴퓨터의 수행 속도를 떨어뜨린다.
다섯째 시스템의 날짜가 13일의 금요일에 해당되면 실행 파일을 삭제한다.

일요일 바이러스/최신형 수입품

일요일 바이러스(Sunday virus)는 최근에 발견된 새로운 컴퓨터 바이러스로서, 미국의 워싱턴주에 있는 시애틀에서 처음 발견되었다. 일요일 바이러스는 아주 최근에 발견된 바이러스이기 때문에, 지금까지 알려진 대부분의 바이러스를 검사해주는 프로그램인 VIRUSCAN도 89년 11월 15일 이후에 만들어진 버전(1.1V49 이후의 버전)을 사용해야만 감염 여부를 검사할 수 있다. 국내에서는 89년 9월에 인천에서 최초로 발견되었다.

일요일 바이러스는 13일의 금요일 바이러스를 변형시킨 것으로, 89년에는 COM 파일과 EXE 파일에 감염되기만 하다가 이후에는 일요일마다 감염된 파일을 지우도록 설계된 바이러스 프로그램이다. 하지만 일요일 바이러스는 바이러스 프로그램 자체의 버그 때문에 의도와는 달리 일요일에도 파일을 지우지 못하고 증식만 계속 한다. 또한 13일의 금요일 바이러스가 한번 감염된 EXE 파일에도 계속 감염되어 금방 정체가 노출되는 것과는 달리, 일요일 바이러스는 한번 감염된 EXE 파일에는 더 이상 감염되지 않아서 여간해서는 발견하기 힘들다. 그 외에도 일요일 바이러스 내부에는 어처구니 없게도 다음과 같은 메시지가 포함되어 있다.

Today is Sunday! Why do you work so hard?
All work and no play make you a dull boy!
Come on! Let's go out and have some fun!
오늘은 일요일! 왜 그렇게 열심히 일만 하지?
일만 하고 놀지 않으면 바보가 돼!
자, 어서 나가서 줄기자구!

일요일 바이러스의 증상 및 검사 방법은 다음과 같다.
① 디스크의 입출력 속도가 현저하게 저하된다.
② 바이러스에 감염된 COM 파일과 EXE 파일은 파일의 크기가 1천6백 36바이트 정도 증가한다.
③ PC TOOLS나 노턴 유틸리티로 파일을 살펴보면 상기한 메시지를 발견할 수 있다.

브레인 바이러스나 예루살렘 바이러스가 외국에서 알려진 지 거의 1년이 경과한 뒤에 우리나라에 들어온 데 비해, 일요일 바이러스는 미국에서 발견된 것과 비슷한 시기에 한국에서 발견되었다. 이는 여러가지로 시사하는 바가 크다. 일요일 바이러스가 미국에서 늦게 발견되었을 가능성도 배제할 수 없지만 컴퓨터 바이러스가 수입(?)되는 속도가 최근 들어서 가속화 되는 느낌이다. 또한 컴퓨터 바이러스들은 주로 부산이나 인천 등의 항구도시를 통하여 들어오는 것 같다. 스톤 바이러스와 예루살렘 바이러스가 처음 발견된 곳은 부산이며, 일요일 바이러스는 인천에서 발견되기 때문이다.

백신Ⅱ플러스/다섯가지 바이러스의 퇴치법
 

다섯가지 바이러스프로그램을 치료하는「백신Ⅱ플러스」


88년만 하더라도 우리나라에서 발견된 컴퓨터 바이러스는 브레인 바이러스 한 종류에 지나지 않았다. 그러나 요즈음에는 빠른 속도로 수입되는 외국산 바이러스들과 우리나라에서 제작된 바이러스들이 잇따라 출현해 상황은 훨씬 악화되었다. 그러나 악화된 상황을 탓하기만 할 것이 아니라, 새로운 바이러스가 발견되면 즉시 이 사실을 널리 알리고 적절한 치료 프로그램을 빨리 보급시키는 것이 선량한 사용자들의 피해를 최소화한다는 의미에서 중요하다.

필자는 컴퓨터 전문잡지 '마이크로 소프트웨어' 88년 7월호에 당시에 만연하고 있던 브레인 바이러스를 치료하기 위한 '백신'프로그램을 처음 발표했다. 그후 89년 11월호에 발표된 '백신Ⅱ'는 한국산 바이러스인 LBC 바이러스를 퇴치하기 위해 하드 디스크를 검사하는 기능이 추가되었다. 하지만 얼마 지나지 않아서 예루살렘 바이러스가 보고되었고, 디스크의 모든 서브 디렉토리의 파일을 검사하여 예루살렘 바이러스를 제거할 수 있는 '백신 Ⅱ 플러스' 버전 1.0을 89년 12월호에 발표하였다. 필자는 곧 이어서 일요일 바이러스와 스톤 바이러스의 샘플을 입수하여 이 바이러스들에 대한 치료 기능이 추가된 버전 1.2를 제작하였으며, 이 프로그램 역시 '마이크로 소프트웨어' 90년 1월호에 발표했다. 따라서 백신 Ⅱ 플러스 버전 1.2가 제거할 수 있는 바이러스는 부트 섹터에 감염되는 브레인 바이러스, LBC 바이러스, 스톤 바이러스와 파일에 감염되는 예루살렘 바이러스, 일요일 바이러스의 다섯가지다.

백신 Ⅱ 플러스는 기억 장소에 상주하는 다섯 가지 바이러스 프로그램의 유무를 확인하여 이들을 무력화시키고, 부트 섹터 및 파일에 감염된 바이러스들을 제거해 준다. 또한 브레인 바이러스와 LBC 바이러스에 대한 면역성을 부여하여 다시 이 바이러스들에 감염되지 않도록 해준다.

백신 Ⅱ 플러스는 많은 사람들에게 혜택이 돌아갈 수 있도록 공개 소프트웨어로 만든 프로그램이다. 따라서 이 프로그램은 아무런 제약없이 무료로 복사할 수 있다. 또한 프로그램의 크기도 5천 71 바이트 밖에 되지 않기 때문에 아무런 부담없이 작업 디스켓에 복사해서 가지고 다닐 수 있다. 이 프로그램을 구하려는 사람은 컴퓨서브 등의 여러 BSS를 통해서 직접 받을 수 있다. 프로그램 설명서도 프로그램과 함께 파일 형태로 포함되어 있다.
 

컴퓨터 바이러스를 막으려면
 

컴퓨터바이러스 감염여부를 검사하는「SCAN」프로그램


컴퓨터 바이러스를 100% 예방하기란 거의 불가능하다. 하지만 다음의 몇가지 사향을 잘 지키면 대부분의 피해는 막을 수 있다.

첫째 프로그램 디스크 특히 도스 디스크는 쓰기방지탭(write protect tab)을 붙인다.
둘째 COMMAND. COM의 파일 속성(attribute)을 읽기 전용(read only)으로 만들어 둔다. 이것만으로도 COMMAND. COM에 기생하는 바이러스의 절반 이상을 막을 수 있다.
셋째 플로피 디스크를 사용하는 시스템은 쓰기방지탭을 붙인 도스 디스크로 부팅을 시키고, 하드 디스크가 있을 때는 반드시 하드 디스크에서 부팅을 시킨다.
넷째 파일 단위로 전염되는 바이러스 프로그램은 'Flushot plus'와 같은 백신 프로그램을 사용하면 대부분 막을 수 있다. 하지만 이러한 백신 프로그램들은 부트 섹터에 기생하는 바이러스는 막을 수 없기 때문에 정기적으로 백신 Ⅱ 플러스를 사용해서 디스크를 검사해야 한다.

새로운 프로그램을 복사하거나 BSS에서 프로그램을 받아올 때는 다음과 같은 주의 사항을 염두에 두어야 한다.
① 될 수 있으면 크고 유명한 BSS(컴퓨서브 BIX 등)에서 프로그램을 받아온다.
② 조금 얌체(?)같지만 BBS에 새로운 파일이 등록되면 1~2주 기다렸다가 다른 사용자들로 부터 아무런 불평이 없으면 그 때 다운로드 한다.
③ 받아온 파일 이름을 지금까지 알려진 바이러스 및 트로이 목마 프로그램의 이름과 비교해 본다. 또한 압축파일의 형태로 되어 있는 프로그램을 풀었을 때 바이러스 프로그램이 나올 가능성도 있다.
④ 노턴 유틸리티, PC TOOLS, CHK4BOMN 등의 프로그램을 사용하여 파일 내에 이상한 메시지가 있는 지를 살펴 본다.
⑤ 새로운 프로그램은 플로피 디스크에서만 실행시킨다.

이러한 대비책에도 불구하고 컴퓨터 바이러스에 감염되어 데이터가 파괴되었을 때는 데이터를 쉽게 복구할 수 있어야 한다. 데이터의 복구를 쉽게 하기 위해서는 위에서 열거한 예방책들 이외에 다음과 같은 방법을 병행해서 사용하여야 한다.

첫째 하드 디스크나 큰 용량의 플로피 디스크를 사용할 때는 될 수 있는 대로 파일들을 서브 디렉토리에 보관한다. 이러한 방법을 사용하면 시스템 영역이 파괴되더라도 서브 디렉토리는 데이터 영역에 있기 때문에 쉽게 데이터를 복구할 수 있다.

둘째 정기적으로 디스크 옵티마이저(disk optimizer)를 사용하여 파일들이 순서대로 디스크에 저장되게 한다. 디스크 옵티마이저에는 Fast Trax, Optune, 노턴 유틸리티의 SD(Speed Disk), PC TOOLS의 COMPRESS 등이 있다.

셋째 노턴 유틸리티 4.5의 FR(Format Recover)나 PC TOOLS의 MIRROR를 사용해서 시스템 영역에 대한 내용을 디스크의 특정영역에 보관한다. 그러면 시스템 영역이 파괴되더라도 많은 부분을 그대로 살릴 수 있다.

넷째 정기적인 백업은 컴퓨터 바이러스 뿐만 아니라 모든 종류의 데이터 손실에 대해서 가장 확실한 대비책이다.

현재까지 외국에서 알려진 바이러스 프로그램들은 많지만 실제로 우리나라에서 발견되는 바이러스들은 얼마되지 않으며, 우리나라에서 제작된 것으로 추정되는 바이러스들은 결국 우리나라에서해결할 수밖에 없다. 필자는 앞으로 국내에서 발견되는 모든 바이러스 프로그램에 대한 치료기능을 백신 Ⅱ 플러스에 추가시켜서 이것을 우리나라의 실정에 맞는 한국형 백신 프로그램으로 만들고자 한다. 하지만 이러한 일은 혼자만의 노력만으로는 될 수 없기 때문에 많은 컴퓨터 사용자들의 협조가 필요하다. 만약 새로운 컴퓨터 바이러스가 발견되거나, 기존의 바이러스가 변형되어서 백신 Ⅱ 플러스로 치료가 되지 않을 때는 필자에게 바이러스가 포함된 디스켓을 보내주기 바란다. 이러한 일들이 선량한 사용자들의 컴퓨터 바이러스에 의한 피해를 최소화할 수만 있다면 더 바랄 것이 없겠다.
 

(표 1) 백신 프로그램의 버전별 비교
 

이 기사의 내용이 궁금하신가요?

기사 전문을 보시려면500(500원)이 필요합니다.

1990년 02월 과학동아 정보

  • 안철수 강사

🎓️ 진로 추천

  • 컴퓨터공학
  • 소프트웨어공학
  • 정보·통신공학
이 기사를 읽은 분이 본
다른 인기기사는?