toplogo
Connexion

NSEC3 기반 DNS 리졸버 CPU 자원 고갈 공격


Concepts de base
NSEC3 기반 증명 부재 기능을 악용하여 DNS 리졸버의 CPU 자원을 고갈시킬 수 있다.
Résumé

이 논문은 NSEC3 기반 증명 부재 기능을 악용하여 DNS 리졸버의 CPU 자원을 고갈시킬 수 있는 공격을 분석하고 평가합니다.

주요 내용은 다음과 같습니다:

  1. NSEC3 기반 증명 부재 기능의 취약점을 설명하고, 이를 악용하여 DNS 리졸버의 CPU 자원을 고갈시킬 수 있는 NSEC3-encloser 공격을 제안합니다.

  2. 공격을 자동화하고 다양한 NSEC3 파라미터 설정을 통해 공격의 영향을 최대화하는 방법을 설명합니다. 특히 해시 반복 횟수와 솔트 길이가 공격 효과에 미치는 영향을 분석합니다.

  3. 5개의 주요 DNS 리졸버 구현체에 대해 공격을 평가하고, 리졸버 간 차이점을 분석합니다. 일부 리졸버는 RFC 권장 사항을 준수하지 않아 더 큰 취약점을 보였습니다.

  4. 공격으로 인한 정상 클라이언트 요청 손실률을 측정하였으며, 완전한 서비스 거부(DoS)는 어려운 것으로 나타났습니다.

이 연구는 NSEC3 기반 증명 부재 기능의 취약점을 체계적으로 분석하고 평가하여, DNS 리졸버 구현체의 개선을 위한 중요한 정보를 제공합니다.

edit_icon

Personnaliser le résumé

edit_icon

Réécrire avec l'IA

edit_icon

Générer des citations

translate_icon

Traduire la source

visual_icon

Générer une carte mentale

visit_icon

Voir la source

Stats
공격 쿼리 속도 150/s에서 Bind9.18.12 리졸버의 정상 클라이언트 요청 손실률은 7.01%였습니다. 공격 쿼리 속도 110/s에서 Bind9.18.12 리졸버의 정상 클라이언트 요청 손실률은 22.99%였습니다. 공격 쿼리 속도 150/s에서 Unbound 리졸버의 정상 클라이언트 요청 손실률은 34.66%였습니다. 공격 쿼리 속도 150/s에서 PowerDNS 리졸버의 정상 클라이언트 요청 손실률은 2.76%였습니다. 공격 쿼리 속도 120/s에서 PowerDNS 리졸버의 정상 클라이언트 요청 손실률은 7.87%였습니다. 공격 쿼리 속도 150/s에서 Knot 리졸버의 정상 클라이언트 요청 손실률은 18.01%였습니다.
Citations
"NSEC3 is a proof of non-existence in DNSSEC, which provides an authenticated assertion that a queried resource does not exist in the target domain." "Concerns about the load created by the computation of NSEC3 records on the DNS resolvers were already considered in the NSEC3 specifications RFC5155 and RFC9276." "We find that the NSEC3-encloser attack can still create a 72x increase in CPU instruction count, despite the victim resolver following RFC5155 recommendations in limiting hash iteration counts."

Idées clés tirées de

by Oliv... à arxiv.org 03-25-2024

https://arxiv.org/pdf/2403.15233.pdf
Attacking with Something That Does Not Exist

Questions plus approfondies

NSEC3 기반 증명 부재 기능의 취약점을 근본적으로 해결하기 위한 방법은 무엇일까?

NSEC3 기반 증명 부재 기능의 취약점을 근본적으로 해결하기 위해서는 다음과 같은 방법들이 고려될 수 있습니다: 알고리즘 업데이트: 현재 사용 중인 SHA-1 해시 알고리즘의 취약성을 고려하여 더 안전한 해시 알고리즘으로 업그레이드할 수 있습니다. 반복 횟수 제한 강화: NSEC3 레코드의 해시 반복 횟수를 더 엄격하게 제한하여 공격자가 CPU를 과도하게 소모할 수 있는 가능성을 줄일 수 있습니다. 솔트 사용 개선: 솔트의 길이와 사용 방식을 개선하여 레코드의 해시 계산 부담을 줄일 수 있습니다. 보안 업데이트 및 패치: DNSSEC 및 NSEC3 관련 보안 업데이트 및 패치를 수시로 적용하여 취약점을 최소화할 수 있습니다.

NSEC3 공격 외에 DNS 리졸버의 자원을 고갈시킬 수 있는 다른 공격 기법은 무엇이 있을까?

NSEC3 공격 외에 DNS 리졸버의 자원을 고갈시킬 수 있는 다른 공격 기법으로는 다음과 같은 것들이 있을 수 있습니다: DNS 쿼리 폭탄: 대량의 DNS 쿼리를 동시에 보내어 리졸버를 과부하로 몰아 시스템을 다운시키는 공격 방식. DNS 포이즌링: 잘못된 DNS 응답을 캐시에 저장하여 유효한 도메인 이름을 악의적인 IP 주소로 매핑하여 사용자를 속이는 공격. DNS 플러딩: 대량의 가짜 DNS 응답을 생성하여 네트워크 대역폭을 과부하로 만들어 서비스 거부 상태를 유발하는 공격. DNS 스푸핑: DNS 응답을 위조하여 사용자를 악성 사이트로 리디렉션하는 공격 방식.

DNSSEC 전반의 성능 및 보안 향상을 위해 어떤 기술적 혁신이 필요할까?

DNSSEC의 성능 및 보안을 향상시키기 위해 다음과 같은 기술적 혁신이 필요할 수 있습니다: 신뢰할 수 있는 암호 알고리즘 도입: 더 안전하고 효율적인 암호 알고리즘을 도입하여 DNSSEC의 보안성을 강화할 수 있습니다. 효율적인 키 관리 시스템: 효율적인 키 관리 시스템을 구축하여 키의 안전한 생성, 저장 및 교환을 보장하고 효율적인 키 롤오버를 지원할 수 있습니다. DNSSEC 성능 최적화: DNSSEC의 성능을 향상시키기 위해 캐싱 및 쿼리 응답 시간을 최적화하는 기술적 개선이 필요합니다. DNSSEC 보안 감사 및 감시 시스템: DNSSEC의 보안을 감시하고 감사하기 위한 체계적인 시스템을 도입하여 보안 사고를 조기에 탐지하고 대응할 수 있습니다.
0
star