악성코드 (Malware)
Jan 27, 2026
핵심 개념
섹션 제목: “핵심 개념”Malware는 컴퓨터 시스템을 악용, 무력화, 손상시키도록 설계된 소프트웨어의 총칭이다. 정상적으로 보이는 프로그램이 악의적 행동을 수행하여 시스템 침해, 데이터 탈취, 금전 요구 등을 수행한다.
Malware가 번성하는 핵심 원인은 최소 권한의 원칙(Principle of Least Privilege) 위반이다: “모든 프로그램과 사용자는 작업 수행에 필요한 최소한의 권한만 사용해야 한다” (Saltzer, 1974).
동작 원리
섹션 제목: “동작 원리”주요 유형
섹션 제목: “주요 유형”| 유형 | 설명 |
|---|---|
| Trojan Horse | 정상 기능을 가장하며 악의적 행동 수행 |
| Trojan Mule | 로그인 에뮬레이터로 인증 정보 탈취 |
| Spyware | 사용자 정보 수집/전송, 광고 표시 |
| Ransomware | 데이터 암호화 후 복호화 대가로 금전 요구 |
| Trap Door (Back Door) | 정상 보안 절차 우회하는 비밀 진입점 |
| Logic Bomb | 특정 조건 충족 시 활성화되는 트랩도어 |
Trojan Mule 동작
섹션 제목: “Trojan Mule 동작”1. 가짜 로그인 화면 표시2. 사용자가 ID/PW 입력3. 인증 정보 저장 후 "비밀번호 오류" 출력4. 실제 로그인 화면으로 전환5. 사용자는 오타로 착각하고 재입력Trap Door 탐지의 어려움
섹션 제목: “Trap Door 탐지의 어려움”- 소스 코드 전체 분석 필요 (수백만 줄)
- 컴파일러 자체에 트랩도어 삽입 가능 (XCodeGhost, 2015)
- 대응책: Code Review - 개발자 간 코드 검토
자기 복제 악성코드: Virus와 Worm
섹션 제목: “자기 복제 악성코드: Virus와 Worm”자기 복제 능력으로 급속 확산하는 악성코드이다.
| 특성 | Virus | Worm |
|---|---|---|
| 숙주 필요 | O (정상 프로그램에 기생) | X (독립 실행) |
| 인간 개입 | 필요 (파일 실행/공유) | 불필요 (자동 전파) |
| 전파 방식 | 감염 파일, 이메일 첨부 | 네트워크 취약점 악용 |
| 예시 | 매크로 바이러스 | Morris Worm (1988) |
Virus는 기생충(숙주 필요), Worm은 전염병(스스로 퍼짐)에 비유할 수 있다.
Virus 감염 과정: Virus Dropper(주로 Trojan Horse)가 바이러스를 시스템에 삽입 → 감염된 프로그램 시작 부분 수정 → 바이러스 코드로 점프 → 실행 후 원래 프로그램으로 복귀 (탐지 회피)
Virus 유형:
| 유형 | 특징 |
|---|---|
| File (Parasitic) | 실행 파일에 자신을 붙임 |
| Boot | 부트 섹터 감염, OS 로드 전 실행 |
| Macro | VBA 등 고수준 언어로 작성, 문서 파일 감염 |
| Rootkit | OS 자체 침투, 완전한 시스템 장악 |
| Polymorphic | 설치마다 코드 변형 → 시그니처 탐지 회피 |
| Encrypted | 복호화 코드 + 암호화된 바이러스 본체 |
| Stealth | 탐지 시스템 자체를 조작 (read 시스템콜 후킹) |
| Armored | 난독화로 분석 어렵게 함 |
| Multipartite | 부트 섹터, 메모리, 파일 동시 감염 |
Monoculture 문제: 동일 OS/소프트웨어 환경이 많을수록 한 번의 공격으로 더 많은 시스템이 감염된다. 다양성이 보안에 기여한다.
- 무료 유틸리티 설치 → 스파이웨어가 키보드 입력 기록 → 비밀번호 유출
- 손전등 앱이 연락처 접근 권한 요청 → 최소 권한 원칙 위반
- 이메일 첨부파일 열기 → 매크로 바이러스 실행 → 연락처의 모든 사람에게 자신 전송
관련 개념
섹션 제목: “관련 개념”- 공격 유형 (Attack Types) - 네트워크 기반 공격 기법
- 코드 인젝션 (Code Injection) - 코드 주입 공격
- 침입 방지 시스템 (IPS) - 악성코드 탐지/차단
- 보호의 목표와 원칙 - 최소 권한 원칙
- 서비스 거부 공격 (Denial of Service) - Worm에 의한 자원 소모
- 방화벽 (Firewall) - 네트워크 기반 악성코드 차단