Dos와 DDoS

slee2·2021년 9월 23일
0

보안

목록 보기
7/8
post-thumbnail

서비스 거부 공격(Dos)

취약점 공격형

Boink, Bonk, TearDrop 공격

  • 프로토콜의 오류 제어 로직을 악용해 시스템 자원을 고갈시키는 방식.
  • TCP 패킷 안에는 각 패킷이 데이터의 어느 부분을 포함하는지 표시하기 위하여 시퀀스 넘버가 기록되어 있는데, 시스템의 패킷 재전송과 재조합에 과부하가 걸리도록 시퀀스 넘버를 속이는 공격임.
  • 이러한 공격에 의한 취약점은 패치를 통해 제거하는데 과부하가 걸리거나 계속 반복되는 패킷은 무시하고 버리도록 처리함.


랜드 공격

  • 패킷을 전송할 때 출발지 IP 주소와 목적지 IP 주소의 값을 똑같이 만들어서 공격 대상에게 보내는 것
  • 조작된 IP 주소의 값은 공격 대상의 IP 주소임.
  • 랜드 공격의 보안 대책은 운영체제의 패치 관리나 방화벽과 같은 보안 솔루션을 이용

자원 고갈 공격형

죽음의 핑 공격

  • 시스템을 파괴하는 데 가장 흔히 쓰인 초기의 Dos 공격
  • 네트워크에서 패킷을 전송하기 적당한 크기로 잘라서 보내는 특성을 이용한 공격
  • 네트워크의 연결 상태를 점검하는 ping 명령을 보낼 때 패킷을 최대한 길게(최대 65,500바이트) 보내면 수백 수천 개의 패킷으로 잘게 쪼개져 보내짐. 공격 대상 시스템은 대량의 작은 패킷을 수신하면서 네트워크가 마비됨.
  • 이 공격을 막으려면 ping이 내부 네트워크에 들어오지 못하도록 방화벽에서 ping이 사용하는 프로토콜인 ICMP를 차단해야 함.

SYN 플러딩 공격

  • 네트워크에서 서비스를 제공하는 시스템에 걸려있는 사용자 수 제한을 이용한 공격
  • 존재하지 않는 클라이언트가 서버별로 한정된 접속 가능 공간에 접속한 것처럼 속여 다른 사용자가 서비스를 제공받지 못하게 함
  • TCP의 연결 과정인 3-웨이 핸드셰이킹의 문제점을 악용한 공격

  • 공격 대응책은 SYN Received의 대기 시간을 줄이는 것
  • 침입 방지 시스템과 같은 보안 시스템으로도 공격을 쉽게 차단할 수 있음.

HTTP GET 플러딩 공격

  • 공격 대상 시스템에 TCP 3-웨이 핸드셰이킹 과정으로 정상 접속한 뒤 HTTP의 GET 메소드로 특정 페이지를 무한대로 실행하는 공격.
  • 공격 패킷을 수신하는 웹 서버는 정상적인 TCP 세션과 정상으로 보이는 HTTP GET을 지속적으로 요청하므로 시스템에 과부하가 걸림.

HTTP CC 공격

  • HTTP 1.1버전의 CC(Cache-Control)헤더 옵션을 자주 변경되는 데이터에 새로운 HTTP 요칭 및 응답을 요구하기 위해 캐시(cache) 기능을 사용하지 않을 수 있음.
  • 서비스 거부 공격에 이 옵션을 사용하면 웹 서버가 캐시를 사용하지 않고 응답해야 하므로 웹 서비스의 부하가 증가함.

동적 HTTP 리퀘스트 플러딩 공격

  • 웹 방화벽으로 특정적인 HTTP 요청 패턴을 방어하는 차단 기법을 우회하기 위해 지속적으로 요청 페이지를 변경하여 웹 페이지를 요청하는 공격 기법.

슬로 HTTP 헤더 Dos(슬로로리스) 공격

  • 서버로 전달할 HTTP 메시지의 헤더 정보를 비정상적으로 조작하여 웹 서버가 헤더 정보를 완전히 수신할 때까지 연결을 유지하는 공격. 시스템 자원을 소비시켜 다른 클라이언트의 정상적인 서비스를 방해함.

슬로 HTTP POST 공격

  • 공격자가 소량의 데이터를 느린 속도로 전송하여 웹 서버와의 연결을 장시간 유지하여 서버의 자원을 잠식, 정상 사용자의 접속을 받을 수 없게 하는 공격

스머프 공격

  • ICMP 패킷과 네트워크에 존재하는 임의의 시스템으로 패킷을 확장해 서비스 거부 공격을 수행하는 것으로, 네트워크에 존재하는 임의의 시스템으로 패킷을 확장해 서비스 거부 공격을 수행하는 것으로, 네트워크 공격에 많이 사용함.
  • 다이렉트 브로드캐스트를 악용하는 것으로 공격 방법은 간단함.

메일 폭탄 공격

  • 메일 폭탄(mail bomb)은 스팸 메일과 같은 종류
  • 메일이 폭주하여 디스크 공간을 가득 채우면 받아야 할 메일을 받을 수 없으므로 스탬메일을 서비스 거부 공격으로 분류

분산 서비스 거부 공격(DDoS)

분산 서비스 거부 공격의 기본 구성

  • 공격자(attacker): 공격을 주도하는 해커 컴퓨터
  • 마스터(master): 공격자에게 직접 명령을 받는 시스템으로 여러 대의 에이전트를 관리
  • 핸들러(handler) 프로그램: 마스터 시스템의 역할을 수행하는 프로그램
  • 에이전트(agent): 직접 공격을 가하는 시스템
  • 데몬(demon) 프로그램: 에이전트 시스템의 역할을 수행하는 프로그램

최근에 발생하는 분산 서비스 거부 공격은 악성 코드와 결합된 형태가 다수

  1. PC에서 전파가 가능한 형태의 악성 코드 작성
  2. 사전에 공격 대상과 스케줄을 정한 뒤 미리 작성한 악성 코드에 코딩
  3. 인터넷으로 악성 코드 전파하는데 전파 과정에서는 공격이 이루어지지 않도록 잠복. 이렇게 악성 코드에 감염된 PC를 좀비 PC, 좀비 PC끼리 형성된 네트워크를 봇넷(botnet)이라고 부름.
  4. 공격자가 명령을 내리거나 정해진 스케줄에 따라 일제히 공격을 수행하면 대규모의 분산 서비스 거부 공격이 이루어짐.

스니핑 공격

원리

스니핑 공격 : 데이터 속에서 정보를 찾는 것으로 공격 시 아무것도 하지 않고 조용히 있는 것만으로도 충분하여 수동적 공격이라 함.
스니핑 공격자는 가지지 말아야 할 정보까지 모두 볼 수 있어야 하므로 랜 카드의 프러미스큐어스(promiscuous) 모드를 이용해 데이터 링크 계층과 네트워크 계층의 정보를 이용한 필터링을 해제함.

0개의 댓글