일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 역캡슐화
- 개발바닥
- 파이썬
- TCP/IP
- 계층화
- 데이터 송수신
- l3 스위치
- 백준 2775
- 유선LAN
- 10866
- 자바
- 인프콘
- 프로토콜
- 남궁성
- 인터페이스
- aws 자격증
- AWS CLF
- 자바의 정석
- java
- 물리구성도
- 1764
- 네트워크
- 논리구성도
- modifiers
- 상속
- 백준 1712
- network
- 테슬라폰
- 파이썬 1712
- 다형성
- Today
- Total
병훈's Blog
[PC 정비사] 컴퓨터 바이러스 본문
https://m.blog.naver.com/wnrjsxo/221721852010
컴퓨터 바이러스에 대해 찾아보던 중, 가장 설명이 잘 되어있는 블로그다.
컴퓨터 바이러스란 컴퓨터에게 해를 입히는 악성 프로그램을 총칭한다. 다른 프로그램에 달라붙는 형태, 즉 숙주에 기생하여 다른 시스템이나 실행파일을 감염시키며 자신을 복제할 수 있는 기능을 가지고 있다. 컴퓨터 프로그램이나 실행 가능한 부분을 변형시켜 그곳에 자신 혹은 자신의 변형을 복사해 넣은 프로그램 명령어들의 집합으로, 수정에 의해 다른 프로그램을 감염시킬 수 있고 컴퓨터 시스템과 네트워크를 감염시킨다.
● 컴퓨터 바이러스의 주기
컴퓨터 바이러스는 다음과 같은 단계를 거치면서 진화한다.
생성(creation) ⇒ 감염(replication) ⇒ 활동(activation) ⇒ 인지(discovery) ⇒ 반영(assimilation) ⇒ 박멸(eradication) ⇒ 생성 ⇒ 감염 ⇒ ...
단계
|
설명
|
생성 단계
|
바이러스 제작자에 의해 생성
|
감염 단계
|
다음 단계로 전이하기 전에 상당한 기간 동안 자신의 복제를 생성하고 이를 인터넷, 이메일, 인스턴스 메시지, 파일공유 등을 통해 전파
|
활동 단계
|
특정 조건을 만날 때까지 잠복하다가 조건이 충족되면 목표한 공격을 수행
|
인지 단계
|
위협적인 존재로 인식될 때까지 상당 기간 동안 확산되다가 대중에게 발견
|
반영 단계
|
보안 전문가들은 바이러스의 공격 방식을 분석하여 공격 대상 소프트웨어의 취약점을 보완
|
박멸 단계
|
취약점 보완이나 백신 프로그램 사용 등의 이유로 점차 소멸
|
● 컴퓨터 바이러스의 발전 단계
① 1세대 : 원시형 바이러스(primitive virus)
- 부트 바이러스 : MBR 과 함께 PC 에 저장되고, 부팅 후에 사용되는 모든 프로그램에 감염 시킨다.
- 파일 바이러스 : 바이러스에 감염된 실행 파일이 실행될 때 바이러스 코드를 실행한다. 바이러스가 프로그램을 덮어쓰는 경우, 프로그램 앞부분에 바이러스 코드를 붙이는 경우, 프로그램 뒷부분에 바이러스 코드를 붙이는 경우가 있다.
- 돌 바이러스(Stoned virus), 예루살렘 바이러스(Jerusalem virus) 등이 있다.
② 2세대 : 암호형 바이러스(encrypt virus)
- 바이러스 코드를 암호화한다.
- 백신 프로그램이 바이러스 진단을 어렵게 하기 위하여 바이러스 프로그램의 일부분 또는 대부분을 암호화하는 기법을 사용한다.
- 비엔나 바이러스(Vienna virus), 크리스마스트리 바이러스(Christmas tree virus), 예일 바이러스(Yale virus) 등이 있다.
③ 3세대 : 은폐형 바이러스(stealth virus)
- 바이러스가 활동할 때까지 일정 기단 동안 잠복기를 가지도록 설계되었다.
- 자신을 은폐할 수 있으며, 사용자나 백신 프로그램에게 거짓 정보를 제공한다.
- 은폐를 위하여 압축 기법을 이용하여 감염된 바이러스 파일의 길이가 증가하지 않은 것처럼 보이게 하고, 백신 프로그램이 감염된 부분을 읽으려 하면 감염되기 전의 파일을 보여주어 바이러스가 존재하지 않는 것처럼 백신 프로그램이나 사용자를 속이는 기법을 이용한다.
- 조쉬 바이러스(Joshi virus), 방랑자.1347 바이러스(Wanderer.1347 (Joshi virus), 프로도 바이러스 (Frodo virus), 브레인 바이러스(Brain virus) 등이 있다.
④ 4세대 : 갑옷형 바이러스(armour virus)
- 코드 조합을 다양하게 할 수 있는 조합 프로그램을 암호형 바이러스에 덧붙여 감염한다. 실행될 때마다 바이러스 코드 자체를 변경시켜 식별자를 가지고는 구분하기 어렵게 한다.
- 여러 단계의 암호화와 고도의 자체 수정 기법 등을 동원함으로써, 바이러스를 분석과 백신 프로그램의 제작을 어렵게 만들어서 백신 프로그램 개발을 지연시키는 방법을 사용하고 있다.
- 갑옷형 바이러스의 일종으로 다형성 바이러스(polymorphic virus) 가 있으며, 이것은 암호화를 푸는 방법이 항상 일정한 단순 암호화 바이러스와는 달리 감염될 때마다 암호화를 푸는 부분이 달라진다.
- 테킬라 바이러스(Tequila virus), 미켈란젤로 바이러스(Michelangelo virus), 고래 바이러스(Whale virus) 등이 있다.
⑤ 5세대 : 매크로 바이러스(macro virus)
- 매크로 바이러스는 운영체제(OS)와 관계없이 동작하는 응용 프로그램 내부에서 동작하는 것이 가장 큰 특징이다.
- 매크로 기능이 있는 MS 사 오피스 제품군(워드, 엑셀, 파워포인트) 이외에 비지오(Visio), 오토캐드(AutoCAD) 등 VBS(Visual Basic Script)를 지원하는 다양한 프로그램에서 활동하기 때문에 현재 등장하고 있는 바이러스 중에서 가장 높음 비중을 차지하고 있다.
1세대 ~ 5세대의 구분은 컴퓨터 바이러스의 발전 단계이지 등장 순서의 구분은 아니다. 현재는 1세대부터 5세대까지의 바이러스가 공존하고 있으며, OS 와 애플리케이션의 자체적인 보안 취약점을 악용하는 사례가 갈수록 늘어나고 있다.
● 컴퓨터 바이러스의 분류
기준
|
세부내용
|
감염 대상
|
- 부트 바이러스(부트섹터 감염, Brain, Monkey, Anti-CMOS 등)
- 파일 바이러스(COM, EXE 실행파일 감염, 예루살렘, Sunday, Scorpion, Crow 등)
- 부트/파일 바이러스(부트섹터, 파일 모두 감염, Invader(1990), 안락사(Euthanasia) 등)
- 매크로 바이러스(XM/Laroux 등)
|
운영 체제
|
- DOS 바이러스( Brain, 예루살렘, 미켈란젤로 등)
- Window 바이러스(NE 계열 바이러스, PE 계열 바이러스 등)
- Unix 바이러스
- 기타
|
감염 위치
|
- 기생형 바이러스(Parasitic Virus)
- 겹쳐쓰기형 바이러스(Overwriting Virus)
- 산란형 바이러스(Spawning Virus)
- 연결형 바이러스(Linking Virus)
|
동작 원리
|
- 상주형바이러스(Resident Virus)
- 비상주형바이러스(Non-Resident Virus)
|
① 감염 대상에 따른 바이러스
⑴ 부트(Boot) 바이러스
부트 섹터에 위치하는 바이러스로 컴퓨터의 부팅 시에 활동을 시작한다. 부트 섹터에 쉽게 접근 가능한 운영체제인 MS-DOS 나 이를 바탕으로 동작하는 Windows 환경이 주요 공격 대상이다. 뇌(Brain), 원숭이(Monkey), Anti-CMOS 등이 있다.
⑵ 파일(File) 바이러스
확장자로 DLL, COM, EXE 를 주로 갖는 실행 가능한 프로그램에 감염되는 바이러스이다. 국내의 80% 정도가 파일 바이러스로 가장 일반적인 유형이다. 예루살렘(Jerusalem:13일의 금요일), Sunday, Win95/CIH. Win95/Morburg 등이 있다.
⑶ 부트/파일 바이러스
부트섹터와 파일을 모두 감염시키는 바이러스이다. 백신 프로그램으로 완전하게 복구할 수 없는 큰 피해를 준다. 국내에서 1998년에 발견된 에볼라(Ebola)가 대표적인 바이러스이다.
⑷ 매크로(Macro) 바이러스
매크로 바이러스는 MS 워드, 엑셀과 같이 매크로 언어를 지원하는 문서파일에 기생하는 바이러스로, 감염된 문서 파일을 여는 순간 바이러스가 동작한다. 감염 대상이 실행파일이 아닌 매크로 기능을 사용하는 문서파일이다. 멜리사(W97M/Melisa), 라룩스(XM/Laroux) 등이 있다.
② 감염 위치에 따른 바이러스
⑴ 기생형(Parasitic) 바이러스
- 전위형(prepender) : 대상 파일의 앞부분에 바이러스가 붙는다.
- 후위형(appender) : 대상 파일의 뒷부분에 붙고, 대상 파일의 앞 부분에 점프 코드를 삽입하여 뒷부분에 있는 악성코드를 실행시킨다.
기생형은 감염된 파일의 크기가 바이러스 프로그램의 크기만큼 증가하므로 감염 여부를 쉽게 파악할 수 있고, 감염된 파일에서 바이러스 코드 만을 제거하면 쉽게 복구가 가능하다.
⑵ 겹쳐 쓰기형(Overwriting) 바이러스
감염된 파일의 크기가 변경되지 않으며, 실행 파일의 일부가 바이러스 코드로 대체되므로 완전한 복구가 어렵다.
⑶ 산란형(Spawning) 바이러스
물리적으로 대상 파일을 전혀 건드리지 않는 상태에서 활동한다. 예를 들어 MS-DOS 에서 실행 파일의 우선 순위는 .COM ⇒ .EXE ⇒ .BAT 이다. EXE 프로그램에 대해 COM 바이러스를 제작하여 동일 디렉터리에 배치하면 사용자는 정상적인 파일을 실행시킨 것으로 알고 있으나 실제는 바이러스 파일을 실행시키게 된다.
⑷ 연결형(Linking) 바이러스
프로그램을 직접 감염시키지 않고 디렉터리 영역에 저장된 프로그램의 시작 위치를 바이러스 프로그램의 시작 위치로 변경한다. 따라서 프로그램을 실행하면 원래의 프로그램 대신 바이러스 프로그램이 먼저 실행되고 실행이 끝나면 원래의 프로그램을 실행시켜서 사용자가 눈치채지 못하도록 한다.
③ 스크립트(Script) 바이러스
바이러스 코드를 스크립트 언어(ASP, PHP, Java Script, Visual Basic Script)로 작성하여, 바이러스가 포함되어 있는 문서의 스크립트가 실행되면서 다른 파일을 감염시킨다. 대표적인 스크립트 바이러스인 러브(Love)는 "I LOVE YOU" 라는 제목의 전자메일을 통하여 유포되며, 첨부된 VBS 파일을 오픈하면 러브 바이러스가 동작한다.
④ 이메일 바이러스
이메일 시스템의 기능을 이해하고, 이메일 주소를 수집하며, 자신을 이메일에 첨부하여 이메일을 발송한다. 바이러스의 유포 시간을 크게 단축시킨다.
⑤ 멀티파타이트(Multipartite) 바이러스
원래 boot sector 와 프로그램 양쪽 모두를 감염시키는 바이러스를 지칭했지만 현재는 여러 유형의 대상을 감염시키거나 여러 방식으로 감염/재생산 하는 바이러스를 지칭한다.
● 바이러스 이름
새로운 바이러스가 출현하면 백신 회사는 동작 및 감염 모드 등을 분석하여 CARO(Computer Anti-virus Researcher Organization)의 규약에 의하여 바이러스 이름을 붙이고 백신을 개발한다.(예, Win95/CIH.1024.B)
- 접두사 : 바이러스가 동작하는 운영체제나 프로그래밍 환경 등의 활동 영역을 나타낸다. 윈도우 환경의 경우에는 Win95, W32, JS(Java Script), VBS(Visual Basic Script) 등의 접두사를 사용한다.
- 특성 명칭 : 바이러스에 성을 부여하는 것으로 바이러스 내부의 문자열이나 특징적인 증상을 이용한다.
- 주요 변수 : 바이러스 변종을 구분하는 접미사로 주로 바이러스 프로그램의 길이를 표기한다.
- 보조 변수: 단일 바이러스의 여러 변종을 구분하는 추가적인 접미사로 알파벳이나 로마자를 사용한다.
● 컴퓨터 바이러스 전파 경로
컴퓨터 바이러스는 일반적으로 전파 속도가 빠르다는 특성을 갖는데, 이처럼 빠른 전파 특성은 컴퓨터 바이러스의 감염 경로가 매우 다양하고 복잡함에 기인한다.
- 소프트웨어 불법 복사
- 컴퓨터 통신
- 컴퓨터의 공유
- 인터넷 망
- 상업용 소프트웨어 등
● 컴퓨터 바이러스 예방책
① 개인 예방책
- 데이터 손실을 최소화하기 위해 사전 백업을 해 놓는다.
- 백신 프로그램을 설치하고, 항상 최신 엔진으로 업데이트를 받는다.
- 불법 복제된 소프트웨어는 바이러스 감염 가능성이 높으므로 정품 소프트웨어만을 사용한다.
② 기업 예방책
- 사전에 중요한 데이터를 수시로 백업하는 솔루션을 준비한다.
- 서버에 비인가자의 접근과 부당 작업을 사전에 막기 위해 보안 관리 정책을 수립한다.
● 백신
악성 소프트웨어를 찾아서 제거하는 기능을 갖춘 컴퓨터 프로그램으로 안티바이러스 소프트웨어라고도 한다. 원래 목적은 바이러스를 제거하는 것이었으나 현재는 피싱 공격, 트로이 목마, 웜 등의 다양한 악성코드를 처리한다. 백신은 주요 기능은 다음과 같다.
- 검사
- 감염방지
- 복구
'자격증 > PC 정비사' 카테고리의 다른 글
[PC 정비사] 제어판 바로 실행 명령어 (0) | 2024.02.13 |
---|---|
[PC 정비사] Linux 배포판 종류 (0) | 2024.02.13 |
[PC 정비사] Unix/Linux 주요 명령어(Command) (1) | 2024.02.13 |
[PC 정비사] Windows 장치관리자 오류 메세지와 오류 코드 (1) | 2024.02.13 |
[PC 정비사] PC 프롬프트 명령어 (1) | 2024.02.12 |