참조 모니터 개념의 대표적인 설계 조건은 모든 접근 시도의 중재(complete mediation), 변조 방지(tamperproof), 검증·분석이 가능할 만큼 작은 구조(verifiable)입니다. 권한 검사 코드가 한 경로에 있다는 사실만으로 세 조건이 충족되지는 않습니다.
캐시·복구·관리 API처럼 검사를 거치지 않는 경로가 있으면 완전한 중재가 깨질 수 있습니다. 이 조건은 개념을 점검하는 틀이며 실제 시스템의 보안성을 이 글만으로 인증하지 않습니다.
참조 모니터는 정책을 집행하는 구조의 조건입니다
참조 모니터(reference monitor)는 주체가 객체에 접근하려는 요청을 보안 정책에 따라 중재하는 개념입니다. NIST CSRC 용어집은 참조 검증 메커니즘이 항상 호출되고, 변조에 견디며, 분석·시험의 완전성을 보장할 만큼 작아야 한다는 세 조건을 제시합니다. 이 세 조건은 API 함수 이름이나 특정 제품 구현을 뜻하는 것이 아니라 정책 집행 구조를 검토하는 기준입니다.
‘항상 호출된다’는 말은 정상 경로만이 아니라 자원에 닿는 각 접근 경로가 검증을 통과해야 한다는 뜻입니다. ‘변조 방지’는 공격자가 정책 집행 로직이나 상태를 임의로 바꾸기 어렵도록 보호해야 한다는 뜻입니다. ‘검증 가능성’은 코드와 설계가 너무 복잡하거나 흩어져 시험 범위를 빠뜨리지 않도록 해야 한다는 요구입니다. NIST SP 800-192도 정책 명세, 모델, 구현이 서로 일치한다고 가정하지 말고 불일치와 불완전성을 검사해야 한다고 설명합니다.
가상의 문서 API에서 빠진 경로를 찾습니다
교육용 서비스에는 파일을 읽는 표준 API와 최근 파일을 빠르게 보여 주는 캐시 API가 있습니다. 표준 API는 요청 사용자와 문서 권한을 확인하지만, 캐시 API는 문서 ID만 받아 저장된 내용을 돌려줍니다. 관리자는 인증 사용자만 캐시를 호출할 수 있으니 괜찮다고 말합니다. 하지만 인증은 신원을 확인하는 단계이며, 각 문서에 대한 인가를 대체하지 않습니다. 캐시 경로가 문서 정책 검사를 건너뛴다면 모든 접근을 중재하지 못합니다.
| 조건 | 확인 질문 | 가상 서비스의 단서 |
|---|---|---|
| 완전한 중재 | 자원에 도달하는 모든 경로가 같은 정책 검사를 거치는가? | 캐시 API가 문서 권한을 확인하지 않아 실패 |
| 변조 방지 | 비인가 주체가 정책이나 검사 결과를 바꿀 수 있는가? | 관리 설정 파일 쓰기 권한과 변경 감사가 필요 |
| 검증 가능성 | 구성요소와 접근 경로가 시험 가능한 범위로 모여 있는가? | 표준 API·캐시·복구 API의 검사 규칙을 함께 추적 |
정책 검사를 경로 단위로 추적합니다
- 보호 대상 객체와 접근 주체, 허용·거부 정책을 먼저 적습니다.
- 읽기·쓰기·내보내기·캐시·복구 등 객체에 닿을 수 있는 인터페이스를 나열합니다.
- 각 경로에서 인증과 객체별 인가가 어디서 수행되는지 확인합니다.
- 정책 설정과 판단 결과가 누가 변경할 수 있는지 살펴봅니다.
- 검사 누락 경로를 테스트하고, 적용 범위가 불명확하면 보증 결론을 제한합니다.
흔한 실수는 권한 검사를 호출하는 코드 한 곳을 찾아 ‘완전한 중재’라고 결론 내리는 것입니다. 중요한 것은 모든 접근이 그 검사에 도달하는지입니다. 반대로 코드가 여러 모듈에 흩어졌다고 해서 자동으로 참조 모니터 조건을 위반했다고 단정할 수도 없습니다. 실제 요청 경로, 설정 보호, 시험 범위를 확인해야 합니다. 정책 검증 시험은 구현의 완전한 안전성이나 결함 부재를 단독으로 증명하지 않습니다.
완전한 중재를 점검할 때는 캐시 적중처럼 빠른 경로와 실패·복구 경로를 일부러 포함해 시험해야 합니다. 정상 요청에서만 정책 검사를 통과하고 캐시에서 바로 응답하면 반복 요청이 검사되지 않을 수 있습니다. 또 권한 판단 결과를 저장한다면 사용자·객체·정책 버전이 바뀐 뒤 그 결과를 언제 무효화하는지 확인해야 합니다. 정책 데이터가 변경된 시점과 캐시된 허용 결과가 계속 사용되는 기간 사이에 불일치가 생기면 접근통제 우회가 발생할 수 있습니다. 이는 완전한 중재와 정책 명세의 일관성에 대한 점검 항목이며, 구체적인 구현 결함을 증명하려면 실제 구성과 시험 결과가 필요합니다.
세 조건을 사례에 적용할 때는 ‘조건이 깨졌다’는 판단과 ‘피해가 발생했다’는 판단을 분리하세요. 캐시가 권한 검사를 우회한다면 완전한 중재 설계가 미흡하다는 점은 말할 수 있습니다. 하지만 그 캐시에서 실제로 민감 문서가 반환됐는지는 호출 로그, 저장 데이터, 사용자 범위와 응답 기록을 확인해야 합니다. 변조 방지 여부도 단순히 관리 화면이 있다는 이유만으로 실패라고 할 수 없습니다. 누가 설정을 바꿀 수 있고, 승인·서명·감사·복구가 어떻게 통제되는지 살펴야 합니다. 개념 조건은 조사 방향을 정하고, 실제 보안 영향은 별도의 증거로 판정합니다.
회상 문제
교육용 문항입니다. 정식 다운로드 API는 문서 권한을 검사하지만 미리보기 썸네일 API는 URL을 알면 인증 없이 파일 일부를 반환합니다. 가장 직접적으로 위반된 참조 모니터 조건은 무엇이며, 이유는 무엇인가요?
완전한 중재입니다. 문서 자원에 닿는 썸네일 경로가 정책 집행을 우회하므로 모든 접근 시도가 검사된다고 볼 수 없습니다. 썸네일 내용이 실제로 공개됐는지는 별도의 영향 조사 대상입니다. API가 있다는 사실만으로 변조 방지나 검증 가능성까지 판정하지 않습니다.
접근통제 구조의 다른 사례를 복습하려면 정보보호론 덱 안내를 확인할 수 있습니다. API 사례와 문항은 새로 만든 교육용 예시이며 공식 기출문제나 유료 카드 인용이 아닙니다.
정답을 가리고 확인해 보세요
이 글을 위해 만든 학습 예시이며 공식 기출문제나 판매 카드의 인용이 아닙니다.
문서 권한을 검사하지 않는 썸네일 경로가 있다. 참조 모니터 조건 중 직접 문제인 것은?
정답과 해설 확인
완전한 중재입니다. 모든 접근 경로에서 정책을 집행해야 합니다.썸네일 경로가 접근통제를 우회하면 일부 요청은 중재되지 않습니다. 다른 조건의 충족 여부는 추가 근거 없이는 판정하지 않습니다.