콘텐츠로 이동

악성코드 (Malware)

Jan 27, 2026

Malware는 컴퓨터 시스템을 악용, 무력화, 손상시키도록 설계된 소프트웨어의 총칭이다. 정상적으로 보이는 프로그램이 악의적 행동을 수행하여 시스템 침해, 데이터 탈취, 금전 요구 등을 수행한다.

Malware가 번성하는 핵심 원인은 최소 권한의 원칙(Principle of Least Privilege) 위반이다: “모든 프로그램과 사용자는 작업 수행에 필요한 최소한의 권한만 사용해야 한다” (Saltzer, 1974).

유형설명
Trojan Horse정상 기능을 가장하며 악의적 행동 수행
Trojan Mule로그인 에뮬레이터로 인증 정보 탈취
Spyware사용자 정보 수집/전송, 광고 표시
Ransomware데이터 암호화 후 복호화 대가로 금전 요구
Trap Door (Back Door)정상 보안 절차 우회하는 비밀 진입점
Logic Bomb특정 조건 충족 시 활성화되는 트랩도어
1. 가짜 로그인 화면 표시
2. 사용자가 ID/PW 입력
3. 인증 정보 저장 후 "비밀번호 오류" 출력
4. 실제 로그인 화면으로 전환
5. 사용자는 오타로 착각하고 재입력
  • 소스 코드 전체 분석 필요 (수백만 줄)
  • 컴파일러 자체에 트랩도어 삽입 가능 (XCodeGhost, 2015)
  • 대응책: Code Review - 개발자 간 코드 검토

자기 복제 능력으로 급속 확산하는 악성코드이다.

특성VirusWorm
숙주 필요O (정상 프로그램에 기생)X (독립 실행)
인간 개입필요 (파일 실행/공유)불필요 (자동 전파)
전파 방식감염 파일, 이메일 첨부네트워크 취약점 악용
예시매크로 바이러스Morris Worm (1988)

Virus는 기생충(숙주 필요), Worm은 전염병(스스로 퍼짐)에 비유할 수 있다.

Virus 감염 과정: Virus Dropper(주로 Trojan Horse)가 바이러스를 시스템에 삽입 → 감염된 프로그램 시작 부분 수정 → 바이러스 코드로 점프 → 실행 후 원래 프로그램으로 복귀 (탐지 회피)

Virus 유형:

유형특징
File (Parasitic)실행 파일에 자신을 붙임
Boot부트 섹터 감염, OS 로드 전 실행
MacroVBA 등 고수준 언어로 작성, 문서 파일 감염
RootkitOS 자체 침투, 완전한 시스템 장악
Polymorphic설치마다 코드 변형 → 시그니처 탐지 회피
Encrypted복호화 코드 + 암호화된 바이러스 본체
Stealth탐지 시스템 자체를 조작 (read 시스템콜 후킹)
Armored난독화로 분석 어렵게 함
Multipartite부트 섹터, 메모리, 파일 동시 감염

Monoculture 문제: 동일 OS/소프트웨어 환경이 많을수록 한 번의 공격으로 더 많은 시스템이 감염된다. 다양성이 보안에 기여한다.

  • 무료 유틸리티 설치 → 스파이웨어가 키보드 입력 기록 → 비밀번호 유출
  • 손전등 앱이 연락처 접근 권한 요청 → 최소 권한 원칙 위반
  • 이메일 첨부파일 열기 → 매크로 바이러스 실행 → 연락처의 모든 사람에게 자신 전송