바이러스 개념

이선아·2022년 1월 8일
2

악성 코드

목록 보기
2/4
  • 바이러스는 가장 기본적인 형태의 악성 코드로, 사용자의 컴퓨터(네트워크로 공유된 컴퓨터 포함)에서 프로그램이나 실행 가능한 부분을 몰래 수정하여 자신 또는 자신의 변형을 복사합니다.
  • 1980년대 이후부터 2000년대 초반까지 악성 코드의 주류를 차지하였습니다.

📌 1세대 원시형 바이러스

원시형 바이러스는 컴퓨터 바이러스가 처음 등장한 시점의 형태를 가리킵니다. 자기 복제 기능과 데이터 파괴 기능만 가지고 있으며, 부트 바이러스파일 바이러스로 분류할 수 있습니다.

☝🏻 부트 바이러스

  • 플로피디스크나 하드디스크의 부트 섹터를 감염시키는 바이러스로 MBR과 PC 메모리에 저장되어 부팅 시 자동으로 동작해 부팅 후에 사용되는 모든 프로그램을 감염시킵니다.

컴퓨터의 부팅 순서

1. POST

  • 운영체제를 설치하면 하드웨어 자체에서 시스템에 문제가 없는지 기본 사항을 확인하는 POST 과정을 거칩니다.
  • BIOS에 의해 실행되며 POST 중에 하드웨어에서 문제가 발견되면 여러 가지 방법으로 사용자에게 문제를 알립니다.
  • 최근에는 메인보드의 LED 표시를 보고 문제 사항을 파악하기도 합니다.

2. CMOS

  • 일반적으로 PC를 부팅할 때 [ESC] 또는 [F2]를 누르면 CMOS(Complementary Metal-Oxide Semiconductor)에 들어갈 수 있습니다.
  • CMOS에서는 기본 장치에 대한 설정과 부팅 순서를 정할 수 있으며 이러한 기본 설정 사항을 BIOS가 읽어 시스템에 적용합니다.

3. 운영체제 위치 정보 로드

  • 윈도우 2003 이전 버전에서는 MBR 정보를 읽는 단계이고, 윈도우 2008 이후 버전에서는 윈도우 부트 매니저가 실행되는 단계입니다.
  • 윈도우 2008 이후 버전에서 bootmgr.exe가 실행되면 윈도우 부트 매니저는 부트 설정 데이터(BCD)를 읽어 실행 가능한 운영체제 목록을 보여줍니다.
  • 이는 NTLDR이 boot.ini를 읽어 실행 가능한 운영체제 목록을 보여주는 것과 같습니다. BCD는 boot.ini와 같이 텍스트 파일로 구성되어 있지 않으므로 bcdedit.exe를 이용하여 편집할 수 있습니다.

부트 바이러스는 이 3단계에서 동작합니다. 과거에 부트 바이러스에 감염된 플로피디스크로 운영체제를 구동하면 바이러스가 MBR과 함께 PC 메모리에 저장되어 부팅 후에 사용되는 모든 프로그램을 감염시켰습니다.
그렇지만 요즘에는 대부분의 PC가 하드디스크로 부팅되고 다른 PC를 부팅할 때 하드디스크를 떼어 가지지 않기 때문에 부트 바이러스의 영향력이 크지 않습니다.
부트 바이러스의 종류에는 브레인, 몽키, 미켈란 젤로 등이 있습니다.

☝🏻☝🏻 파일 바이러스

  • 파일 바이러스는 파일을 직접 감염시키는 바이러스입니다. 하드디스크로 부팅하는 것이 일반화되면서 부트 바이러스의 대안으로 등장하였습니다.
  • 일반적으로 COM이나 EXE와 같은 실행 파일과 오버레이 파일, 디바이스 드라이버 등을 감염시키며 전체 바이러스의 80% 이상을 차지합니다.
  • 파일 바이러스는 감염된 실행 파일에서 바이러스 코드를 실행합니다. 이때 감염 위치는 프로그램을 덮어쓰거나, 프로그램의 앞부분에 바이러스 실행 코드를 붙이는 경우, 프로그램 뒷부분에 바이러스 실행 코드를 붙이는 경우로 나눌 수 있습니다.
  • 만약 바이러스가 프로그램 뒷부분에 위치한다면 이는 백신의 바이러스 스캔으로부터 자신의 존재를 숨기기 위함입니다.

파일 바이러스에는 최초의 파일 바이러스로 알려진 예루살렘 바이러스를 비롯해 선데이, 스코피온, 크로, FCL 등이 있습니다.
아시아 지역에 많은 피해를 준 CIH 바이러스도 파일 바이러스에 속합니다.

📌 2세대 암호형 바이러스

암호형 바이러스는 바이러스 코드를 쉽게 파악하여 제거할 수 없도록 암호화합니다.
컴퓨터 바이러스가 많은 컴퓨터에 피해를 입히자 이를 치료하기 위한 백신 프로그램이 나타나기 시작하였습니다. 이 백신을 우회하기 위한 암호형 바이러스가 탄생하게 되었습니다.

바이러스가 동작할 때 메모리에 올라오는 과정에서 암호가 풀립니다.
백신 제작자들은 이를 이용하여 메모리에 실행되어 올라온 바이러스와 감염 파일을 분석하고 치료하였습니다.
암호형 바이러스의 종류로는 슬로, 캐스케이드, 원더러, 버글러 등이 있습니다.

📌 3세대 은폐형 바이러스

은폐형 바이러스는 바이러스에 감염된 파일이 일정 기간의 잠복기를 가지도록 합니다. 확산되기도 전에 바이러스가 활동하기 시작하면 다른 시스템으로 전파되기 힘들기 때문입니다.

따라서 은폐형 바이러스에 감염되더라도 실제로 바이러스가 동작하기 전까지 그 존재를 파악하기가 어렵습니다. 은폐형 바이러스에는 브레인, 조시, 512, 4096 바이러스 등이 있습니다.

📌 4세대 다형성 바이러스

일반적으로 백신 프로그램은 바이러스 파일 안에 특정한 식별자로 바이러스 감염 여부를 판단하는데 이 때 특정 식별자를 이용하여 진단하는 기능을 우회하기 위해 사용하는 것을 다형성 바이러스라고 합니다.

다형성 바이러스는 코드 조합을 다양하게 할 수 있는 조합 프로그램을 암호형 바이러스에 덧붙여 감염시키기 때문에, 프로그램이 실행될 때마다 바이러스 코드 자체를 변경하여 식별자를 구분하기 어렵게 합니다.
다형성 바이러스는 제작하기도 어렵고 진단하기도 어렵습니다. 복호화 알고리즘으로 감싼 암호화된 바이러스의 복호화 키 다음으로 조합 프로그램이 붙습니다.

📌 5세대 매크로 바이러스

일반적으로 컴퓨터 바이러스는 실행 파일을 통해 감염 및 전파됩니다. 하지만 다양한 응용 프로그램과 사무용 프로그램이 개발되면서 스크립트 형태의 실행 환경을 이용하여 전파되는 바이러스가 나타나기 시작했습니다.
주로 MS 오피스 프로그램의 매크로 기능을 통해 감염되는 바이러스를 매크로 바이러스라고 합니다. 매크로 바이러스는 비주얼 베이직 스크립트(VBS)로 많이 제작됩니다.

기존 바이러스는 실행 파일로 전파되는 반면, 매크로 바이러스는 엑셀 또는 워드 같은 문서 파일의 매크로 기능을 이용하므로 이러한 파일을 열 때 매크로 바이러스에 감염됩니다. 자연스럽게 많이 사용하는 프로그램이기 때문에 실행 파일보다 덜 주의하는 경향이 있습니다.

매크로 바이스에는 워드 콘셉트, 와쭈, 엑셀-라룩스, 멜리사 등이 있습니다.

매크로 바이러스의 증상

  • 문서가 정상적으로 열리지 않거나 암호가 설정되어 있다.
  • 문서 내용이 깨진 글자나 이상한 문구가 포함되어 있다.
  • 매크로 메뉴를 실행할 수 없게 잠겨 있다.
  • 엑셀이나 워드 작업 중 VB(비주얼 베이직) 편집기의 디버그 모드가 실행된다.

📌 차세대 바이러스

인터넷과 네트워크가 급격히 발달함에 따라 다양한 형태의 바이러스가 등장함으로써 이제는 한 세대로 분류하기 어려워졌습니다.

최근에는 매크로 바이러스에서 나타난 스크립트 형태의 바이러스가 더욱 활성화되고 있는데, 대부분 네트워크와 메일을 이용하여 전파되는 방식입니다. 또한 단순히 데이터를 파괴하고 다른 파일을 감염시키는 형태에서 벗어나, 사용자의 정보를 빼내거나 시스템을 장악하기 위한 백도어 기능을 가진 웜의 형태로 진화하고 있습니다.

ⓒ 정보보안개론

profile
깃허브 놀러오세용 -> Tistory로 블로그 이전합니다.

0개의 댓글