cache poisoning
캐시 포이즈닝은 위조 응답이 먼저 캐시에 들어가는 공격이다
공격자는 재귀 리졸버가 권한 서버의 진짜 응답을 받기 전에 그럴듯한 위조 응답을 넣으려 합니다. 현대 방어는 맞혀야 하는 값과 검증 조건을 늘립니다.
위조 응답이 캐시에 저장되면 피해가 커진다
TXID와 출발지 포트 무작위화가 난도를 높인다
DNSSEC은 변조된 데이터를 검증 실패로 만든다
1리졸버 질의
TXID + qname + qtypesource port 리졸버가 권한 서버로 질의를 보냅니다.
→
2공격자 경합
spoofed answer
맞는 TXID, 포트, 이름, 타입을 추측해 먼저 도착시키려
합니다.
→
3캐시 오염
victim.example → fake IP
성공하면 TTL 동안 많은 클라이언트가 잘못된 답을 받습니다.
TXID
트랜잭션 ID
응답이 원래 질의와 맞는지 확인합니다.
port
출발지 포트
무작위화로 공격자가 맞혀야 할 공간을 넓힙니다.
bailiwick
권한 범위
응답에 섞인 엉뚱한 추가 레코드를 제한합니다.
DNSSEC
서명 검증
서명 체인이 맞지 않으면 변조 응답을 거부합니다.