서비스 거부 공격과 대책
작성자 정보
- 웹관리자 작성
- 작성일
컨텐츠 정보
- 5,686 조회
- 0 추천
- 목록
본문
파괴공격 형태 |
설명 및 대책 |
디스크 파티션/포멧팅 |
단일사용자로 접근하는 것을 방지 |
시스템 파일 삭제 |
관리자로서 "# rm -rf /"명령을 실행하며, 데이터내의 모든 데이터를 지우거나 특정 파일을 지울 수 있다. |
컴퓨터 전원 차단 |
물리적인 침입 차단이 필요하다 |
네트워크 접속 끊기 |
선로의 노출 차단등 |
과부하 공격
시스템과부하 공격에는 먼저 프로세스과부하 공격이 있다.
[그림1]을 보면 프로세스를 생성하는 프로그램이 무한정 지속적으로 수행된다. 이에 대한 대책으로서 사용자가 만들 수 있는 최대 프로세스(MAXUPROC) 수를 제한하면 된다.
[그림1] 프로세스 무한 루프 프로그램
main() { while(1) fork(); } |
어떤 사용자는 CPU 타임이 많이 요구되는 프로세스를 실행할 수 있다. 예를 들어 grep 을 이용하여 많은 디렉토리를 대상으로 find 명령을 실행하는 사용자는 시스템 CPU를 많이 사용하게 된다. 사용자들이 이러한 작업을 백그라운드(Background)작업 으로 실행하되 대신 nice 명령을 이용하여 우선순위를 낮추어 실행하도록 교육시킨다. 시스템의 디스크를 과다하게 사용하는 공 격이 있다. 디스크의 독점을 막기 위해서 각 사용자들이 어느정도의 디스크를 사용하고 있는지 quot 명령을 통해 알 수 있다.
# quot -f /dev/sd0a /dev/sd0a (/) : 79838 4452 root 4487 294 bin ....... # |
가상메모리 개념에 의해 메모리의 프로세스가 디스크의 스왑(swap) 공간에 저장되는데, 이때 스왑공간이 모자라 문제가 발생할 수 있다. 이 경우에는 단순히 스왑공간을 남는 증가하면된다. "swap -a" 이나 "swapon" 명령을 이용할 수 있다.
네트워크 서비스거부 공격
네트워크 서비스 과부하 공격은 네트워크에 대한 서비스요청으로 서버대몬(Daemon)을 오버플로우 시킴으로서 가능하다. 최근 논의되고 있는 "TCP SYNC FLOOD" 라는 공격은 다음과 같은 동작에 의해 공격을 한다.
(1) 공격자는 목표시스템에 TCP 접속을 원하는 SYNC를 보낸다. 단 이때 자신이 아닌 타 시스템의 IP어드레스로 위장하여 보낸다.
(2) 목표시스템은 위장된 제 3 자 시스템으로 응답(ACK) 를 보내면서 접속 준비가 되었음을 알린다.
(3) (1)과정이 무한 반복됨으로서 (2)과정이 무한 되풀이되고 이때 목표 시스템이 접속을 위한 큐가 계속적으로 메모리버퍼에 저장되면서 이큐의 제한된 크기로 인해 오버플로우, 즉 "FLOODING" 된다.
이러한 공격은 시스템서비스가 더 이상 외부의 정당한 접속을 받아들이지 못하게되는 것이다. 유사한 공격으로 메일폭탄(Mail Bomb, Mail Storm, Mail Flooding) 공격이 있다. 익명의 발신자로 위장하여 메시지를 무한정 보내면, 서버의 시스템은 메일을 받아 하드디스크스풀(Spool)에 저장하며 디스크자원과, 서버의 전자우편 프로세스를 낭비하며 과부하를 주는 공격이다. 존재하지 않는 수신자에게 메일폭탄을 보낸다면 서버시스템은 익명의 수신자에게 응답하여 에러메세지를 무한정 발행하여 시스템이 과부하에 걸리게 하는 방법이 있다.
이러한 공격에 대해서는 외부에서 들어오는 패킷을 필터링하여
- 발신지 IP 어드레스가 위장되었는지 확인하여 거부하거나,
- 역 DNS 매핑으로 등록된 어드레스(공식 어드레스) 인지 확인 거부등으로 공격을 감소시킬 수 있다.
이러한 공격에 대해 현재의 인터넷프로토콜에서는 근본적으로 해결할 수 없으므로, 라우터 등에서 발신지 어드레스 필터링으로 감소시키는 방법을 사용하는 것이다.
마지막으로 ICMP 공격이 있다. ICMP(Internet Control Message Protocol)은 인터넷프로토콜에서 문제가 생기면 보고해주는 프로토콜로서 예를 들어 네트워크 접속문제인 "Echo Reply", "Destination Unreachable" 혹은 네트워크 라우팅 문제 인 "Redirect" 등을 보고한다. 여기에서 잘 접속되어 있는 시스템이 문제가 있는 양 ICMP 메시지를 만들어 접속을 거부할 수 있으며, ICMP Rediect 를 의도적으로 만들어 네트워크 라우팅 자체를 혼란에 빠지게 할 수 있는 것이다. 외부에서의 ICM P 공격 시도를 방화벽(Firewall) 개념에서 모니터하거나 막을 수 있다.
관련자료
-
이전
-
다음