DDoS 공격 (분산 서비스 거부, 무료 번역 : 분산 서비스 거부라고 함)은 가장 일반적인 해커 공격 중 하나로 컴퓨터 시스템 또는 네트워크 서비스를 대상으로하며 사용 가능한 모든 무료 리소스를 차지하도록 설계되었습니다. 인터넷에서 전체 서비스 (예 : 웹 사이트 및 이메일 호스팅)의 기능을 차단합니다.
DDoS 공격이란 무엇입니까?
DDoS 공격은 여러 위치에서 동시에 (많은 컴퓨터에서) 공격을 수행하는 것으로 구성됩니다. 이러한 공격은 주로 특수 소프트웨어 (예 : 봇 및 트로이 목마)를 사용하여 제어 권한이있는 컴퓨터에서 수행됩니다. 즉, 이러한 컴퓨터의 소유자는 자신의 컴퓨터, 랩톱 또는 네트워크에 연결된 기타 장치가 자신의 인식없이 DDoS 공격을 수행하는 데 사용될 수 있다는 사실조차 알지 못할 수 있습니다.
DDoS 공격은 손상된 모든 컴퓨터가 피해자의 웹 서비스 또는 시스템을 동시에 공격하기 시작할 때 시작됩니다. 그런 다음 DDoS 공격의 대상은 서비스를 사용하려는 잘못된 시도로 넘쳐납니다 (예 : 웹 사이트 호출 시도 또는 기타 요청 일 수 있음).
DDoS 공격으로 인해 서비스가 중단되는 이유는 무엇입니까?
서비스를 사용하려는 각 시도 (예 : 웹 사이트 호출 시도)에는 공격을받은 컴퓨터가이 요청을 처리하기 위해 적절한 리소스 (예 : 프로세서, 메모리, 네트워크 대역폭)를 할당해야합니다. 사용 가능한 자원의 고갈, 결과적으로 작동 중단 또는 공격 대상 시스템의 중단.
DDoS 공격으로부터 자신을 보호하는 방법은 무엇입니까?
DDoS 공격은 현재 네트워크에서 운영되는 기업에 가장 큰 위협이며 그 결과는 IT 영역을 넘어서서도 실제적이고 측정 가능한 재정 및 이미지 손실을 초래합니다. 이러한 유형의 공격은 지속적으로 진화하고 점점 더 정확 해지고 있습니다. 그들의 목적은 네트워크 인프라 또는 인터넷 연결에서 사용 가능한 모든 리소스를 소비하는 것입니다.
인터넷에서 DDoS 공격에 대한 보호 제안을 찾을 수 있습니다. 대부분의 경우 DDoS 공격에 대한 이러한 보호 활성화는 DNS 레코드를 변경하여 수행되며, 이는 모든 HTTP / HTTPS 트래픽을 필터링 계층을 통해 전달하며, 여기서 각 패킷 및 쿼리에 대한 세부 검사가 수행됩니다.
그런 다음 고급 알고리즘과 적절하게 정의 된 규칙이 잘못된 패킷과 공격 시도를 필터링하여 순수한 트래픽 만 서버로 이동합니다. DDoS 공격으로부터 보호하는 회사는 전 세계 여러 지역에 위치하여 소스에서 공격을 효과적으로 차단하고 가장 가까운 데이터 센터에서 정적 데이터를 제공하여 페이지로드 시간을 줄일 수 있습니다.
DDoS 공격 및 협박은 범죄입니다
DDoS 공격의 위협은 때때로 회사를 협박하는 데 사용됩니다. 경매 사이트, 중개 회사 등에서 거래 시스템이 중단되면 회사와 고객에게 직접적인 재정적 손실이 발생합니다. 이러한 경우 공격을받은 사람들은 공격을 취소하거나 중지하기 위해 몸값을 요구합니다. 그러한 협박은 범죄입니다.
DoS / DDoS 공격으로부터 자신을 보호하는 방법
간단히 말해서 DoS 공격은 합법적 인 사용자에게 서비스를 제공하거나 의도 한 기능을 올바르게 수행 할 수없는 지점까지 컴퓨터 시스템을 가져 오는 것을 목표로하는 악의적 인 활동의 한 형태입니다. 소프트웨어 (소프트웨어)의 오류 또는 네트워크 채널 또는 시스템 전체에 대한 과도한로드는 일반적으로 "서비스 거부"상태로 이어집니다. 결과적으로 소프트웨어 또는 시스템의 전체 운영 체제가 "충돌"되거나 "루프 된"상태가됩니다. 그리고 이는 다운 타임, 방문자 / 고객 손실 및 손실을 위협합니다.
DoS 공격 분석
DoS 공격은 로컬 및 원격으로 분류됩니다. 로컬 익스플로잇에는 다양한 익스플로잇, 포크 폭탄 및 매번 백만 개의 파일을 열거 나 메모리 및 프로세서 리소스를 소모하는 순환 알고리즘을 실행하는 프로그램이 포함됩니다. 우리는이 모든 것에 머물지 않을 것입니다. 원격 DoS 공격에 대해 자세히 살펴 보겠습니다. 두 가지 유형으로 나뉩니다.
소프트웨어 버그를 원격으로 악용하여 작동하지 않게 만듭니다.
홍수-엄청난 수의 무의미한 (덜 의미있는) 패킷을 피해자의 주소로 보냅니다. 플러드 대상은 통신 채널 또는 머신 리소스 일 수 있습니다. 첫 번째 경우 패킷 스트림은 전체 대역폭을 차지하고 공격 대상 시스템에 합법적 인 요청을 처리 할 수있는 기능을 제공하지 않습니다. 두 번째로, 컴퓨터의 리소스는 복잡하고 리소스 집약적 인 작업을 수행하는 서비스에 대한 반복적이고 매우 빈번한 호출로 캡처됩니다. 예를 들어 웹 서버의 활성 구성 요소 (스크립트) 중 하나에 대한 긴 호출 일 수 있습니다. 서버는 공격자의 요청을 처리하는 데 컴퓨터의 모든 리소스를 사용하며 사용자는 기다려야합니다.
기존 버전 (공격자 1 명-피해자 1 명)에서는 이제 첫 번째 유형의 공격 만 효과적입니다. 고전적인 홍수는 쓸모가 없습니다. 오늘날의 서버 대역폭, 컴퓨팅 성능 수준 및 소프트웨어에서 다양한 DoS 방지 기술의 광범위한 사용 (예 : 동일한 클라이언트가 동일한 작업을 반복 할 때 지연됨)으로 인해 공격자는 성가신 모기로 변합니다. 입을 수없고 피해도 없었습니다.
그러나 이러한 모기가 수백, 수천 또는 수십만 마리이면 서버를 어깨 뼈에 쉽게 얹을 수 있습니다. 군중은 삶뿐만 아니라 컴퓨터 세계에서도 끔찍한 힘입니다. 일반적으로 많은 좀비 호스트를 사용하여 수행되는 분산 서비스 거부 (DDoS) 공격은 외부 세계에서 가장 힘든 서버조차 차단할 수 있습니다.
제어 방법
대부분의 DDoS 공격의 위험은 절대적인 투명성과 "정상 성"에 있습니다. 결국, 소프트웨어 오류가 항상 수정 될 수 있다면 자원의 완전한 소비는 거의 흔한 일입니다. 많은 관리자는 시스템 리소스 (대역폭)가 부족하거나 웹 사이트가 Slashdot 효과를 겪을 때 직면합니다 (twitter.com은 마이클 잭슨의 사망 소식이 나온 후 몇 분 안에 사용할 수 없게되었습니다). 그리고 연속적으로 모든 사람의 트래픽과 리소스를 줄이면 DDoS에서 구할 수 있지만 고객의 절반을 잃게됩니다.
이 상황에서 벗어날 방법은 거의 없지만 라우터, 방화벽을 적절하게 구성하고 네트워크 트래픽의 이상 징후를 지속적으로 분석함으로써 DDoS 공격의 결과와 그 효과를 크게 줄일 수 있습니다. 이 기사의 다음 부분에서는 다음을 살펴볼 것입니다.
초기 DDoS 공격을 인식하는 방법
특정 유형의 DDoS 공격을 처리하는 방법
DoS 공격에 대비하고 그 효과를 줄이는 데 도움이되는 일반적인 조언.
마지막에는 DDoS 공격이 시작되었을 때해야 할 일에 대한 답이 주어질 것입니다.
홍수 공격에 맞서 싸우십시오
따라서 DoS / DDoS 공격에는 두 가지 유형이 있으며, 가장 일반적인 공격은 홍수, 즉 피해자에게 엄청난 수의 패킷을 범람시키는 아이디어를 기반으로합니다. 플러드는 ICMP 플러드, SYN 플러드, UDP 플러드 및 HTTP 플러드입니다. 최신 DoS 봇은 이러한 모든 유형의 공격을 동시에 사용할 수 있으므로 사전에 각각에 대한 적절한 보호 조치를 취해야합니다. 가장 일반적인 유형의 공격을 방어하는 방법의 예입니다.
HTTP 플러드
오늘날 가장 널리 퍼진 홍수 방법 중 하나입니다. 다른 모든 요청을 처리 할 수 없도록 웹 서버를로드하기 위해 포트 80에서 HTTP GET 메시지를 끝없이 보내는 것을 기반으로합니다. 종종 플러드 대상은 웹 서버의 루트가 아니라 리소스 집약적 인 작업을 수행하거나 데이터베이스와 함께 작동하는 스크립트 중 하나입니다. 어쨌든 웹 서버 로그의 비정상적으로 빠른 증가는 시작된 공격의 지표가됩니다.
HTTP 플러딩을 처리하는 방법에는 공격의 영향을 완화하기 위해 웹 서버와 데이터베이스를 조정하고 다양한 기술을 사용하여 DoS 봇을 필터링하는 방법이 포함됩니다. 먼저 데이터베이스에 대한 최대 연결 수를 동시에 늘려야합니다. 둘째, Apache 웹 서버 앞에 가볍고 효율적인 nginx를 설치하면 요청을 캐시하고 정적으로 제공합니다. 이는 DoS 공격의 영향을 줄일뿐만 아니라 서버가 엄청난 부하를 견딜 수 있도록하는 필수 솔루션입니다.
필요한 경우 하나의 주소에서 동시 연결 수를 제한하는 nginx 모듈을 사용할 수 있습니다. 리소스 집약적 인 스크립트는 지연, "Click me"버튼, 쿠키 설정 및 "인간성"을 확인하기위한 기타 트릭을 사용하여 봇으로부터 보호 할 수 있습니다.
범용 팁
시스템에서 DDoS 폭풍이 붕괴되는 동안 절망적 인 상황에 빠지지 않으려면 이러한 상황에 대비하여 조심스럽게 준비해야합니다.
외부 네트워크에 직접 액세스 할 수있는 모든 서버는 빠르고 쉬운 원격 재부팅을 위해 준비해야합니다. 큰 장점은 메인 채널이 막힐 경우 서버에 액세스 할 수있는 두 번째 관리 네트워크 인터페이스가 있다는 것입니다.
서버에서 사용되는 소프트웨어는 항상 최신 상태 여야합니다. 모든 구멍이 패치되고 업데이트가 설치됩니다 (부팅처럼 간단하며 많은 사람들이 따르지 않는 조언). 이렇게하면 서비스의 버그를 악용하는 DoS 공격으로부터 보호됩니다.
관리 용으로 의도 된 모든 수신 네트워크 서비스는 액세스 권한이 없어야하는 모든 사람이 방화벽으로 숨겨야합니다. 그러면 공격자는이를 DoS 공격이나 무차별 대입 공격에 사용할 수 없습니다.
서버 (가장 가까운 라우터)에 대한 접근 방식에는 트래픽 분석 시스템이 설치되어 진행중인 공격에 대해 적시에 파악하고 적시에 예방 조치를 취할 수 있어야합니다.
모든 기술은 DDoS 공격의 효과를 줄이는 데 목적이 있으며, 이는 시스템의 리소스를 사용하는 것을 목표로합니다. 수로를 파편으로 막는 홍수를 방어하는 것은 거의 불가능하며, 유일하게 정확하지만 항상 실행 가능한 전투 방법은 "의미 공격을 박탈"하는 것입니다. 소규모 봇넷의 트래픽을 쉽게 허용 할 수있는 매우 넓은 채널이있는 경우 서버가 공격의 90 %로부터 보호된다는 것을 고려하십시오.
더 정교한 방어가 있습니다. 이는 서로 다른 백본에 연결된 많은 중복 서버를 포함하는 분산 컴퓨터 네트워크의 조직을 기반으로합니다. 채널의 컴퓨팅 성능 또는 대역폭이 부족하면 모든 새 클라이언트가 다른 서버로 또는 점진적으로 리디렉션됩니다. "
다소 효과적인 또 다른 솔루션은 하드웨어 시스템을 구입하는 것입니다. 함께 작동하면 초기 공격을 억제 할 수 있지만 학습 및 상태 분석을 기반으로하는 대부분의 다른 솔루션과 마찬가지로 실패합니다.
시작된 것 같습니다. 무엇을해야합니까?
공격이 즉시 시작되기 전에 봇은 "워밍업"하여 공격 대상 컴퓨터로의 패킷 흐름을 점진적으로 증가시킵니다. 순간을 포착하고 조치를 취하는 것이 중요합니다. 외부 네트워크에 연결된 라우터를 지속적으로 모니터링하면 도움이됩니다. 피해자 서버에서 사용 가능한 수단을 통해 공격의 시작을 확인할 수 있습니다.