DDoS 공격 이해: WordPress 관리자를 위한 가이드

게시 됨: 2019-10-10

DDoS(분산 서비스 거부)는 공격이 하나가 아닌 여러 호스트에서 발생하여 차단하기가 매우 어려운 DoS(서비스 거부) 공격 유형입니다. 모든 DoS 공격과 마찬가지로 목표는 어떤 방식으로든 과부하를 일으켜 대상을 사용할 수 없도록 만드는 것입니다.

일반적으로 DDoS 공격은 다수의 컴퓨터 또는 봇을 수반합니다. 공격하는 동안 각 컴퓨터는 악의적으로 대상에 과부하를 요청합니다. 일반적인 대상은 웹 서버 및 WordPress 웹 사이트를 포함한 웹 사이트입니다. 결과적으로 사용자는 웹사이트나 서비스에 액세스할 수 없습니다. 이것은 서버가 이러한 요청을 독점적으로 처리하기 위해 리소스를 사용해야 하기 때문에 발생합니다.

WordPress 관리자는 DDoS 공격을 이해하고 대비하는 것이 중요합니다. 언제든지 발생할 수 있습니다. 이 기사에서는 DDoS를 심층적으로 탐색하고 WordPress 사이트를 보호하는 데 도움이 되는 몇 가지 팁을 제공합니다.

DDoS는 해킹이 아닌 혼란을 노리는 공격입니다.

DDoS 공격은 전통적인 의미의 악의적인 WordPress 해킹이 아니라는 점을 이해하는 것이 중요합니다. 해킹은 권한이 없는 사용자가 갖고 있어서는 안 되는 서버나 웹사이트에 액세스하는 것을 의미합니다.

전통적인 해킹의 예는 공격자가 코드의 취약점을 악용하거나 패킷 스니퍼를 사용하여 WordPress 비밀번호를 훔치는 경우입니다. 해커가 자격 증명을 가지고 있으면 데이터를 훔치거나 웹 사이트를 제어할 수 있습니다.

DDoS는 다른 용도로 사용되며 권한 있는 액세스가 필요하지 않습니다. DDoS는 단순히 대상의 정상적인 작동을 방해하는 것을 목표로 합니다. 전통적인 해킹을 사용하면 공격자는 잠시 동안 눈에 띄지 않게 되기를 원할 수 있습니다. DDoS를 사용하면 공격자가 성공하면 거의 즉시 알 수 있습니다.

다양한 유형의 분산 서비스 거부 공격

DDoS는 한 가지 유형의 공격이 아닙니다. 여러 가지 변형이 있으며 모두 내부적으로 약간씩 다르게 작동합니다. DDoS 범주에는 공격을 분류할 수 있는 여러 하위 범주가 있습니다. 가장 일반적인 것은 아래에 나열되어 있습니다.

볼륨메트릭 DDoS 공격

볼류메트릭 DDoS 공격은 기술적으로 간단합니다. 공격자는 대역폭 용량 과부하에 대한 요청으로 대상을 플러딩합니다. 이러한 공격은 WordPress를 직접 대상으로 하지 않습니다. 대신 기본 운영 체제와 웹 서버를 대상으로 합니다. 그럼에도 불구하고 이러한 공격은 WordPress 웹 사이트와 매우 관련이 있습니다. 공격자가 성공하면 WordPress 사이트는 공격 기간 동안 합법적인 방문자에게 페이지를 제공하지 않습니다.

이 범주에 속하는 특정 DDoS 공격은 다음과 같습니다.

  • NTP 증폭
  • UDP 플러드

애플리케이션 계층 DDoS 공격

애플리케이션 계층 DDoS 공격은 애플리케이션 계층인 계층 7에 집중합니다. 즉, Apache 또는 NGINX 웹 서버와 WordPress 웹 사이트에 중점을 둡니다. 레이어 7 공격은 사용된 대역폭에 비해 손상이 더 많이 발생합니다.

왜 그런지 이해하기 위해 WordPress REST API에 대한 DDoS 공격의 예를 살펴보겠습니다. 공격은 호스트 시스템 중 하나의 HTTP GET 또는 HTTP POST와 같은 HTTP 요청으로 시작됩니다. 이 HTTP 요청은 호스트에서 비교적 적은 양의 리소스를 사용합니다. 그러나 대상 서버에서는 여러 작업을 트리거할 수 있습니다. 예를 들어 서버는 자격 증명을 확인하고 데이터베이스에서 읽고 웹 페이지를 반환해야 합니다.

이 경우 공격자가 사용하는 대역폭과 서버가 사용하는 리소스 간에 큰 차이가 있습니다. 이 차이는 일반적으로 공격 중에 악용됩니다. 이 범주에 속하는 특정 DDoS 공격은 다음과 같습니다.

  • HTTP 플러드
  • 슬로우 포스트 공격

프로토콜 기반 DDoS 공격

프로토콜 기반 DDoS 공격은 다른 DDoS 공격과 동일한 자원 소모 모델을 따릅니다. 그러나 일반적으로 서비스 또는 응용 프로그램과 달리 네트워크 및 전송 계층에 중점을 둡니다.

이러한 공격은 방화벽이나 서버에서 실행되는 기본 TCP\IP 스택과 같은 어플라이언스를 대상으로 하여 서비스 거부를 시도합니다. 그들은 서버의 네트워크 스택이 네트워크 패킷을 처리하는 방식이나 TCP 통신이 작동하는 방식의 취약점을 악용합니다. 프로토콜 기반 DDoS 공격의 예는 다음과 같습니다.

  • 싱크 플러드
  • 죽음의 핑

다중 벡터 DDoS 공격

예상할 수 있듯이 공격자는 한 가지 유형의 공격에만 국한되지 않습니다. DDoS 공격이 다중 벡터 접근 방식을 취하는 것이 점점 보편화되고 있습니다. 다중 벡터 DDoS 공격은 예상한 대로 여러 기술을 사용하여 대상을 오프라인 상태로 만드는 DDoS 공격입니다.

DDoS의 반사 및 증폭 이해

DDoS 공격에 자주 등장하는 두 가지 용어는 반사와 증폭입니다. 이 두 가지 모두 공격자가 DDoS 공격을 보다 효과적으로 만들기 위해 사용하는 기술입니다.

리플렉션 은 공격자가 스푸핑된 IP 주소가 포함된 요청을 타사 서버에 보내는 기술입니다. 스푸핑된 IP 주소는 대상의 주소입니다. 이러한 유형의 공격 중에 공격자는 일반적으로 다양한 UDP 프로토콜을 사용합니다. 작동 방식은 다음과 같습니다.

  1. 공격자는 스푸핑된 IP 주소(예: WordPress 사이트의 IP)가 포함된 UDP 요청을 리플렉터라는 많은 서버에 보냅니다.
  2. 리플렉터는 요청을 수신하고 동시에 WordPress 사이트의 IP에 응답합니다.
  3. 리플렉터 응답은 WordPress 사이트를 넘치게 하여 잠재적으로 과부하를 일으켜 사용할 수 없게 만듭니다.

증폭 은 반사와 유사하게 작동합니다. 리플렉터에 보내는 요청이 리플렉터가 대상에 보내는 응답보다 훨씬 작기 때문에 대역폭과 리소스가 덜 필요합니다. 이는 애플리케이션 계층 분산 서비스 거부 공격에서 본 것과 유사하게 작동합니다.

DDoS 공격에서 봇넷의 역할

공격자가 공격을 조정하기 위한 리소스를 어디서 얻는지 궁금하신가요?

정답은 봇넷입니다. 봇넷은 맬웨어에 의해 손상된 네트워크 또는 장치입니다. PC, 서버, 네트워크 또는 스마트 장치가 될 수 있습니다. 맬웨어를 통해 공격자는 감염된 각 개별 호스트를 원격으로 제어할 수 있습니다.

DDoS에 사용되는 경우 봇넷은 지정된 대상 호스트 또는 호스트 그룹에 대해 조정된 서비스 거부 공격을 수행합니다. 간단히 말해서: 봇넷을 통해 공격자는 감염된 컴퓨터의 리소스를 활용하여 공격을 수행할 수 있습니다. 예를 들어 2018년에 20,000개 이상의 WordPress 사이트를 사용하여 다른 WordPress 사이트에 대한 DDoS 공격을 수행한 경우입니다(자세히 보기).

분산 서비스 거부 공격의 동기

“사람들은 왜 DDoS 공격을 하는 걸까요?” 이 시점에서 묻는 좋은 질문입니다. 과거에 악의적인 해커가 WordPress 사이트를 표적으로 삼았던 이유를 검토했지만 DDoS에 실제로 적용되는 점 중 하나인 행동주의(hactivism)만 있습니다. 누군가가 당신의 관점에 동의하지 않는다면 당신의 목소리를 조용히 하고 싶어할 것입니다. DDoS는 이를 위한 수단을 제공합니다.

과거의 행동주의, 국가 차원의 사이버 전쟁 또는 상업적 동기를 지닌 산업 공격도 DDoS의 가능한 동인입니다. 장난꾸러기 공격자들도 꽤 흔합니다. 십대들은 즐거운 시간을 보내고 DDoS를 사용하여 혼란을 일으키고 있습니다.

물론 가장 큰 동기 중 하나는 돈입니다. 공격자는 WordPress 웹 사이트 공격을 중지하기 위해 몸값을 요청할 수 있습니다. 사이트가 다운되면 상업적으로 이익을 얻을 수 있습니다. 한 단계 더 나아가 고용 서비스를 위한 DDoS가 있습니다!

분산 서비스 거부의 실제 예

분산 서비스 거부 공격은 얼마나 심각할 수 있습니까? 지난 몇 년간의 유명한 DDoS 공격을 살펴보겠습니다.

GitHub(두 번!): GitHub는 1015년에 대규모 서비스 거부 공격을 받았습니다. 이 공격은 플랫폼에서 두 개의 검열 방지 프로젝트를 목표로 하는 것 같았습니다. 공격은 며칠 동안 GitHub의 성능과 가용성에 영향을 미쳤습니다.

그런 다음 2018년에 GitHub는 다시 DDoS 공격의 대상이 되었습니다. 이번에는 공격자가 memcaching을 기반으로 한 공격을 사용했습니다. 그들은 증폭 및 반사 방법을 활용했습니다. 공격의 규모에도 불구하고 공격자는 약 10분 동안 GitHub를 다운시켰습니다.

에스토니아 국가: 2007년 4월은 국가 전체에 대한 사이버 공격으로 알려진 최초의 사건이었습니다. 에스토니아 정부가 동상을 탈린 중심부에서 군사 묘지로 옮기기로 결정한 직후, 폭동과 약탈이 발생했습니다. 동시에 공격자들은 몇 주 동안 지속된 여러 가지 분산 서비스 거부 공격을 시작했습니다. 그들은 국가의 온라인 뱅킹, 미디어 및 정부 서비스에 영향을 미쳤습니다.

Dyn DNS: 2016년 10월 21일 Dyn은 대규모 DDoS 공격을 받았습니다. 공격으로 인해 Dyn DNS 서비스는 사용자 쿼리를 해결할 수 없습니다. 그 결과 Airbnb, Amazon.com, CNN, Twitter, HBO, VISA 등 트래픽이 많은 수천 개의 웹사이트를 사용할 수 없었습니다. 이 공격은 웹캠과 베이비 모니터를 포함한 다수의 IoT 장치를 통해 조정되었습니다.

DDoS 공격으로부터 보호하기 위한 WordPress 팁

개별 WordPress 관리자는 DDoS 공격을 방어할 리소스와 인프라가 없습니다. 많은 WordPress 웹 호스트가 일종의 DDoS 공격 완화 기능을 제공하지만. 따라서 WordPress 웹 사이트의 호스팅 제공 업체를 선택할 때 이에 대해 물어보십시오. WordPress / WAF(웹 애플리케이션 방화벽) 및 CDN(콘텐츠 전송 네트워크) 을 사용할 수도 있습니다. 단일 솔루션에서 둘 다 제공하는 Sucuri와 같은 공급자가 있으므로 WAF 및 CDN을 하나의 항목으로 결합했습니다.

WAF 또는 CDN을 사용하면 웹사이트에 도달하기 전에 트래픽이 먼저 서비스에 의해 라우팅되고 필터링됩니다. 이 설정은 다른 사람들의 피해를 제한하면서 패스에서 많은 공격을 막을 수 있습니다. 일부 CDN은 DDoS 공격을 탐지하고 대응할 수 있는 이점을 제공합니다. 클라우드에서 규모의 경제를 활용할 수 있기 때문에 CDN 및 온라인 WAF는 공격을 오프로드할 수 있습니다. 대역폭이 충분하고 이를 처리하는 데 적합한 도구가 있는 네트워크로 리디렉션합니다.

해커 및 DDoS 공격 차단

그러나 WordPress BruteForce Botnet에서 볼 수 있듯이 WordPress 웹 사이트에 구현할 수 있는 몇 가지 보안 모범 사례가 있으므로 공격자의 관심과 DDoS 공격을 방지할 수 있습니다.

  • WordPress 사이트를 최신 상태로 유지: WordPress 코어, 플러그인, 테마 및 사용하는 기타 모든 소프트웨어를 최신 상태로 유지하면 알려진 취약점이 악용될 위험이 줄어듭니다. 사이트를 최신 상태로 유지하면 봇넷의 일부가 될 가능성도 줄어듭니다.
  • 스캐너를 사용하여 취약점 확인: 일부 DoS 공격은 Slowloris와 같은 문제를 악용합니다. 취약점 스캐너는 이러한 결함 및 기타 보안 결함을 감지할 수 있습니다. 따라서 웹 사이트와 웹 서버를 자주 검사할 때 DDoS 공격이 악용할 수 있는 취약점을 식별합니다. 다양한 스캐너를 사용할 수 있습니다. 우리는 WordPress 관리자에게 비침입적인 WPScan Security Scanner를 사용합니다.
  • 보안을 개선하고 문제를 식별하기 위해 로그 검토: WordPress 감사 로그 및 기타 로그는 조기에 악의적인 행동을 식별하는 데 도움이 될 수 있습니다. 로그를 통해 특정 HTTP 오류 코드와 같은 DDoS 공격으로 인해 발생할 수 있는 문제를 식별할 수 있습니다. 또한 로그를 통해 공격 소스를 드릴다운하고 분석할 수 있습니다. WordPress 관리자가 웹 사이트를 더 잘 관리하고 보호하는 데 사용할 수 있는 몇 가지 로그 파일이 있습니다.
  • 사용자 인증 강화: 이것이 마지막 모범 사례일 수 있지만 다른 모든 것만큼 중요합니다. 강력한 WordPress 비밀번호 정책을 구현하여 웹사이트 사용자가 강력한 비밀번호를 사용하도록 합니다. 또한 이중 인증 플러그인을 설치하고 이중 인증을 의무화하는 정책을 구현하십시오.