블로그 | NGINX

NGINX 앱 보호 서비스 거부는 애플리케이션 수준 DoS 공격을 차단합니다.

NGINX-F5-수평-검정-유형-RGB의 일부
야니브 사즈만 썸네일
야니브 사즈만
2021년 7월 6일 게시

디지털 혁신으로 인해 비즈니스 잠재력이 가속화되는 반면, 불행히도 위협 환경도 확대되고 있습니다. 보안팀이 범위와 책임이 확대되는 상황에 적응하는 데 분주한 가운데, 공격자들은 이를 이용하고 있으며 재정적 이익을 위해 애플리케이션을 악용하는 방식이 그 어느 때보다 정교해지고 있습니다. 네트워크 수준에서의 기존 서비스 거부(DoS) 공격에 비해 애플리케이션 수준( 7계층 ) DoS 공격이 급격히 증가하고 있습니다. 그 이유는 현대 애플리케이션 아키텍처에 맞게 설계되지 않은 기존 방어 수단을 우회할 수 있기 때문입니다.

공격자의 관점에서 볼 때, 7계층 DoS 공격은 두 가지 귀중한 특징을 갖고 있습니다. 즉, 심각한 혼란을 일으키는 데 필요한 리소스가 매우 적고 감지하기 어렵다는 것입니다. 정교한 도구와 정확하게 타겟팅된 요청을 사용하여 생성된 이러한 공격은 합법적인 요청을 처리할 수 없게 만들어 애플리케이션 서버와 API를 중단시킵니다. 서버가 처리할 수 있는 것보다 많은 요청이 쏟아지면 정상적인 요청이 삭제되거나 응답하지 않거나 심지어 작동이 중단됩니다.

기존 DoS 완화 솔루션은 최신 앱에 효과적이지 않습니다. 이러한 앱은 정적인 규칙 기반 보안을 제공하며, 최신 앱 환경에서 변화와 업데이트의 속도에 맞춰 나가기 위해 지속적인 유지 관리가 필요합니다.

NGINX App Protect DoS 소개

NGINX App Protect 서비스 거부 (DoS)는 NGINX Plus를 위한 새로운 경량 동적 모듈로, 가장 정교한 애플리케이션 DoS 공격으로부터 현대 애플리케이션을 보호하도록 설계되었습니다. NGINX App Protect DoS는 애플리케이션을 중단시키고 손상시키려는 공격을 완화하여 지속적인 성능과 수익 창출을 보장하고, 경쟁이 치열한 디지털 세계에서 고객 충성도와 브랜드를 보호합니다.

NGINX App Protect DoS는 Kubernetes 클러스터를 포함한 모든 플랫폼, 아키텍처, 환경에서 애플리케이션과 마이크로서비스 근처에 배포될 수 있습니다. 이는 애플리케이션과 함께 확장되며 언제나 높은 보안 효과를 유지합니다.

NGINX App Protect DoS가 실제로 작동 중입니다.

배포 사용 사례

NGINX App Protect DoS는 다양한 위치에 배포하여 애플리케이션 서비스를 보호할 수 있습니다.

  • Edge – 외부 로드 밸런서 및 프록시
  • Ingress Controller – Kubernetes 진입점
  • 서비스별 프록시 - 내부 서비스 프록시 계층
  • 포드당 프록시 - 포드에 내장된 프록시
  • API 게이트웨이 - 마이크로서비스로의 진입점

완화된 공격 유형

NGINX App Protect DoS는 여러 정교한 공격 유형에 대한 보호 기능을 제공합니다.

  • GETPOST 플러딩 공격 – (HTTP와 HTTPS 모두) 공격자는 대량의 요청으로 서버나 API를 압도하여 실제 사용자에게 응답할 수 없게 만들려고 합니다.

  • "느린" 공격 - (HTTP와 HTTPS 모두) "느리고 낮은" 공격은 서버 리소스를 묶어 실제 사용자의 요청을 처리할 수 있는 리소스가 남지 않게 합니다. 두 가지 요소 때문에 방어하기 어렵습니다.

    • 네트워크 DDoS 공격과 달리 광범위한 대역폭을 사용하지 않아 일반 트래픽과 구별하기 어렵습니다.
    • 시작하는 데 많은 리소스가 필요하지 않으므로 정교한 자동화 도구를 사용하여 단일 컴퓨터에서 수천 개의 요청을 보낼 수 있습니다.

    느린 공격에는 세 가지 주요 유형이 있습니다.

    • Slowloris – 공격자가 서버에 연결하여 느린 속도로 부분적인 요청 헤더를 전송합니다. 서버는 나머지 헤더를 기다리는 동안 연결을 열어두므로 실제 사용자가 사용할 수 있는 연결 풀이 고갈됩니다.
    • 느린 읽기 – 공격자는 올바르게 구성된 HTTP 요청을 보내지만, 응답을 읽는 속도가 느리거나 전혀 읽지 않습니다. 이는 서버 리소스를 누적시켜 합법적인 요청이 전달되지 못하게 하는 효과가 있습니다.
    • 느린 POST – 공격자는 서버로 합법적인 HTTP POST 헤더를 전송하며, 뒤에 오는 메시지 본문의 크기에 대한 올바른 사양도 함께 전송합니다. 그런 다음 메시지 본문을 매우 느리게 전송합니다. 메시지가 유효한 것으로 보이므로 서버는 본문 전체가 도착할 때까지 연결을 열어 둡니다. 느린 POST 공격이 너무 많이 발생하면 실제 사용자가 사용할 수 있는 연결 풀이 고갈됩니다.
  • 이전 공격의 분산된 변형 – 분명히 여러 대의 컴퓨터를 등록하면 더 많은 수의 동시 공격을 쉽게 보낼 수 있습니다. 더욱이 각 컴퓨터의 트래픽 볼륨은 상대적으로 낮아서 일반 사용자와 유사할 수 있습니다. 컴퓨터가 공격 풀에서 제외되었다가 다시 합류할 수도 있는데, 그럴 경우 소스 IP 주소 집합이 끊임없이 변할 수 있습니다. 이러한 트래픽 특성으로 인해 속도 제한 및 지역 차단과 같은 기존 완화 기술의 효과가 떨어집니다.

  • Challenge Collapsar 공격/무작위 URIChallenge Collapsar(CC) 공격 에서 공격자는 일반적인 요청을 자주 보내지만 요청된 URI는 복잡하고 시간이 많이 걸리는 알고리즘이나 데이터베이스 작업을 실행해야 하며, 이는 대상 서버의 리소스를 고갈시킬 수 있습니다. 공격자는 정적 규칙과 같은 기존 완화 도구를 무력화하는 방식으로 URI 및 기타 HTTP 매개변수를 무작위로 지정할 수도 있습니다. NGINX App Protect DoS는 대신 고급 머신 러닝 알고리즘을 사용하여 효율성을 획기적으로 높이고 거짓 양성률을 줄입니다.

  • NAT 뒤에 숨음 – 공격자는 암호화나 네트워크 주소 변환(NAT)을 사용하여 감지를 피합니다. 소스 IP 주소만 추적하여 공격을 감지하려는 시도는 단 한 명의 사용자만 공격하더라도 모든 NAT 사용자를 공격자로 간주하기 때문에 효과적이지 않습니다.

    NGINX App Protect DoS는 IPv4에 대한 지문을 사용하여 NAT 뒤에 있는 악성 행위자를 정확하게 감지합니다. 대부분의 트래픽은 SSL/TLS를 사용하여 암호화되므로 IP 주소만으로 행위자를 식별하는 키를 확장하여 IP 주소와 TLS 지문(지문은 TLS hello 메시지를 기반으로 함)의 조합으로 확장할 수 있습니다.

  • 타겟형 SSL/TLS 공격 – 공격자는 SSL/TLS 핸드셰이크 프로토콜을 악용합니다. 널리 쓰이는 방법 중 하나는 대상 SSL/TLS 서버로 가비지 데이터를 보내는 것입니다. 유효하지 않은 메시지를 처리하는 데 드는 컴퓨팅 비용은 합법적인 메시지를 처리하는 데 드는 컴퓨팅 비용과 같지만 유용한 결과가 나오지 않습니다. 대부분의 방화벽은 유효한 SSL/TLS 핸드셰이크 패킷과 유효하지 않은 SSL/TLS 핸드셰이크 패킷을 구별할 수 없고, 방화벽에 복호화를 구현하는 데 비용이 많이 들기 때문에 이 경우 도움이 되지 않습니다.

    NGINX App Protect DoS는 SSL/TLS 서명 메커니즘을 사용하여 암호화되지 않고 SSL/TLS 핸드셰이크 프로세스 초기에 전달되는 CLIENT HELLO 메시지를 기반으로 이상 기반 탐지 및 완화를 제공하므로 암호 해독의 높은 비용을 제거합니다. 또한 SSL/TLS 서명을 모니터링 서버 상태 메커니즘과 함께 사용하면 SSL/TLS 종료 없이 DoS 보호 및 완화가 가능합니다.

요약

DoS 공격은 네트워크가 아닌 애플리케이션을 타겟으로 하는 경우가 점점 더 흔해지고 있습니다. 이러한 7계층 DoS 공격의 대부분은 합법적인 트래픽처럼 보이기 때문에 기존 WAF 방어 수단으로는 효과적으로 감지할 수 없습니다.

게다가 공격자는 머신 러닝과 AI와 같은 새로운 기술을 계속해서 활용해 7계층 DoS 공격을 감행하고 있으며, 이로 인해 간단한 규칙과 정적인 서명의 효과가 떨어지고 있습니다. 7계층 DoS 완화 역시 발전해야 하며, NGINX App Protect DoS는 적응형 및 동적 방어에 적합한 기술을 제공합니다.

DoS 보호를 보장하는 방법에 대해 자세히 알아보려면 솔루션 간략 설명서 를 확인하세요. 또한 다음 관련 블로그를 참조하세요.

NGINX App Protect DoS를 직접 사용해보세요. 오늘 무료 30일 체험판을 시작하거나 저희에게 연락해 사용 사례에 대해 논의해보세요 .


"이 블로그 게시물에는 더 이상 사용할 수 없거나 더 이상 지원되지 않는 제품이 참조될 수 있습니다. 사용 가능한 F5 NGINX 제품과 솔루션에 대한 최신 정보를 보려면 NGINX 제품군을 살펴보세요. NGINX는 이제 F5의 일부가 되었습니다. 이전의 모든 NGINX.com 링크는 F5.com의 유사한 NGINX 콘텐츠로 리디렉션됩니다."