CSS Tutor Study Hub 메인으로

Computersystemsicherheit 2025/26

실제 시험 문제 70

정의 비교 · Security Engineering / 4.3 Software und Hardwaresicherheit

정의 비교

문제

근거 신뢰도 높음실제 시험지 대조 완료정의 비교2점

독일어 원문

Was ist der Unterschied zwischen statischer und dynamischer Analyse?

한국어 해석

static analysis와 dynamic analysis의 차이는?

직접 답안 작성

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

0/3 slots

답안은 브라우저에만 임시 저장됩니다. 채점 프레임과 비교해 스스로 판정하세요.

단계별 힌트

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

0/6
채점 기준으로 내 답안 점검하기
  • 실행 여부를 기준으로 비교한다.
  • static의 넓은 가능 경로와 false positive 가능성을 쓴다.
  • dynamic의 실제 실행 관찰과 coverage 한계를 쓴다.

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

0/3 slots

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

static analysis는 프로그램을 실행하지 않고 source/binary 구조와 가능한 data/control flow를 분석한다. dynamic analysis는 실제 실행 중 특정 입력에서 나타나는 behavior, memory, trace를 관찰한다.

exam_answer_frame
  • 실행 여부를 기준으로 비교한다.
  • static의 넓은 가능 경로와 false positive 가능성을 쓴다.
  • dynamic의 실제 실행 관찰과 coverage 한계를 쓴다.
개념부터 다시 보는 상세 풀이

BEGINNER LESSON

Static vs Dynamic Analysis: 설계도를 읽는 검사와 실제 운전 시험

ZERO-BASE START

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

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

기초 개념 01

보안이란 무엇을 지키는 것인가

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

봉투에 넣어 내용을 가리는 것은 기밀성, 봉인 스티커로 개봉 여부를 확인하는 것은 무결성, 발신인의 도장을 확인하는 것은 진위성, 우체국이 문을 열어 편지를 계속 전달하는 것은 가용성에 가깝다.

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

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

컴퓨터 보안은 막연히 ‘안전하게 만들기’가 아니라 지켜야 할 성질을 구분하는 일에서 시작한다. 기밀성(Vertraulichkeit, confidentiality)은 허가받지 않은 사람이 내용을 읽지 못하게 하는 것, 무결성(Integrität, integrity)은 내용이 몰래 바뀌지 않았음을 확인하는 것, 진위성(Authentizität, authenticity)은 상대나 데이터의 출처가 주장과 맞는지 확인하는 것이다. 서비스가 필요할 때 계속 동작하는 성질은 가용성(Verfügbarkeit, availability)이라고 한다.

TERMS FROM ZERO

전문 용어를 한 단어씩 풀기

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

Asset

공격자로부터 지키려는 대상입니다. 파일, 비밀번호, 서비스 가용성, 사람의 개인정보가 모두 asset이 될 수 있습니다.

Confidentiality

허가받지 않은 사람이 내용을 읽지 못하게 하는 기밀성입니다.

Integrity

데이터나 시스템이 허가 없이 바뀌지 않았음을 보장하려는 무결성입니다.

Availability

정당한 사용자가 필요할 때 서비스와 데이터에 접근할 수 있는 가용성입니다.

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

  1. 문제에서 숨김, 변조 탐지, 신원 확인, 서비스 중단 중 무엇을 묻는지 찾는다.
  2. 한 기술이 네 목표를 모두 자동으로 제공한다고 가정하지 않는다.
  3. 공격자가 무엇을 할 수 있는지와 지켜야 할 목표를 한 문장씩 분리한다.

왜 여기서 많이 틀릴까요?

TLS, 암호화, 서명, hash처럼 익숙한 단어가 나오더라도 그 기술이 제공하지 않는 목표까지 확대해서 쓰면 안 된다.

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

핵심부터 말하면 Static analysis는 프로그램을 실행하지 않고 source나 binary의 가능한 구조·data flow를 분석하고, dynamic analysis는 실제 실행 중 특정 입력에서 나타나는 behavior를 관찰합니다.

이 글에서 익힐 것

  • 두 분석의 기준을 자동/수동이 아니라 실행 여부로 구분한다.

  • 각 방식이 보는 범위와 놓치는 범위를 이해한다.

  • 두 방식을 함께 쓰는 이유를 설명한다.

먼저 알아야 할 개념

자동차 설계도를 보고 브레이크 배선을 검사하는 것이 static analysis라면, 실제 차를 달리며 제동 거리와 센서 값을 측정하는 것이 dynamic analysis입니다.

예제로 확인하기

  • Static analysis가 찾는 장면

    1. 프로그램을 실행하지 않고 source나 binary를 읽습니다.

    2. 사용자 입력이 위험한 함수까지 갈 수 있는 가능한 data flow를 추적합니다.

    3. 실제로는 실행되지 않는 path도 경고할 수 있어 넓은 범위를 보지만 false positive가 생길 수 있습니다.

  • Dynamic analysis가 찾는 장면

    1. 구체적인 입력으로 프로그램을 실제 실행합니다.

    2. trace, memory access, crash, sanitizer report, output을 관찰합니다.

    3. 관찰된 오류는 구체적이지만 실행하지 않은 path와 상태는 보지 못합니다.

정답까지 사고 과정

  1. 첫 기준으로 ‘실행하지 않음 / 실제 실행함’을 씁니다.

  2. static은 가능한 여러 path와 구조를 분석한다고 씁니다.

  3. dynamic은 주어진 실행과 입력에서 실제 behavior를 본다고 씁니다.

  4. static의 false positive와 dynamic의 coverage 한계를 비교합니다.

  5. 상호 보완적으로 함께 사용한다고 결론냅니다.

시험장에서는 이렇게 쓰기

안전한 두 문장 답안

Statische Analyse untersucht Quellcode oder Binärprogramme ohne deren Ausführung und kann mögliche Daten- und Kontrollflüsse betrachten. Dynamische Analyse beobachtet dagegen das Verhalten eines tatsächlich laufenden Programms für konkrete Eingaben; sie liefert reale Laufzeitbefunde, ist aber auf die ausgeführten Pfade beschränkt.

자주 틀리는 지점

  • static은 사람이 하고 dynamic은 도구가 한다고 정의하기

  • static은 source code에만 가능하다고 단정하기

  • dynamic에서 bug가 안 나왔으므로 안전하다고 결론내리기

한 줄로 기억하기

Static은 실행 전 가능한 길, Dynamic은 실제로 걸어 본 길.

스스로 확인하기

  • static analysis에서 false positive가 생길 수 있는 이유는?

  • dynamic analysis가 실행하지 않은 path를 놓치는 이유는?

이 문제가 어려운 이유

짧은 문제 문장 ‘static analysis와 dynamic analysis의 차이는?’ 안에 정의, 조건, 처리 순서가 압축되어 있습니다. 아래 예시에서는 이를 한 단계씩 펼쳐 확인합니다.

AI 구두시험용 프롬프트

한 문항만 풀어라. 먼저 정답을 열지 말고 90초 안에 답안을 말한 뒤, css-ws2025-26-software-analysis-001의 채점 프레임으로 스스로 채점하라. 문제: static analysis와 dynamic analysis의 차이는?

학습 기록

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