Skip to content
난이도 출제 빈출문제은행 6

서비스 거부·네트워크 공격 ​

네트워크 공격은 크게 두 갈래다. 하나는 서버를 쓰지 못하게 만들어 가용성(availability)을 깨는 서비스 거부 공격(Denial of Service)이고, 다른 하나는 통신을 엿보거나 가로채 기밀성(confidentiality)·무결성(integrity)을 깨는 공격이다. 방어 관점의 원리와 대응만 다룬다. 시험은 공격 원리를 한두 문장으로 주고 이름을 쓰게 한다.

서비스 거부 공격 ​

서비스 거부 공격(DoS, Denial of Service)은 서버의 자원이나 네트워크 대역폭을 바닥내 정상 사용자가 서비스를 쓰지 못하게 하는 공격이다. 여러 대의 감염된 컴퓨터가 한 대상을 동시에 공격하면 분산 서비스 거부 공격(DDoS, Distributed Denial of Service)이라 한다. 출발지가 많아 하나를 막는 것으로는 대응할 수 없다.

SYN 플러딩 ​

TCP(Transmission Control Protocol, 전송 제어 프로토콜)는 연결 전에 3방향 핸드셰이크(3-way handshake)로 서로 준비됐는지 확인한다. 연결을 시작하겠다는 요청 신호 SYN, 그에 대한 응답 SYN+ACK, 잘 받았다는 확인 신호 ACK가 차례로 오가며, 서버는 마지막 ACK를 기다리는 동안 연결을 대기 목록에 잡아 둔다.

SYN 플러딩(SYN flooding)은 가짜 출발지 주소로 SYN만 대량으로 보내고 ACK는 보내지 않는 공격이다. 서버의 대기 목록이 반쯤 열린 연결로 가득 차면 정상 사용자의 연결 요청을 받을 수 없다. 서버가 대기 목록에 자리를 잡지 않고 연결 정보를 SYN+ACK의 순서 번호에 담아 보내고, 나중에 정상 ACK가 돌아오면 그 번호로 연결을 그때 만드는 SYN 쿠키(SYN cookie)가 대표 대응이다.

네트워크 공격 비교 ​

공격원리대응
SYN 플러딩SYN만 보내 연결 대기열을 채움SYN 쿠키, 대기 시간 단축
스머핑피해자 주소로 위조한 ICMP(Internet Control Message Protocol, 인터넷 제어 메시지 프로토콜)를 브로드캐스트 주소(broadcast address)로 보내 응답 폭주라우터의 브로드캐스트 전달 차단
LAND출발지와 목적지 IP를 모두 피해자로 설정출발지·목적지가 같은 패킷 차단
Ping of Death허용 크기를 넘는 ICMP 패킷을 조각내 보냄크기 초과 패킷 차단, 패치
티어드롭조각의 오프셋을 겹치게 조작해 재조립 오류 유발조각 재조립 검사, 패치
세션 하이재킹(session hijacking)인증이 끝난 세션을 가로채 정상 사용자로 위장세션 암호화, 재인증
ARP 스푸핑가짜 ARP 응답으로 내 MAC 주소를 남의 IP에 연결정적 ARP 테이블, 감시 도구
스니핑네트워크 중간에서 남의 패킷을 엿봄통신 암호화

스머핑(smurfing)은 ICMP(Internet Control Message Protocol, 인터넷 제어 메시지 프로토콜) 에코 요청을 네트워크의 브로드캐스트 주소로 보내되 출발지를 피해자로 위조한다. 그 네트워크의 모든 호스트가 피해자에게 한꺼번에 응답해 작은 요청이 큰 공격 트래픽으로 불어난다.

LAND 공격(Local Area Network Denial attack)은 패킷의 출발지 IP와 목적지 IP를 모두 공격 대상의 주소로 적는다. 대상은 자기 자신에게 계속 응답하다 자원을 소모한다. Ping of Death는 IP 패킷 최대 크기인 65,535바이트를 넘는 ICMP 패킷을 조각내 보내 재조립하는 쪽을 넘치게 하고, 티어드롭(teardrop)은 조각 위치를 겹치게 조작해 재조립 오류를 일으킨다.

가로채기와 엿보기 ​

세션 하이재킹(session hijacking)은 사용자가 인증을 마친 뒤 서버와 맺은 세션을 가로채는 공격이다. 인증은 이미 끝났으므로 공격자는 비밀번호 없이도 정상 사용자처럼 서버를 쓴다. 공격자가 오가는 패킷을 엿봐 다음에 올 TCP 순서 번호(sequence number)를 알아내 그 번호로 위조 패킷을 먼저 보내면, 서버가 정상 사용자의 것으로 착각해 받아들인다. 이 방식이 대표적이다.

ARP 스푸핑(ARP spoofing)은 IP 주소를 MAC 주소(Media Access Control address, 기기 고유 식별 번호)로 바꿔 주는 ARP(Address Resolution Protocol)가 응답을 검증하지 않는 점을 이용한다. 가짜 응답으로 남의 IP에 자기 MAC 주소를 대응시키면 그 IP로 갈 패킷이 공격자에게 온다. 스니핑(sniffing)은 네트워크 중간에서 남의 패킷을 몰래 엿보는 것으로, 데이터를 바꾸지 않아 수동적 공격(passive attack)에 속한다.

시험 포인트 ​

  • 3-way handshake의 마지막 ACK를 보내지 않아 대기열을 채움 → SYN 플러딩.
  • 출발지를 피해자로 위조, 브로드캐스트로 응답 증폭 → 스머핑. 대응: 브로드캐스트 전달 차단.
  • 출발지 IP = 목적지 IP = 피해자 → LAND 공격.
  • 인증이 끝난 세션을 빼앗음, TCP 순서 번호 → 세션 하이재킹.
  • 가짜 ARP 응답으로 IP와 MAC 대응을 속임 → ARP 스푸핑. 엿보기만 함, 수동적 공격 → 스니핑.

관련 문서