서버 접속로그를 확인하여 접속자의 request page에 대한 통계와 특정 시간동안 발생되는 request 횟수에 대한 통계를 확인
3) 공격 유형에 따른 공격 종류 정의 및 대응
대역폭 소진 공격
UDP,ICMP Flooding
웹서버 앞단에 위치한 방화벽이나 상단 라우터(ISP의 협력 필요)에서 해당 프로토콜을 모두 차단하도록 ACL 설정하여 대응
대역폭 소진 공격
TCP Flooding
size가 큰 TCP Flooding 공격은 프로토콜 기준으로 차단할 수 없으므로 source ip 별 pps에 대한 임계치 정책을 설정하여 대응
웹서버 자원 소모 공격
Syn(Ack/Fin) Flooding
syn flooding 공격은 웹서버 OS의 TCP stack 자원을 소모하는 공격으로서 source ip 별 pps에 대한 임계치 정책을 설정하여 대응하거나 패킷의 헤더를 검사하여 옵션필드가 없는 등의 비정상 패킷을 차단하여 대응
DB connection 부하유발 공격
Get(Post) Flooding
다수의 HTTP 요청을 유발하여 웹서버와 DB 사이의 연동에 부하를 유발하므로 특정 시간 동안 발생하는 요청 수에 대한 임계치를 설정하여 해당 임계치 이상으로 요청을 발생하는 source ip를 차단
HTTP header를 확인하여 HTTP 표준에 맞지 않는 field가 설정되었을 경우 해당 field 값을 signature로 설정하여 차단
웹서버 자원 소모 공격
Slow header or Slow data Flooding
요청을 완료하지 않고 해당 connection을 지속적으로 유지하는 공격이므로 하나의 요청에 대한 timeout 값을 설정하여 특정 시간동안 요청이 완료되지 않을 경우 connection을 강제 종료시켜서 차단
봇 VS 브라우저 식별 방안
일반적인 봇은 브라우저와 달리 웹서버의 응답코드에 반응하여 행동하지 않으므로 웹서버에서 302 moved temporary와 같은 코드로 응답하여 봇이 발생시키는 요청을 차단
4)사후 조치
공격 시점의 BPS,PPS,CPS 변화 추이 확인
공격 규모를 확인하여 가용성이 침해될 수 있는 지점을 확인하고 정확한 데이터에 따른 차단 정책 업데이트
공격 유형 확인
프로토콜에 대한 통계, 패킷 크기에 대한 통계, 요청 형태에 대한 통계를 사에히 확인하여 시간에 따른 공격 유형의 변경 여부 또는 복합 공격 여부를 확인하여 차단 정책 업데이트
HTTP 요청 패킷 형태 확인
특정 시간에 대한 HTTP 요청 count를 확인하여 비정상적인 행위 여부를 규명하고 HTTP header의 각 field를 조사하여 HTTP 표준 준수 여부를 확인하여 비정상적일 경우 차단 정책 업데이트
Zombie PC IP 확보
GET(POST) Flooding 공격이나 Slow header(data) Flooding 공격의 경우 TCP 삼중 연결 완료와 함께 수행되므로 실제 공격 IP를 확보할 수 있으며 대역폭 소진 공격의 경우 공격자는 대부분 source ip를 위조하므로 IP 위/변조 여부를 확인하는 절차가 필요