CSS Tutor Study Hub 메인으로

Computersystemsicherheit 2025/26

실제 시험 문제 35

프로토콜 추적 · Networking / Domain Validation

프로토콜 추적

문제

근거 신뢰도 높음실제 시험지 대조 완료프로토콜 추적2점

독일어 원문

Eve leitet Alice per BGP auf 6.6.6.6 um und zeigt ein selbst signiertes Zertifikat für bob.net. Warum schlägt TLS fehl, und was müsste Eve tun?

한국어 해석

Eve가 BGP로 Alice를 6.6.6.6에 보내고 bob.net self-signed 인증서를 제시했다. TLS가 실패하는 이유와 Eve가 연결을 성립시키려면 필요한 조건을 설명하시오.

TLS / CA Domain Validation 경로 토글

Client / CADNS·BGP path →Bob or EveTLS / token →Pass / Fail

조건을 바꾸면 confidentiality·availability·certificate issuance 결과가 분리되어 표시됩니다.

단계별 힌트

막혔을 때만 한 단계씩 여세요. 정답을 바로 읽는 것보다 기억을 꺼내는 시간이 중요합니다.

0/6
채점 기준으로 내 답안 점검하기
  • needs_review와 actor ambiguity를 표시한다.
  • BGP redirection 후 TLS certificate validation 실패 이유를 설명한다.
  • DoS/availability break와 confidentiality/MitM break를 분리한다.
  • 추가 certificate issuance/domain-validation manipulation 가능성을 조건부로만 설명한다.

답안 슬롯 자가 점검 — 실제로 말하거나 쓴 항목만 체크하세요.

0/4 slots

프로토콜/시나리오 프레임 보기
sender

Alice, Eve-controlled route/server, Bob server, possibly CA in a follow-up attack

receiver

Eve instead of Bob due to BGP redirection

message_content

TLS ClientHello/SNI for Bob domain and Eve's certificate response

attacker_capability

BGP redirection/hijack of traffic toward Bob; certificate not initially available

defense

strict TLS certificate validation, HSTS where applicable, RPKI/ROV against BGP hijack, robust domain validation

defense_limit

TLS does not preserve availability if traffic is blackholed; if CA validation is fooled, Eve may obtain a valid certificate

정답과 핵심 해설 확인하기
summary_ko

브라우저가 신뢰하는 CA chain이 없어 self-signed 인증서를 거부한다. Eve는 bob.net에 대한 신뢰 가능한 CA 서명 인증서를 얻거나, Alice가 Eve의 인증서를/루트 CA를 명시적으로 신뢰하게 만들어야 한다.

개념부터 다시 보는 상세 풀이

BEGINNER LESSON

네트워크 보안: 이 문제를 처음부터 이해하기

ZERO-BASE START

정말 아무것도 모른다고 가정하고 시작합니다

전문 용어를 알고 있다고 가정하지 않습니다. 먼저 일상적인 장면을 보고, 그 장면의 사람과 행동에 실제 보안 용어를 하나씩 붙인 뒤, 시스템에서 일어나는 순서를 따라갑니다.

기초 개념 01

네트워크에서 누가 누구에게 무엇을 보내는가

1타 강사식 시작: 이름은 잠시 가리고 장면부터 봅시다

IP address가 아파트 건물 주소라면 port는 몇 호인지, protocol은 택배 봉투를 어떤 양식으로 쓰는지, router는 다음 물류 센터를 고르는 역할에 가깝다.

지금은 이 비유를 완벽히 외울 필요가 없습니다. 누가 무엇을 가지고 있고, 무엇을 하려 하며, 어느 지점에서 문제가 생기는지만 찾으면 됩니다.

이제 실제 용어를 하나씩 붙여 봅시다

네트워크는 여러 장치가 정해진 protocol에 따라 packet 또는 message를 주고받는 시스템이다. Client는 서비스를 요청하는 쪽, server는 서비스를 제공하는 쪽이다. IP address는 네트워크에서 장치를 찾는 주소이고 port는 한 장치 안에서 어떤 프로그램과 통신할지 구분하는 번호다. Router는 목적지 네트워크를 보고 packet을 다음 경로로 전달한다.

TERMS FROM ZERO

전문 용어를 한 단어씩 풀기

아래 단어는 이미 안다고 가정하지 않습니다. 먼저 쉬운 뜻을 읽고, 본문에서 같은 단어가 나오면 이 정의로 다시 바꾸어 읽으세요.

Packet

네트워크에서 header와 payload를 갖고 전달되는 데이터 단위입니다.

IP address

IP 계층에서 출발지와 목적지 host/interface를 식별하는 주소입니다.

Port

한 host 안에서 어떤 application/service가 데이터를 받을지 구분하는 번호입니다.

Protocol

통신 참여자가 message 형식과 순서를 해석하기로 합의한 규칙입니다.

프로그램이나 프로토콜 안에서는 다음 순서로 움직입니다.

  1. 송신자와 수신자를 먼저 적는다.
  2. 출발지·목적지 IP와 port를 구분한다.
  3. 중간 장치가 내용을 읽는지 단순히 전달하는지 구분한다.
  4. 응답이 어느 방향으로 돌아오는지 그린다.

왜 여기서 많이 틀릴까요?

하나의 port 번호가 그 port를 이용하는 데이터의 의미까지 보장하지는 않는다.

조건을 생략하거나 서로 다른 기능을 같은 것으로 취급했는지 확인하세요. 정답 문장을 외우는 것보다 틀린 이유를 말할 수 있어야 변형 문제를 풀 수 있습니다.

기초 개념 02

TLS certificate가 확인하는 것과 확인하지 않는 것

1타 강사식 시작: 이름은 잠시 가리고 장면부터 봅시다

건물 등기와 열쇠가 맞는지는 확인하지만 그 건물 안 가게가 좋은 물건을 파는지까지 보증하는 것은 아닌 것과 같다.

지금은 이 비유를 완벽히 외울 필요가 없습니다. 누가 무엇을 가지고 있고, 무엇을 하려 하며, 어느 지점에서 문제가 생기는지만 찾으면 됩니다.

이제 실제 용어를 하나씩 붙여 봅시다

Certificate는 특정 domain name과 public key를 연결하고 Certificate Authority(CA)가 그 연결을 확인했다는 서명된 문서다. Browser는 접속한 domain이 certificate의 이름과 맞는지, 신뢰하는 CA가 서명했는지, 유효 기간과 서명 체인이 맞는지 검사한다. 이것은 현재 연결 상대가 그 domain의 private key를 가졌다는 근거를 주지만 사업자의 정직성이나 상품 품질을 보증하지 않는다.

TERMS FROM ZERO

전문 용어를 한 단어씩 풀기

아래 단어는 이미 안다고 가정하지 않습니다. 먼저 쉬운 뜻을 읽고, 본문에서 같은 단어가 나오면 이 정의로 다시 바꾸어 읽으세요.

Certificate

domain 이름 같은 identity와 public key를 CA의 signature로 연결한 전자 문서입니다.

CA

Certificate Authority로, 정해진 검증 뒤 certificate에 서명하는 신뢰 기관입니다.

Certificate chain

server certificate에서 browser가 신뢰하는 root CA까지 이어지는 서명 관계입니다.

Hostname verification

접속한 domain 이름이 certificate에 허용된 이름과 일치하는지 확인하는 절차입니다.

프로그램이나 프로토콜 안에서는 다음 순서로 움직입니다.

  1. URL의 hostname과 certificate의 SAN 이름을 비교한다.
  2. CA signature와 trust chain을 확인한다.
  3. Server가 certificate public key에 대응하는 private key를 가졌음을 handshake에서 증명한다.
  4. Domain control과 사람·회사에 대한 도덕적 신뢰를 구분한다.

왜 여기서 많이 틀릴까요?

사기 사이트도 자신이 통제하는 domain에 대해서는 valid certificate를 받을 수 있다.

조건을 생략하거나 서로 다른 기능을 같은 것으로 취급했는지 확인하세요. 정답 문장을 외우는 것보다 틀린 이유를 말할 수 있어야 변형 문제를 풀 수 있습니다.

기초 개념 03

BGP hijack과 longest-prefix routing

1타 강사식 시작: 이름은 잠시 가리고 장면부터 봅시다

‘서울로 가는 길’ 안내와 ‘서울 101번 건물로 가는 길’ 안내가 동시에 있으면 101번 건물에는 더 구체적인 두 번째 안내를 따르는 것과 같다.

지금은 이 비유를 완벽히 외울 필요가 없습니다. 누가 무엇을 가지고 있고, 무엇을 하려 하며, 어느 지점에서 문제가 생기는지만 찾으면 됩니다.

이제 실제 용어를 하나씩 붙여 봅시다

BGP hijack은 권한 없는 AS가 다른 조직의 IP prefix에 도달할 수 있다고 광고해 traffic을 잘못 끌어오는 공격이다. Router는 여러 경로가 있을 때 먼저 목적지 IP와 가장 긴 prefix가 일치하는 longest-prefix match를 적용한다. /28은 /24보다 더 구체적인 작은 범위이므로 겹치는 주소에 대해서는 /28 경로가 선택된다.

TERMS FROM ZERO

전문 용어를 한 단어씩 풀기

아래 단어는 이미 안다고 가정하지 않습니다. 먼저 쉬운 뜻을 읽고, 본문에서 같은 단어가 나오면 이 정의로 다시 바꾸어 읽으세요.

BGP hijack

잘못되거나 악의적인 route announcement로 traffic이 다른 AS로 향하게 되는 사건입니다.

Longest-prefix match

Router가 목적지 IP를 포함하는 route 중 가장 구체적인 prefix를 우선하는 forwarding 규칙입니다.

Origin AS

BGP path에서 해당 prefix를 최초로 광고한 AS입니다.

RPKI / ROV

어떤 AS가 prefix를 origin으로 광고할 권한이 있는지 검증하는 체계와 절차입니다.

프로그램이나 프로토콜 안에서는 다음 순서로 움직입니다.

  1. 정상 prefix와 공격자가 광고한 prefix를 비교한다.
  2. 목적지 주소에 두 prefix가 모두 일치하는지 본다.
  3. 일치하면 prefix length가 더 긴 route를 선택한다.
  4. 길이가 같으면 local preference, AS path 등 추가 BGP 정책을 본다.

왜 여기서 많이 틀릴까요?

AS_PATH가 짧다는 이유만 보기 전에 longest-prefix match가 먼저 경로 후보를 결정한다는 점을 확인한다.

조건을 생략하거나 서로 다른 기능을 같은 것으로 취급했는지 확인하세요. 정답 문장을 외우는 것보다 틀린 이유를 말할 수 있어야 변형 문제를 풀 수 있습니다.

핵심부터 말하면 Eve가 Bob의 IP route를 가져도 Bob domain의 private key까지 가진 것은 아니다.

이 글에서 익힐 것

  • Eve가 BGP로 Alice를 6.6.6.6에 보내고 bob.net self-signed 인증서를 제시했다. TLS가 실패하는 이유와 Eve가 연결을 성립시키려면 필요한 조건을 설명하시오.

  • 이 문항에 연결된 3개 기초 개념과 12개 전문 용어를 자신의 말로 설명한다.

  • 정의만 외우지 않고 구체적인 입력·message·code 흐름을 단계별로 재현한다.

  • 시험 답안에서 결론과 근거, 조건 또는 한계를 함께 쓴다.

이 문제가 어려운 이유

문제 문장은 짧지만 초보자가 이미 안다고 가정하는 용어와 중간 단계가 숨어 있습니다. 이 페이지에서는 ‘Eve가 BGP로 Alice를 6.6.6.6에 보내고 bob.net self-signed 인증서를 제시했다. TLS가 실패하는 이유와 Eve가 연결을 성립시키려면 필요한 조건을 설명하시오.’를 바로 외우지 않고, 아래 연결 개념을 일상 장면에서 시작해 실제 시스템 순서로 바꿉니다.

문제가 묻는 것

Eve가 BGP로 Alice를 6.6.6.6에 보내고 bob.net self-signed 인증서를 제시했다. TLS가 실패하는 이유와 Eve가 연결을 성립시키려면 필요한 조건을 설명하시오.

문제가 요구하는 동사와 답의 개수를 먼저 표시하고, 등장 주체·입력·처리 순서·보안 효과·남는 한계를 차례로 적습니다.

먼저 알아야 할 개념

  • 네트워크에서 누가 누구에게 무엇을 보내는가

    네트워크는 여러 장치가 정해진 protocol에 따라 packet 또는 message를 주고받는 시스템이다. Client는 서비스를 요청하는 쪽, server는 서비스를 제공하는 쪽이다. IP address는 네트워크에서 장치를 찾는 주소이고 port는 한 장치 안에서 어떤 프로그램과 통신할지 구분하는 번호다. Router는 목적지 네트워크를 보고 packet을 다음 경로로 전달한다.

    IP address가 아파트 건물 주소라면 port는 몇 호인지, protocol은 택배 봉투를 어떤 양식으로 쓰는지, router는 다음 물류 센터를 고르는 역할에 가깝다.

  • TLS certificate가 확인하는 것과 확인하지 않는 것

    Certificate는 특정 domain name과 public key를 연결하고 Certificate Authority(CA)가 그 연결을 확인했다는 서명된 문서다. Browser는 접속한 domain이 certificate의 이름과 맞는지, 신뢰하는 CA가 서명했는지, 유효 기간과 서명 체인이 맞는지 검사한다. 이것은 현재 연결 상대가 그 domain의 private key를 가졌다는 근거를 주지만 사업자의 정직성이나 상품 품질을 보증하지 않는다.

    건물 등기와 열쇠가 맞는지는 확인하지만 그 건물 안 가게가 좋은 물건을 파는지까지 보증하는 것은 아닌 것과 같다.

  • BGP hijack과 longest-prefix routing

    BGP hijack은 권한 없는 AS가 다른 조직의 IP prefix에 도달할 수 있다고 광고해 traffic을 잘못 끌어오는 공격이다. Router는 여러 경로가 있을 때 먼저 목적지 IP와 가장 긴 prefix가 일치하는 longest-prefix match를 적용한다. /28은 /24보다 더 구체적인 작은 범위이므로 겹치는 주소에 대해서는 /28 경로가 선택된다.

    ‘서울로 가는 길’ 안내와 ‘서울 101번 건물로 가는 길’ 안내가 동시에 있으면 101번 건물에는 더 구체적인 두 번째 안내를 따르는 것과 같다.

예제로 확인하기

  • 네트워크에서 누가 누구에게 무엇을 보내는가을 이 문제에 대입하기

    IP address가 아파트 건물 주소라면 port는 몇 호인지, protocol은 택배 봉투를 어떤 양식으로 쓰는지, router는 다음 물류 센터를 고르는 역할에 가깝다.

    1. 송신자와 수신자를 먼저 적는다.

    2. 출발지·목적지 IP와 port를 구분한다.

    3. 중간 장치가 내용을 읽는지 단순히 전달하는지 구분한다.

    4. 응답이 어느 방향으로 돌아오는지 그린다.

    위 순서를 문제 문장 ‘Eve가 BGP로 Alice를 6.6.6.6에 보내고 bob.net self-signed 인증서를 제시했다. TLS가 실패하는 이유와 Eve가 연결을 성립시키려면 필요한 조건을 설명하시오.’에 적용하면, 이 문항의 핵심 결론은 브라우저가 신뢰하는 CA chain이 없어 self-signed 인증서를 거부한다. Eve는 bob.net에 대한 신뢰 가능한 CA 서명 인증서를 얻거나, Alice가 Eve의 인증서를/루트 CA를 명시적으로 신뢰하게 만들어야 한다.입니다.

  • TLS certificate가 확인하는 것과 확인하지 않는 것을 이 문제에 대입하기

    건물 등기와 열쇠가 맞는지는 확인하지만 그 건물 안 가게가 좋은 물건을 파는지까지 보증하는 것은 아닌 것과 같다.

    1. URL의 hostname과 certificate의 SAN 이름을 비교한다.

    2. CA signature와 trust chain을 확인한다.

    3. Server가 certificate public key에 대응하는 private key를 가졌음을 handshake에서 증명한다.

    4. Domain control과 사람·회사에 대한 도덕적 신뢰를 구분한다.

    위 순서를 문제 문장 ‘Eve가 BGP로 Alice를 6.6.6.6에 보내고 bob.net self-signed 인증서를 제시했다. TLS가 실패하는 이유와 Eve가 연결을 성립시키려면 필요한 조건을 설명하시오.’에 적용하면, 이 문항의 핵심 결론은 브라우저가 신뢰하는 CA chain이 없어 self-signed 인증서를 거부한다. Eve는 bob.net에 대한 신뢰 가능한 CA 서명 인증서를 얻거나, Alice가 Eve의 인증서를/루트 CA를 명시적으로 신뢰하게 만들어야 한다.입니다.

  • BGP hijack과 longest-prefix routing을 이 문제에 대입하기

    ‘서울로 가는 길’ 안내와 ‘서울 101번 건물로 가는 길’ 안내가 동시에 있으면 101번 건물에는 더 구체적인 두 번째 안내를 따르는 것과 같다.

    1. 정상 prefix와 공격자가 광고한 prefix를 비교한다.

    2. 목적지 주소에 두 prefix가 모두 일치하는지 본다.

    3. 일치하면 prefix length가 더 긴 route를 선택한다.

    4. 길이가 같으면 local preference, AS path 등 추가 BGP 정책을 본다.

    위 순서를 문제 문장 ‘Eve가 BGP로 Alice를 6.6.6.6에 보내고 bob.net self-signed 인증서를 제시했다. TLS가 실패하는 이유와 Eve가 연결을 성립시키려면 필요한 조건을 설명하시오.’에 적용하면, 이 문항의 핵심 결론은 브라우저가 신뢰하는 CA chain이 없어 self-signed 인증서를 거부한다. Eve는 bob.net에 대한 신뢰 가능한 CA 서명 인증서를 얻거나, Alice가 Eve의 인증서를/루트 CA를 명시적으로 신뢰하게 만들어야 한다.입니다.

정답까지 사고 과정

  1. 프로토콜 trace 문항이다.

  2. 분석 순서: route redirection -> TLS cert check -> failure mode -> availability vs confidentiality -> extra DV attack condition.

시험장에서는 이렇게 쓰기

핵심 해설

브라우저가 신뢰하는 CA chain이 없어 self-signed 인증서를 거부한다. Eve는 bob.net에 대한 신뢰 가능한 CA 서명 인증서를 얻거나, Alice가 Eve의 인증서를/루트 CA를 명시적으로 신뢰하게 만들어야 한다.

자주 틀리는 지점

  • BGP redirect만으로 TLS MitM이 자동 성공한다고 쓰기

  • 통신을 깨뜨린다는 말을 항상 confidentiality 탈취로만 해석하기

채점 포인트

  • needs_review와 actor ambiguity를 표시한다.

  • BGP redirection 후 TLS certificate validation 실패 이유를 설명한다.

  • DoS/availability break와 confidentiality/MitM break를 분리한다.

  • 추가 certificate issuance/domain-validation manipulation 가능성을 조건부로만 설명한다.

한 줄로 기억하기

Eve가 Bob의 IP route를 가져도 Bob domain의 private key까지 가진 것은 아니다.

스스로 확인하기

  • BGP hijack이 TLS의 어떤 보안 목표는 못 깨고 어떤 목표는 깰 수 있는가?

  • HTTP challenge 기반 CA validation과 BGP hijack은 어떻게 결합될 수 있는가?

AI 구두시험용 프롬프트

한 문항만 풀어라. 먼저 정답을 열지 말고 90초 안에 답안을 말한 뒤, css-ws2025-26-network-dv-002의 채점 프레임으로 스스로 채점하라. 문제: Eve가 BGP로 Alice를 6.6.6.6에 보내고 bob.net self-signed 인증서를 제시했다. TLS가 실패하는 이유와 Eve가 연결을 성립시키려면 필요한 조건을 설명하시오.

학습 기록

이 문항을 얼마나 이해했나요?