2018년 12월 12일에 촬영한 한국어 웨비나입니다. Cloudflare는 적용이 빠르고 DDoS 방어에 효과적이라는 이점이 있어 소위 Under Attack이라고 불리는, DDoS 공격을 실시간으로 받고 있어 빠르게 방어책을 적용해야 하는 고객사를 많이 받는 편입니다. 이 페이지를 통해 많이 sign up 하십니다. 반면에 이미 Cloudflare를 사용하고 있어도, 오리진 서버를 전체공개 하셨다든지 필요한 설정이 정확하게 되어 있지 않으면 공격자에게 취약한 부분을 감지당해 Cloudflare를 적용하고도 공격을 받으시는 경우가 발생하기도 합니다. 이 웨비나는 어떤 Plan이든 Cloudflare를 사용하시는 고객께서 정확한 설정으로 DDoS 방어 효과를 잘 누리셨으면 해서 촬영했습니다.
3. 질문 #1
귀하의 사이트/어플리케이션에 DDoS 공격을 받아보신 일이 있습니까?
● 아니오, 하지만 방어책이 필요합니다.
● 아니오, 하지만 이미 방어책이 있습니다.
● 네, 그리고 더 효율적인 방어책이 필요합니다.
● 네, 하지만 다시는 공격받을 것 같지 않습니다.
5. Volumetric DNS Flood
Bots
DNS Server
Server
증폭 공격 (Layer 3 & 4)
HTTP Flood (Layer 7)
1
2
Bots
3
Bots
어플리케이션, 웹사이트, API의 가용성과 성능을 저하
HTTP
Application
Application/Login
DDoS 공격의 유형
5
6. 2018년 이후의 DDoS 트렌드
More
Frequent
Difficult to
Mitigate
DNS
Layer 7
SSL CPU
Exhaustion
HTTP
Layer 7
Layer 3/4
500
Gbps
100
Gbps
200
Gbps
40
Gbps
비교적 소규모의 L7 기반 공격이 L3/4 공격보다 완화하기 어렵습니다
Less
Frequent
8. Memcached 를 이용한 DDoS 공격 - Github(1.3Tbps)
More info : https://blog.cloudflare.com/memcrashed-major-amplification-attacks-from-port-11211/
20~25Mpps spike
200~250Gbps BW
9.
10. 방어책
방어 방법 Prerequisite
On-premise DDoS 방어 전용 물리 장비를 서버 윗단에 위치시킨다 Host hardwares
on-premise
Scrubbing
Center
(ISP clean pipe)
공격을 받는 중에 스크러빙 센터에 연락하여 DNS redirection OR BGP
redirection 방식으로 트래픽을 우회시킨다
/24 public IPv4
range
Cloud Reverse
Proxy
DNS 적용을 통해 모든 공격트래픽이 늘 프록시의 방어벽을 먼저
통과하도록 설정한다
Domain name
11. 스크러빙 센터 솔루션 vs. Cloudflare Always-On
스크러빙 솔루션
- On-demand
- 긴 전파 시간(최대 300초)
- 비동기식 라우팅
- 지연 시간 추가
- 일반적으로 수동 설정이 필요
Always-On
- Always on
- 전파 시간 없음
- 동기식 라우팅
- 지연 시간 추가 없음
- 공격의 즉시/자동 완화
12. 스크러빙 센터 솔루션 vs. Cloudflare Always-On (cont.)
공격 발생
방어 설정
방어 시작
방어 완료
다음 공격
발생
방어 설정
방어 완료
방어 시작
Cloudflare
방어 설정
다음 공격
발생
방어 설정
공격 발생
+ 방어
공격 발생
+ 방어
공격 발생
+ 방어
Load
Time
13. Cloudflare 네트워크
방문자의 리퀘스트는 가장 가까운 위치의 PoP 을 거쳐 origin 으로 라우팅됩니다.
155+
Data centers globally
20Tbps+
Total bandwidth and expanding
10%
Internet requests
10MM
Requests/second
websites, apps & APIs
in 150 countries
12M+
14. Unicast
네트워크의 각 노드에 IP가 할당되는 방식
● 인터넷 대부분이 이 방식으로 동작
● 각각 노드에 IP가 할당
● 네트워크를 돌리는 가장 쉬운 방식
1.1.1.4
1.1.1.3
1.1.1.2
1.1.1.1
15. Anycast
Cloudflare 는 모든 엣지에 같은 IP 를 할당하여 라우팅합니다
● 여러 노드가 하나의 IP 주소를 공유
● 리퀘스트는 가장 짧고 빠른 경로로 라우팅
● 특정 콘텐츠에 접속하는 데에 다수 경로가 제공됨
1.1.1.1
1.1.1.1
1.1.1.1
1.1.1.1
16. // Cloudflare 를 활용하여 DDoS 방어/예방하기
CONFIDENTIAL
요구사항: 도메인, 레지스트라(등록대행자) & 오리진 서버 & 인증서에 대한
운영자 권한
17. Cloudflare 를 활용한 DDoS 방어하기
1. cloudflare.com 에 계정 생성
2. Add a site – 도메인 추가 (e.g. theburritobot.com)
3. Cloudflare 에서 자동으로 도메인의 DNS 레코드를 스캔
4. 유저는 모든 레코드가 실제 레코드와 동일한지 확인
18. 1. cloudflare.com 에 계정 생성
2. Add a site – 도메인 추가 (e.g. theburritobot.com)
3. Cloudflare 에서 자동으로 도메인의 DNS 레코드를 스캔
4. 유저는 모든 레코드가 실제 레코드와 동일한지 확인
5. 네임서버 마이그레이션
6. TLS(SSL) 인증서 - 자동 발급/프로비저닝/리뉴얼
Cloudflare 를 활용한 DDoS 방어하기
26. Cloudflare Spectrum
HTTP/S가 아닌 트래픽을 Cloudflare 를 통해 프록시할 수 있습니다.
TCP/UDP 프로토콜과 포트에 대한 DDoS 방어
Cloudflare Spectrum은 150+개의 데이터 센터를 통해 HTTPS가
아닌 모든 TCP 트래픽을 프록시하여 열린 포트에서 레이어 3 및 4를
대상으로하는 DDoS 공격으로부터 보호합니다.
HTTP/S가 아닌 트래픽의 암호화
Cloudflare Spectrum은 Universal SSL로 비 HTTP/S TCP 트래픽을
암호화하여 전송중인 데이터의 스누핑 (snooping)을 방지합니다.
개별 IP 나 범위를 이용한 트래픽 통제
Spectrum은 Cloudflare의 IP 방화벽과 통합되어 특정 IP 또는 IP
범위의 트래픽을 엣지에서 차단할 수 있습니다.
2
1
Client
Encrypted
TCP Traffic
SSH
SMTP
SFTP
SSH
SMTP
SFTP
3
Client
SSH
SMTP
SFTP
IP
10.0.0.1
10.0.0.1
33. DDoS 공격 유형에 따른 방어법
Layer 3/4 공격 Layer 7 공격
Layer 3(네트워크 계층, ICMP flood 등) 이나 Layer 4(전송
계층, TCP SYN flood나 UDP flood 등) 에 기반한 트래픽 증폭
공격
어플리케이션 레이어(HTTP) 리퀘스트를 보내는 공격
(GET flood 등)
엣지에서 자동으로 방어 “I’m Under Attack” Mode, WAF, Security Level,
Rate Limiting, etc
*주의사항: Origin 서버에서 Cloudflare 의 접근허용 설정 및 기타 IP의 직접접근 차단이 필요 https://cloudflare.com/ips
34. I’m Under Attack! Mode
삽입 페이지 예시
● 공격을 받고 있을 때 활성화하도록 설계
● 모든 인입 트래픽이 자바스크립트 기반 웹브라우저 Challenge 를 통과하여야 콘텐츠 접근 가능
● Challenge 가 통과되는 동안 방문자는 삽입 페이지를 보게 됨
35. Cloudflare Rate Limiting
More information
https://www.cloudflare.com/rate-limiting/
트래픽 패턴과 일치하는 IP 주소 당 리퀘스트 정확한 DDoS 공격 방어
• 임계치 설정 옵션을 통해 높은 정확도의 DDoS
방어 제공
고객 데이터 보호
• Brute force 공격으로부터 민감한 고객 정보
보호
가용성 보장
• HTTP 리퀘스트에 대한 사용 제한 설정을 통해
오리진 서버 부담 감소
비용 절감
• 실 트래픽만 허용하는 임계치 설정을 통해
트래픽 폭증으로 인한 오리진 대역폭 부담을
덜고 비용을 예측가능한 수준으로 억제