Tiny Fragment 공격
IT 위키
더 많은 작업
Tiny Fragment Attack
IP 단편을 아주 작게 쪼개 TCP 헤더가 첫 번째 단편에 다 들어가지 않게 만들어, TCP 헤더(포트·플래그)를 보고 거르는 패킷 필터를 우회하는 공격
- 첫 단편에는 TCP 헤더의 앞부분(출발지·목적지 포트)만 넣고, 플래그(SYN 등)는 두 번째 단편으로 넘긴다.
- 일부 패킷 필터는 첫 번째 단편만 검사하고 나머지 단편은 그대로 통과시킨다. 첫 단편에 플래그가 없으니 차단 규칙(예: 외부에서 들어오는 SYN 차단)에 걸리지 않는다.
- 목적지 호스트가 단편을 재조합하면 원래의 TCP 패킷이 되어 차단됐어야 할 연결이 열린다.
- 서비스를 마비시키는 공격이 아니라 방화벽 우회가 목적이다.
- 첫 단편이 TCP 헤더 전체(최소 20바이트)를 담지 못할 만큼 작으면 버린다 (RFC 1858).
- 단편을 재조합한 뒤에 검사하는 상태 기반 방화벽이나 IPS 를 쓴다.
| 공격 | 방법 | 목적 |
|---|---|---|
| Tiny Fragment | 첫 단편을 아주 작게 만들어 TCP 헤더를 두 단편에 나눈다 | 필터 우회 |
| Fragment Overlapping | 뒤 단편의 offset 을 앞 단편과 겹치게 해 재조합 때 헤더를 덮어쓴다 | 필터 우회 |
| Teardrop | offset 을 겹치거나 어긋나게 조작해 재조합 오류를 낸다 | 서비스 거부 |
| Ping of Death | 최대 크기를 넘는 ICMP 패킷을 보내 수많은 단편으로 쪼개지게 한다 | 서비스 거부 |