210 likes | 477 Views
정보 시스템 보안 3-2 장 . 네트워크보안 (DoS) 최미정 mjchoi@kangwon.ac.kr 강원대학교 컴퓨터과학전공. 네트워크와 관련된 해킹 기술 중 DoS 에 대해서 알아본다. 1. DoS 를 막기 위한 대응책을 알아본다. 2. DoS 공격의 이해. DoS(Denial of Service) 공격은 다른 해킹에 비하여 비교적 간단하다 . 공격대상이 수용할 수 있는 능력 이상의 정보나 사용자 또는 네트워크의 용량을 초과 시켜 정상적으로 작동하지 못하게 한다.
E N D
정보 시스템 보안 3-2장. 네트워크보안 (DoS) 최미정 mjchoi@kangwon.ac.kr 강원대학교 컴퓨터과학전공
네트워크와 관련된 해킹 기술 중 DoS에 대해서 알아본다. • 1 • DoS를 막기 위한 대응책을 알아본다. • 2
DoS공격의 이해 • DoS(Denial of Service) 공격은 다른 해킹에 비하여 비교적 간단하다. 공격대상이 수용할 수 있는 능력 이상의 정보나 사용자 또는 네트워크의 용량을 초과 시켜 정상적으로 작동하지 못하게 한다. • DoS 공격은 크게 다음과 같은 세가지로 생각할 수 있다. • 1. 파괴 공격 : 디스크나 데이터, 시스템의 파괴 • 2. 시스템 자원의 고갈 : CPU, 메모리, 디스크의 사용에 과다한 부하를 가중시킴 • 3. 네트워크 자원의 고갈 : 쓰레기 데이터로 네트워크의 대역폭을 고갈시킴
DoS공격(Ping of Death) • 1. Ping of Death • 공격의 기본은 Ping을 이용하여 ICMP 패킷을 정상적인 크기보다 아주 크게 만드는 것이다. 이렇게, 크게 만들어진 패킷은 네트워크를 통해 라우팅(Routing)되어 공격 네트워크에 도달하는 동안 아주 작은 조각(Fragment)이 된다. 공격대상 시스템은 이렇게 작게 조각화된 패킷을 모두 처리해야 하므로 정상적인 Ping의 경우보다 훨씬 많은 부하가 걸린다.
DoS공격(Syn Flooding) • Syn Flooding은 서버별 한정되어 있는 동시 사용자 수를 존재하지 않는 클라이언트가 접속한 것처럼 속여 다른 사용자가 서버에서 제공하는 서비스를 받지 못하게 하는 것이다.
DoS공격(Syn Flooding) • 정상적인 3Way 핸드쉐이킹
DoS공격(Syn Flooding) • Syn Flooding 공격 시 3Way 핸드쉐이킹
DoS공격(Syn Flooding) • Syn Flooding 보안 대책 • 이처럼 아직도 매우 효과적인 Syn Flooding 공격을 막는 방법은 보안 패치로서 대기 시간을 줄이는 것이다. 하지만 시스템의 특성상 무조건 대기 시간을 줄일 수 없는 경우가 있다. • 또한 방화벽에서도 정상적인 접속의 시도와 비정상적인 Syn Flooding 공격의 시도를 구분할 수 있는 방법이 없기 때문에 직접적인 차단은 불가능하다. 예방할 수 있는 방법은 일차적으로 시스템에 패치를 하는 것이며, 그 다음으로는 IDS의 설치다. • 공격대상의 TCP Dump에서 볼 수 있듯이 이 공격은 일정 시간 내에 동시 접속자 수를 점유해야 하므로 아주 짧은 시간 안에 똑같은 형태의 패킷을 보내게 된다. 이는 매우 정형화된 형태로 네트워크에서 쉽게 인지가 가능하며 해당 ISP 업체에 연락하여 그에 해당하는 IP 대역을 접속 금지시키거나 확인한 후 방화벽, 또는 라우터에서 해당 접속을 금지시킴으로서 시스템의 서비스 중지를 막을 수 있다.
DoS공격(Boink, Bonk, Teardrop) • 여러 가지 프로토콜은 기본적으로 신뢰성을 높이고자 하는 목적을 가지고 있다. 신뢰성은 다음의 세가지로 크게 생각할 수 있다. • 1. 패킷의 순서가 올바른가? • 2. 중간에 손실된 패킷은 없는가? • 3. 손실된 패킷의 재전송 요구 • Boink, Bonk, TearDrop은 위의 사항을 • 위반함으로써 공격 대상 시스템에 • DoS 공격을 가하게 된다.
DoS공격(Boink, Bonk, Teardrop) • Boink, Bonk • Bonk는 처음 패킷을 1번으로 보낸 후 두번째, 세번째 패킷 모두 시퀀스 넘버를1번으로 조작해서 보낸다. Bonk를 수정한 Boink 공격은 처음 패킷을 1번으로 보낸 후 두번째 패킷은 101번, 세번째 패킷은 201번으로 정상적으로 보내다가 중간에서 일정한 시퀀스 넘버로 보낸다. 열번째 패킷은 1001번, 열한번째 패킷도 1001번, 열두번째 패킷도 1001번으로 보내는 것이다.
DoS공격(Boink, Bonk, Teardrop) • TearDrop • TearDrop 은 패킷을 겹치게 또는 일정한 간격의 데이터가 빠지게 전송한다.
DoS공격(LAND) • 패킷을 전송할 때 출발지 IP 주소와 목적지 IP 주소 값을 공격자의 IP 주소 값으로 똑같이 만들어서 공격대상에게 보낸다. • 시스템은 처음 시도된 Syn에 대한 Reply 패킷을 출발지 IP 주소 값을 참조하여 그 값을 목적지 IP 주소 값으로 설정하여 패킷을 보낸다. 하지만 이 값은 자기자신의 IP 주소 값이므로 네트워크 밖으로 나가지 않고 자신에게 다시 돌아온다. 이 공격법은 Syn Flooding처럼 동시 사용자 수를 점유해버리며, CPU 부하까지 올리게 된다.
DoS공격(Smurf) • 공격자가 172.16.0.255로 ICMP Request 패킷으로 Direct 브로드캐스트를 했을 경우 다음과 같이 패킷이 전달된다.
DoS공격(Smurf) • ICMP Requset 패킷을 전달받은 에이젼트들은 공격대상에게 ICMP Replay 패킷을 보낸다.
DoS공격(Mail Bomb) • Mail Bomb는 흔히 폭탄 메일이라고 한다. 스팸 메일도 이와 같은 종류다. 메일 서버는 각 사용자에게 일정한 양의 디스크 공간을 할당하는데, 메일이 폭주하여 디스크 공간을 가득 채우면 정작 받아야 하는 메일을 받을 수 없다. 이 때문에 스팸 메일은 DoS 공격이 될 수도 있다.
DDoS공격 • Distributed Denial of Service • 많은 수의 호스트들에 패킷을 범람시킬수 있는 DoS공격용 프로그램들이 분산 설치 • 이들이 서로 통합된 형태로 어느 타겟 시스템에 대하여 일제히 데이터 패킷을 범람 • 타겟 시스템의 성능저하 및 시스템 마비를 일으키는 기법 • TCP SYN flooding공격, UDP flooding공격, ICMP echo requesting공격, ICMP broadcasting 공격(Smurf공격) 등의 형태로 나타남 • 공격자의 위치 및 발원지 파악 불가능 • 공격의 특성상 대부분이 자동화된 툴을 사용 • 공격 범위가 방대함 • 공격을 증폭시켜주는 에이전트 존재
DDoS툴의 출현 시기 • 1999년 6월 미국에서 2000여개의 해킹당한 시스템에 trinOO 출현. • 1999년 8월 trinoo와 유사한 TFN(Tribed Flood Network)이 Mixter라는 이름의 인물에 의해 개발됨. • 1999년 10월 TFN의 발전된 버전인 Stacheldraht라는 새로운 DDoS툴이 미국 유럽의 해킹 당한 시스템에서 출현됨 • 1999년 12월 역시 TFN의 발전된 형태인 TFN2K출현.
공격자(Attacker) 공격을 주도하는 해커의 컴퓨터 마스터(Master) 공격자에게서 직접 명령을 받는 시스템으로 여러 대의 에이전트(Agent)를 관리하는 시스템 핸들러(Handler) 마스터에 설치되는 프로그램 클라이언트라고도 함 에이전트(Agent) 공격대상(Target)에 직접적인 공격을 가하는 시스템 데몬(Daemon) 에이전트에 설치되는 프로그램 DDoS공격의 구성요소
DDoS공격의 일반적인 순서 • 시스템 침입 후 핸들러 및 데몬 프로그램 설치 단계 • 전통적 의미의 해킹 • 마스터와 에이전트로 이용할 수백 내지 수천 개의 시스템에 칩입하여 root 권한을 획득한 후 그곳에 핸들러와 데몬 프로그램을 설치 • 이 단계에서는 단 시간내 많은 시스템을 연달아 remote 해킹 할 수 있는 자동화된 해킹 툴 사용 • DDoS 공격 단계 • 공격자 시스템에서 마스터 시스템에 연결하여 마스터를 통해 에이전트 시스템의 데몬으로 하여금 타겟 시스템에 DDoS 공격 수행
DoS와 DDoS공격에 대한 대응책 • 방화벽 설치와 운영 • 방화벽 규칙 집합(Rule Set)을 만들어 비 정상적인 패킷 차단 • 최소한의 서비스만 제공하고 사용하지 않는 서비스의 포트는 차단 • 외부 네트워크에서 들어오는 출발지 주소가 내부 네트워크에 존재하는 주소와 일치하면 차단(스푸핑 된 IP일 가능성 높음) • 알려진 서비스 외에 모든 서비스에 대한 요청을 차단 • 침입탐지시스템 • 방화벽을 우회한 공격 패킷을 탐지 • ICMP 패킷을 이용한 DoS 공격이나 백도어의 경우 방화벽에서 무차별적으로 차단하기에는 곤란하기 때문 • 침입 패턴에 의한 탐지 • 안정적인 네트워크 설계 • 라우터 설정(일정량 이상의 패킷은 통과시키지 않도록..) • 장비간 로드 밸런싱 설정
DoS와 DDoS공격에 대한 대응책 • 시스템 패치 • 스캔 • 시스템에 설치된 마스터 또는 에이전트 프로그램을 스캐너 등을 이용하여 탐지하여 제거 • 서비스 별 대역폭 제한 • L4 스위치는 각 서비스 별로 대역폭 조절 가능 • 하나의 서비스에 대한 공격이 이루어 지더라도 나머지 서비스에 대한 영향을 최소화 할 수 있음 • 공격이 이루어지고 있는 서비스 역시 공격에 성공하기 위한 최소한의 대역폭을 얻을 수 없기 때문에 공격에 성공하기 어려움