보안

http Flood 공격 대응

난쓰넌말 2024. 10. 30. 10:15
사용자들이 서비스 동기화가 안된다는 문의가 있어 확인한 내용을 기록한다.
서비스 데이터를 가공한 후 서버에 옮겨 ftp형태로 제공하고 있다.

점검사항

  • 실제 서비스 상태 확인 (안됨)
  • 외부에서 Telnet 점검 (정상)
    • [cmd] telnet ip port  (아래 예시는 참고를 위해 pc에서 수행)
    • ex) telnet 11.11.11.11 1234 

  • 해당서버에서 서비스 포트 점검 (정상)
    • 서비스 포트 리스닝 확인 (아래 예시는 참고를 위해 pc에서 수행)
    • 예시) netstat -ano |findstr "포트.* LIST"

  • TCP Connection 상태 확인
    • [cmd] netstat -ano|findstr "TCP.*EST"
    • 8100 포트 connection 수는 2400개 가량임
      • (갯수 확인 명령참고) netstat -ano | findstr "TCP.*EST" |find /c /v ""

  • 서비스 로그 확인 
    • 24-09-24 22시 이후 Max Connection 발생했고 자원을 고갈시킴 (2500개)
    • (2024-09-24 21:34:49 [5500, 7260])Error: GetQueuedCompletionStatus: 121
      (2024-09-24 22:03:56 [5500, 7260])Sock(9696), Max Connection (2500), marked

원인

몇개의 IP (3.36.246.36 등)에서 악의적으로 서비스 포트를 고갈시킴

일반적인 syn flood 공격은 서비스 요청을 하되 응답에 대한 3-hand shake를 완료하지 않기 않기 때문에 다량의 SYN_SENT 혹은 SYN_RECEIVED 상태를 유발하여 서비스를 마비시킨다.  그러나 현 상황은 3-hand shake를 완료한 상태로 자원 Pool을 소모시킨것으로 보아 HTTP flood 공격으로 의심된다.

3.36.246.36    (connection 1205개)
43.203.84.42   (connection 1233개)

 

해결

방화벽에 해당 IP를 차단하여 공격에 대비하였고 추가 공격에 대한 모니터링을 지속중이다.