본문 바로가기
정보보호/정보보호학 개론 (2013, 백석대 이근호 교수님)

6-1. 악성 코드 : 역사 및 분류

by 규글 2024. 8. 9.

목표

1. 악성 코드의 종류와 그 특성을 알아봄

2. 악성 코드의 역사에 대해 이해함

3. 악성 코드의 분류를 이해함

 

지금도 많은 악성 코드가 생성되는 중.

전문가로서 향후 악성 코드가 어떻게 진화할 것인지 예측하여 방어할 수 있는 역량을 갖출 것.

바이러스는 하드웨어적 시스템 구조와 운영체제에 대한 많은 지식을 가진 사람들에 의해 만들어지므로, 전반적인 지식을 습득하여 여러 방면으로 방어할 수 있는 기술의 습득 필요

 

90년대 말 2000년 초반으로 들어오면서 인터넷의 등장으로 네트워크로 정보를 교환할 수 있는 시스템의 활성화.

그로 인하여 바이러스가 네트워크를 통해 전파. 여러 공격의 근간이 되었음.

 

악성 코드

: 제작자(공격자)가 의도적으로 사용자에게 피해를 주고자 만든 모든 악의적 목적을 가진 프로그램, 매크로, 스크립트 등의 컴퓨터상에서 작동하는 모든 실행 가능한 형태

 

- 갈수록 지능화되고 있음.

- 과거에는 단순히 시스템의 정보를 획득하는 정도에서 현재는 주요 시설에 대한 사이버 테러까지 

 

- 개발하는 입장에서, 보안의 입장에서 모든 것을 필터링하는 것은 쉽지 않음.

- 쉽게 걸리지 않도록 하기 위해 시스템에서 잘 사용하지 않는 파일로 변경하여 숨기거나, 서버 시스템을 해킹하여 업데이트 파일을 내려받을 때 악성 코드를 삽입하는 등

 

역사

1972

- 컴퓨터 바이러스의 개념이 처음 등장

- 소설가 데이비드 제럴드의 공상 과학소설 "When Harlie was One"(Nelson Doubleday, 1972)에서 한 과학자가 다른 컴퓨터에 계속 자신을 복제하고, 감염된 컴퓨터의 운영체제에 영향을 미쳐서 점차 시스템을 마비시키는 장치를 제작하여 배포하는 내용이 소개됨.

 

1984

- '컴퓨터 바이러스'라는 용어가 프레드 코헨에 의하여 개념이 정립됨

We define a computer 'virus' as a program can 'infect' other programs
by modifying them to include a possibly evolved copy of itself

- 컴퓨터 바이러스의 진화된 복제본을 포함하기 위해 다른 프로그램들을 수정하는 것으로 감염시킬 수 있는 프로그램

 

1986

- '브레인 바이러스(Brain Virus)'를 최초의 컴퓨터 바이러스로 칭함.

- 파키스탄에서 프로그래머로 일하던 알비 형제가 자신들의 소프트웨어가 불법으로 복제되는 것에 분노하여 제작 및 배포

 

1987

- '13일의 금요일 바이러스'. 예루살렘 바이러스라고도 불림.

- 이탈리아에서 제작된 것으로 알려지고 있으며, 예루살렘 대학에서 발견된 이 바이러스는 13일의 금요일에 시스템 내의 파일을 삭제하게 되어 있었음.

 

1989

- '모리스 웜'. 최초의 웜으로 알려짐.

- 미국의 네트워크를 마비시킨 사건

 

1991

- 전혀 새로운 특징을 가진 바이러스의 출현. 이름은 'DIR II'.

- MS 도스의 FAT 파일 시스템의 연결 구조를 이용하며, 바이러스 감염 시 프로그램의 크기를 증가시키지 않고 기생할 수 있다는 특징

 

1997

- '매크로(Macro) 바이러스'의 출현. 매크로는 엑셀이나 워드에서 특정한 기능을 자동화시켜놓은 일종의 프로그램.

- 시스템 프로그램 등의 고난이도의 기술만 웜/바이러스 제작에 이용될 수 있다는 인식을 바꿈

 

1999

- 컴퓨터 하드 디스크의 바이오스(BIOS)를 손상시키고, 각종 파일을 삭제하는 CIH 바이러스로 인해 많은 컴퓨터가 피해를 입음

 

2001

- '코드 레드 웜'.

- 윈도우 2000과 윈도우 NT 서버를 경유지로 이용하여 미국 백악관을 공격. 8시간만에 25만대 이상의 컴퓨터가 감염됨

- 우리나라도 최소 3만대 이상의 시스템이 피해를 입은 것으로 추정

 

2003

- 'SQL_Overflow 웜'의 등장. '슬래머'라고도 함

- CAIDA에 따르면 1월 25일 5시 29분에 퍼지기 시작하여 6시를 기준으로 전 세계의 74855대의 시스템이 감염됨.

 

- '블래스터 웜(Blaster Worm)'

- 8월에 1~2분 간격으로 컴퓨터를 강제로 재부팅시켜서 국내외적으로 큰 피해를 줌

 

- '웰치아 웜(Welchia Worm)'

 

- '소빅.F 웜(Sobig.F Worm)'.

- 엄청난 양의 스팸 메일을 집중 발송시킴

 

2004

- '마이둠 웜(Mydoom Worm)'

- 세계적으로 100만대 이상의 PC를 감염시킴.

- 넷스카이, 베이글, 새서 웜 등의 변종이 지속적으로 등장함

 

- '카비르 웜'

- 자기 복제가 가능하고 네트워크를 통해 전파되는 최초의 웜 형태의 휴대폰 악성 코드

 

2005

- 다양한 변종이 지속적으로 등장

 

- '컴 워리어'

- 멀티미디어 메시징 서비스(MMS)를 이용하여 감염된 휴대폰에 저장된 전화번호를 통해 악성 코드를 퍼뜨림.

- 전파 방법의 지역적 한계를 넘어섬

 

~ 2013

- 바이러스의 종류는 15만개 이상.

- 안티 바이러스 시장의 규모가 커지고 있음.

 

- APT(Advanced PErsistent Threat) 공격

: 오랜 기간에 걸친 지속적인 해킹 시도를 통해 중요한 데이터를 유출하는형태의 사이버 공격

 

정의에 따른 악성 코드의 분류

이름 (코드) 설명
바이러스
(Virus)
- 사용자 컴퓨터(네트워크로 공유된 컴퓨터를 포함) 내에서 사용자 몰래 프로그램이나 실행 가능한 부분을 변형하여 자신 또는 자신의 변형을 복사하는 프로그램.
- 복제와 감염이 가장 큰 특징.
- 다른 네트워크의 컴퓨터로 스스로 전파되지는 않음

(Worm)
- 인터넷 또는 네트워크를 통해 컴퓨터에서 컴퓨터로 전파되는 악성 프로그램.
- 윈도우의 취약점 또는 응용 프로그램의 취약점을 이용하거나 이메일이나 공유 폴더를 통해 전파되며, 최근에는 공유 프로그램(P2P)을 이용하여 전파되기도 함.
- 스스로 전파되는 것이 특징
트로이 목마
(Trojan Horse)
- 바이러스나 웜처럼 컴퓨터에 직접적인 피해를 주지는 않지만, 악의적인 공격자가 컴퓨터에 침투하여 사용자의 컴퓨터를 조종할 수 있는 프로그램.
- 고의적으로 만들어졌다는 점에서 프로그래머의 실수인 버그와는 다름.
- 자기 자신을 다른 파일에 복사하지 않는다는 점에서 바이러스와 구분됨.
혹스
(Hoox)
- 인터넷 메신저나 이메일, 게시판, 문자 메시지 등을 통해 거짓 정보나 괴담 등을 싣고 사용자를 속이는 가짜 컴퓨터 바이러스
- 우리나라에서는 1997년부터 나타나기 시작하여 해마다 등장하고 있으며, 특히 만우절을 전후로 기승.
- 2004년에는 '누군가 murrol@hotmail.com이라는 사람의 추가를 요구하면 추가하지 말고 취소하십시오. 바이러스입니다. 지금 MSN 창에 있는 사람들에게도 이 메시지를 빨리 돌려주십시오.' 라는 내용이 담겨 있는 메일이 있었으나, 확인 결과 가짜 바이러스로 판명됨. 
악성 자바 코드 - 웹 사이트에서 동적인 기능을 구현하기 위해 자바 스크립트나 자바 애플릿을 많이 사용하는데, 이들을 이용하여 악의적인 기능을 하는 코드
악성 Active X - 마이크로소프트에서 만든 객체지향 프로그래밍을 위한 도구 모음으로, ActiveX 컨트롤은 이를 이용하여 객체지향 프로그래밍을 하기 위한 컴포넌트. 이 컴포넌트를 이용하여 악의적인 기능을 수행하게 하는 코드

 

악성 프로그램으로 인해 발생할 수 있는 증상

대분류 소분류 설명
시스템 관련 시스템 정보 변경 변경 레지스트리 키값을 변경하여 시스템의 정보를 변경한다.
FAT 파괴 시스템의 파일 시스템을 파괴한다.
CMOS 변경 CMOS 내용을 변경하여 부팅 때 에러를 발생시킨다.
CMOS 정보 파괴 CMOS의 일부를 파괴한다.
기본 메모리 감소 시스템의 기본 메모리를 줄인다.
시스템 속도 저하 시스템의 속도를 저하시킨다.
프로그램 자동 실행 레지스트리 값을 변경해 시스템을 부팅할 떄 특정 프로그램을 자동으로 실행시킨다.
프로세스 종료 특정 프로세스를 강제로 종료시킨다.
시스템 재부팅 시스템을 재부팅시킨다.
네트워크 관련 메일 발송 특정 사용자에게 메일을 발송한다.
정보 유출 사용자의 정보를 네트워크를 통해서 공격자 컴퓨터로 전송한다.
네트워크 속도 저하 감염된 컴퓨터가 속한 네트워크가 느려진다.
메시지 전송 메시지를 네트워크를 통해 다른 컴퓨터로 전달한다.
특정 포트 오픈 특정 백도어 포트를 연다.
하드 디스크 관련 하드 디스크 포맷 하드 디스크를 포맷한다.
부트 섹터 파괴 하드 디스크의 특정 부분을 파괴한다.
파일 관련 파일 생성 특정 파일을 생성한다. 주로 백도어 파일을 생성한다.
파일 삭제 특정 파일이나 디렉토리를 삭제한다.
파일 감염 바이러스가 특정 파일을 감염시킨다.
파일 손상 바이러스가 특정 파일에 겹쳐쓰기 형태로 감염되면 파일이 손상된다.
특이 증상 특정 화면 출력 화면에 특정 내용이 나타난다.
특정음 발생 컴퓨터에서 특정음이 난다.
메시지 상자 출력 화면에 특정 메시지 상자가 나타난다.
증상 없음 특이한 증상이 없다.

 

댓글