시스템 보안 설계
서비스 공격 유형
- 서비스 거부 공격의 개념과 서비스 거부 공격의 종류별 특징을 이해
- 서버 인증과 서버 접근 통제의 개념을 이해하고 인증의 종류와 접근 통제 정책의 종류를 이해
- 보안아키텍처와 보안 Framework의 개념 및 보안 통제 항목의 종류를 이해
서비스 거부 공격
- 서비스 공격은 일반적으로 서비스 거부(Dos) 공격을 뜻함
- 서버는 서비스 요청에 대해 서비스를 제공하는 의무가 있음
- 서버가 서비스 능력을 초과하는 요청을 도시다발적으로 받게 되면 서비스 불능상태로 마비됨
Ping Flood
- 하나의 사이트로 많은 양의 ICMP echo request를 요청할 때 이 사이트에서 존재하는 시스템 자원은 개별 메시지들에 각각 응답하기 위해 시스템 자원(resource)를 모두 사용해 버리는 점을 이용
- ICMP : Internet Control Message Protocol
- TCP/IP 기반의 인터넷 통신
서비스에서 인터넷 프로토콜에 결합
되어 전송되는 프로토콜로, IP에 대해 통신 중 발생하는 오류 처리와 전송 경로 변경,에코 요청, 에코 응답
등을 제어하기 위한 메시지를 취급
1 | ping [주소] |
Ping of Death
- Ping 명령을 전송할 때 패킷의 크기를 인터넷 프로토콜 허용 범위(65,536 byte)이상으로 전송하여 공격 대상의 네트워크를 마비시키는 서비스 거부 공격
- Ping 기본 크기 : 32byte
1 | ping -I 100 -n 5 [주소] |
SMURFING
- 엄청난 양의 데이터를 한 사이트에 집중적으로 보냄으로써 네트워크를 불능 상태로 만듬
- 공격자는 패킷의 송신 주소를 공격 대상의 IP주소로 위장하고 해당 네트워크 라우터의 브로드캐스트 주소를 수신지로 하여 패킷을 전송하면 라우터의 브로드캐스트 주소로 수신된 패킷은 해당 네트워크 내의 모든 컴퓨터로 전송함 - Broadcast : 네트워크에 연결된 전체 컴퓨터에 패킷을 전송할 때 사용하는 주소
- 해당 네트워크 내의 모든 컴퓨터는 수신된 패킷에 대한 응답 메시지를 송신 주소인 공격 대상 컴퓨터로 집중적으로 전송하게 되어 공격 대상지는 네트워크 과부하로 정상적인 서비스 수행이 불가능해짐
SYN Flooding(Synchronize sequence number)
-
TCP는 신뢰성 있는 전송을 위해 3-way-handshake를 거친 후에 데이터를 전송
- Client > Server
SYN 패킷 전송
대상 서버에 접속한다고 손을 내밈 - Server > Client
SYN + ACK 패킷 전송
서버에는 접속해도 된다고 응답함 - Client > Server
ACK(Acknowledgment) 패킷 전송
응답메시지를 받으면 데이터를 보냄
- Client > Server
-
공격자가 가상의 클라이언트로 위장한 후 공격 대상지인 서버로 ‘SYN’ 신호를 보냄
-
서버는 'SYN+ACK’신호를 가상의 클라이언트로 보내면서 클라이언트의 접속을 받아들이기 위한 메모리의 일정 공간을 확보함
-
공격자가 사용할 수 없는 IP 주소를 이용하여 공격 대상지 서버로 반복적인 3-way-handshake 과정을 요청하면 공격 대상지 서버는 메모리 공간을 점점 더 많이 확보한 상태에서 대기하게 됨
-
대비
SYN 수신 대기 시간을 줄이거
나침입 차단 시스템을 활용
TearDrop
- 데이터의 송수신과정에서 패킷의 크기가 커서 여러 개로 분할되어 전송될 때 분할 순서를 알 수 있도록 Fragment Offset 값을 함께 전송
- 이때 Offset 값을 변경시켜 수신 측에서 패킷을 재조립할 때 오류로 인한 과부하 발생시켜 시스템 다운 유도 - 일반적으로 128kb로 토막낸다. 8개 - 다시 받을 때 합친다.
- 대비 - Fragment Offset 잘못된 경우
해당 패킷을 폐기
Land
- 패킷을 전송할 때 송신 IP주소와 수신 IP주소를 모두 공격 대상의 IP주소로 설정한 후 공격 대상에게 전송하는 것
- 이 패킷을 받은 공격 대상은 송신 IP주소가 자신이므로 자신에게 응답을 수행하는데 이러한 패킷이 계속해서 전송될 경우 자신에 대해 무한 응답하게 함
- 대비
- 송신 IP주소와 수신 IP 주소를
검사
DDoS(Distributed Denial of Service, 분산 서비스 거부) 공격
- 여러 곳에 분산된 공격 지점에서 한 곳에 서버에 대해 서비스 거부 공격을 수행
- 일부 호스트에 다수의 에이전트를 관리할 수 있는 핸들러 프로그램을 설치하여 마스터로 지정후 공격
- 취약점이 있는 호스트들을 탐색한 후 이들에 분산 서비스 공격용 툴을 설치하여 좀비PC로 만듬
- 분산 서비스 공격용 툴 - Trin00 - TFN - TFN2K - Stacheldraht