현재 선택한 정보처리 과정

정보처리기사 필기 이론 학습

이론 목록으로 돌아가기

서비스 공격·DoS·DDoS·악성코드

스니핑·스푸핑·재전송·중간자·파밍을 구분하고 DoS·DDoS의 직접·반사·증폭 구조를 이해한다. SYN Flooding·Smurf·Teardrop·LAND와 악성코드의 복제·전파·위장 특성을 비교한다.

예상 읽기 8

핵심 요약

서비스 공격은 정보를 훔쳐보거나 신원을 위조하고, 통신을 변조하거나 자원을 고갈시켜 정상 서비스를 방해하는 행위다. 어떤 정보를 이용하고, 무엇을 위조하며, 어떤 자원이 영향을 받는지를 중심으로 구분한다.

DoS는 정상적인 서비스 이용을 방해하는 공격이고, DDoS는 여러 분산된 공격원을 이용하는 DoS 형태다. 악성코드는 복제·전파·위장·은닉·원격 통제·정보 수집 등의 특징으로 구분한다.

1. 주요 서비스 공격

공격핵심 원리판별 기준
스니핑(Sniffing)통신 내용을 엿듣거나 수집도청·패킷 관찰
스푸핑(Spoofing)신원·주소·정보를 위조신뢰하는 대상인 것처럼 위장
재전송(Replay)유효했던 메시지를 다시 사용과거 인증·거래 메시지 재사용
중간자(MITM)통신 당사자 사이에 개입중계하면서 도청·변조 가능
세션 하이재킹유효한 세션을 탈취·악용로그인된 사용자 권한으로 행동
서비스 거부정상 처리 자원·기능을 사용할 수 없게 함가용성 저하

IP 스푸핑은 출발지 IP 등을 위조하는 것이고, ARP 스푸핑은 IP와 MAC 주소의 대응 정보를 속여 통신 경로에 영향을 준다. DNS 스푸핑은 이름 해석 결과를 속여 다른 주소로 유도한다. 공격 이름이 비슷해도 위조하는 대상이 다르다.

재전송 방어에는 nonce, 순서 번호, 유효시간, 사용 이력 검증 등을 활용한다. 단순히 암호화된 메시지라는 이유만으로 재전송이 방지되지는 않는다. TLS도 상대 인증서 검증이 잘못되거나 단말 자체가 탈취되면 모든 위협을 해결하지 못한다.

2. 사용자를 속이거나 장기 침투하는 공격

용어의미
피싱(Phishing)정상 기관·서비스를 사칭하여 정보 입력·위험 행동 유도
스피어 피싱특정 개인·조직을 겨냥한 맞춤형 피싱
파밍(Pharming)DNS·호스트 정보 등의 조작으로 정상 주소 입력에도 가짜 사이트 유도
워터링 홀표적이 자주 방문하는 웹사이트 등을 침해하여 접근 시 감염 유도
APT특정 목표에 대해 다양한 수단으로 장기간 지속하는 침해 활동
제로데이 공격알려지지 않았거나 이용 가능한 수정책이 아직 마련되지 않은 취약점을 악용

파밍은 단순히 비슷한 링크를 클릭하도록 속이는 경우와 달리 이름 해석 등의 조작이 핵심 단서가 된다. APT는 특정 악성코드 하나의 이름이 아니라 지속적·표적화된 공격 활동의 성격을 나타낸다.

3. DoS·DDoS와 자원 고갈

공격 대상 자원은 회선 대역폭뿐 아니라 패킷 처리 능력, 연결 상태 테이블, CPU·메모리, 스레드, DB 연결, 응용 처리량 등이다. 트래픽 양이 많지 않아도 연결을 오래 점유하거나 비싼 연산을 반복시키면 서비스가 마비될 수 있다.

유형구조
직접 공격공격원이 대상에 직접 요청·패킷 전송SYN Flooding, HTTP Flooding
반사 공격출발지를 피해자로 위조하여 제3자 응답이 피해자로 향하게 함응답형 UDP 서비스 악용
반사·증폭 공격반사 구조에 요청보다 큰 응답이 결합DNS 등의 큰 응답 악용

반사는 응답을 제3자가 보내도록 하는 구조, 증폭은 요청보다 큰 응답 등으로 공격 효과가 커지는 특성이다. 반사와 증폭을 완전히 같은 뜻으로 외우지 않는다. 모든 DDoS에 출발지 주소 위조나 반사가 필요한 것도 아니다.

좌우로 이동해 그림을 확인하세요.그림 크게 보기
출발지를 피해자로 위조한 요청 때문에 제3자의 응답이 피해자로 향한다. 요청 100바이트와 응답 1,500바이트의 크기 비는 15배이다.
출발지를 피해자로 위조한 요청 때문에 제3자의 응답이 피해자로 향한다. 요청 100바이트와 응답 1,500바이트의 크기 비는 15배이다.

4. 대표 DoS·DDoS 공격 비교

공격원리·핵심 단서
SYN FloodingTCP 연결 설정을 완료하지 않은 반개방 연결 상태 등을 대량 점유
UDP Flooding다량의 UDP 트래픽으로 대역폭·패킷 처리 등 소모
ICMP Flooding다량의 ICMP 메시지로 통신·처리 자원 소모
HTTP FloodingHTTP 요청을 대량 발생시켜 웹·응용·DB 자원 소모
Slow HTTP연결·요청을 느리게 유지하여 제한된 연결 자원 점유
Smurf피해자 주소로 위조한 ICMP 요청을 브로드캐스트 대상으로 보내 다수 응답 유도
FraggleSmurf와 유사하게 UDP 서비스를 이용하는 반사 공격
Ping of Death고전적으로 비정상적으로 큰 IP 패킷의 재조립 처리 취약점 악용
Teardrop비정상·겹치는 단편 정보로 IP 재조립 처리의 취약점 악용
LAND출발지와 목적지 주소·포트를 동일하게 조작한 패킷으로 취약한 처리 방해

SYN Flooding은 TCP 연결 설정 과정, Teardrop은 IP 단편 재조립, LAND는 출발지·목적지 정보가 같다는 점을 연결한다. Smurf의 대표 구조는 브로드캐스트 응답 유도이며 단순 멀티캐스트 전송과 구분한다.

Ping of Death·Teardrop·LAND는 역사적인 구현 취약점의 원리를 설명하는 용어다. 현대 시스템에서 같은 형태의 패킷을 보내면 반드시 장애가 발생한다는 의미가 아니다.

초기 DDoS 관련 도구 이름에는 Trinoo, TFN, TFN2K, Stacheldraht가 있다. 공격자·중간 제어 시스템·다수 에이전트가 연결되는 구조를 이해하되, 현대의 모든 DDoS가 동일한 제어 구조를 사용한다고 일반화하지 않는다.

5. DoS·DDoS의 방어

대역폭이 이미 가득 찬 상태에서는 서버 내부의 차단만으로 외부 회선을 복구할 수 없다. 네트워크 사업자·상류 구간의 차단이나 트래픽 분산·정화가 필요할 수 있다.

연결·요청 수 제한, SYN Cookie와 같은 연결 상태 보호, 적절한 타임아웃, 캐시, 자원 한도, 불필요 서비스 제거를 공격 자원에 맞게 적용한다. 출발지 주소 위조 방지는 반사 공격 감소에 도움이 되지만 모든 직접 공격을 막는 것은 아니다.

정상 사용자가 갑자기 몰리는 현상과 DDoS는 모두 부하를 높일 수 있다. 단순한 접속 증가만으로 공격을 확정하지 않고 요청 패턴과 업무 흐름을 함께 확인한다. 정상 사용자의 피해를 고려하지 않은 과도한 차단도 가용성을 해칠 수 있다.

6. 악성코드의 종류

종류대표 특징
바이러스숙주 파일·실행 영역 등에 감염하여 복제·확산
웜(Worm)독립적인 자기 복제·네트워크 전파가 대표 특징
트로이 목마유용한 프로그램처럼 위장해 악성 기능 수행, 자기 복제가 본질은 아님
랜섬웨어자료 암호화·사용 제한 등으로 금전 요구, 유출 협박이 결합될 수 있음
스파이웨어사용자·시스템 정보 등을 몰래 수집
키로거키 입력 기록·수집
루트킷악성 활동이나 존재를 숨기고 통제를 유지하는 도구 집합
백도어정상 인증·접근 절차를 우회하는 숨은 접근 경로
외부 제어에 따라 명령을 수행하는 감염 프로그램·장치
논리 폭탄특정 조건 충족 시 악성 기능 실행
드로퍼·다운로더다른 악성코드를 설치하거나 내려받는 역할

봇넷은 원격 제어되는 다수 봇의 집합이다. DDoS뿐 아니라 스팸·정보 탈취 등에도 악용될 수 있다. 애드웨어는 광고 표시 기능과 관련되며, 모든 광고 소프트웨어를 무조건 악성코드로 볼 수는 없다. 동의 없는 설치·추적·방해 여부가 중요하다.

하나의 악성코드는 웜처럼 전파하면서 랜섬웨어 기능을 수행할 수 있다. 이 분류들이 항상 상호 배타적인 것은 아니다.

바이러스는 감염 대상에 따라 부트·파일·매크로 바이러스 등으로 구분한다. 다형성은 암호화·복호화 부분 등의 형태를 바꾸어 서명 탐지를 어렵게 하고, 변종형·메타모픽은 기능을 유지하면서 코드 자체를 변형하는 특징으로 설명한다. 은폐형은 감염 흔적을 숨기는 데 초점이 있다.

7. 악성코드 예방·대응

신뢰할 수 있는 소프트웨어 사용, 패치, 최소 권한, 실행 통제, 이메일·파일 점검, 행위 탐지, 네트워크 분리, 보호된 백업을 결합한다. 백신의 알려진 패턴 탐지만으로 모든 새로운 악성 행위를 탐지할 수는 없다.

감염이 확인되면 확산을 막기 위해 격리하고, 침해 범위와 원인을 확인한 뒤 악성 요소 제거 또는 신뢰할 수 있는 환경의 재구축을 수행한다. 탈취된 계정과 남은 백도어도 고려해야 한다. 파일 하나를 삭제했다는 사실만으로 안전한 상태가 회복되었다고 단정하지 않는다.

랜섬웨어 대비 백업은 운영 시스템과 분리하고 복원이 가능한지 확인해야 한다. 백업으로 데이터를 되돌릴 수 있어도 이미 외부에 유출된 정보를 회수하는 것은 별개의 문제다.

공격 분류에서 보는 기준

서비스 거부의 제한 자원

서비스 거부는 회선 대역폭만 소모하는 공격이 아니다. 연결, 스레드, 메모리, 처리 시간 등의 제한 자원이 먼저 고갈될 수 있다. 요청을 매우 느리게 보내 연결을 오래 점유하는 경우에는 총 전송량이 작아도 정상 사용자가 연결하지 못할 수 있다. 정상적인 느린 사용자를 고려한 시간·자원 정책이 필요하다.

반사 공격은 제3자의 응답을 피해 대상 쪽으로 향하게 하는 구조, 증폭은 요청보다 큰 응답 등으로 트래픽 규모를 키우는 성질이다. 요청 100바이트에 응답 1,500바이트라면 추가 헤더를 제외한 크기 증폭비는 15배이다. 크기의 비율과 패킷 손실률·실제 공격 성공 여부를 혼동하지 않는다. 이 내용은 공격을 식별하고 자원 보호를 판단하기 위한 기초 범위이다.