컴퓨터 보안 - 1. 개요(Overview)

The CIA Triad

  • Confidentiality (기밀성)
    • 데이터의 기밀성
    • 프라이버시
    • 개인 정보 및 독점 정보를 보호하는 수단을 포함하여 정보 액세스 및 공개에 대한 허가된 제한을 유지
    • 데이터 및 프라이버시를 숨기는 특성
  • Integrity (무결성)
    • 데이터의 무결성
    • 시스템의 무결성
    • 정보 부인 방지 및 신뢰성 확보를 포함하여 부적절한 정보 수정 또는 파괴로부터 보호
    • 무결성, 비 인가자에 의한 데이터와 시스템 변경, 삭제, 생성을 막습니다.
  • Availability (가용성)
    • 시스템의 무결성
    • 신뢰할 수 있는 정보 액세스 및 사용 보장
    • 권한이 인가된 사용자가 시스템을 사용하길 원할 때 잘 동작하는 것입니다.

Additional Security Concepts (AAA)

  • Authentication (인증)
    • 사용자 식별
  • Authorization (허가)
    • 사용자가 특정 작업을 수행하도록 허용
    • 사용자가 그러한 명령을 수행할 수 있는 권한을 갖는지를 결정
  • Accounting (계정)
    • 사용자가 리소스에 접근할 수 있는지 확인

컴퓨터 보안 문제점

  1. 컴퓨터 보안은 생각보다 간단하지 않습니다.
  2. 보안 기능에 대한 잠재적인 공격을 고려해야 합니다.
  3. 특정 서비스를 제공하기 위해 사용되는 절차는 대개 직관에 어긋납니다.
  4. 물리적 및 논리적 배치를 결정해야 합니다.
  5. 추가 알고리즘 또는 프로토콜이 포함될 수 있습니다.
  6. 공격자는 하나의 약점을 찾아 공격하지만 개발자는 그것들을 막기 위해 모든 약점을 찾아야 합니다.
  7. 사용자와 시스템 관리자는 장애가 발생할 때까지 보안의 이점을 보지 못합니다.
  8. 보안을 위해서는 정기적이고 지속적인 모니터링이 필요합니다.
  9. 설계가 완료된 후 시스템에 통합되는 경우가 종종 있습니다.
  10. 효율적이고 사용자 친화적인 운영에 방해가 된다고 생각합니다.

용어

  • Adversary : 시스템을 공격하는 사람
  • Attack : 지능적 위협에 의한 시스템 공격
  • CounterMeasure : 위협, 취약점, 공격을 감소시키는 기술, 장치
  • Risk : 위협에 의해 발생될 손실
  • Security Policy : 자원을 보호하기 위한 정책이나 규칙
  • System Resource : 시스템에 저장된 데이터
  • Threat : 시스템에 해를 끼칠 가능성
  • Vulnerability : 시스템 설계 및 구현상의 취약점

취약성(Vulnerabilities), 위협(Threats), 공격(Attacks)

  • 취약성의 범주
    • 손상 (무결성의 상실)
    • 유출 (기밀 유지의 상실)
    • 사용할 수 없거나 매우 느림 (가용성 손실)
  • 위협
    • 취약점을 악용할 수 있는 능력
    • 자산에 대한 잠재적인 보안 위험을 나타냄
  • 공격 (실행된 위협)
    • 수동(Passive) - 시스템 리소스에 영향을 미치지 않습니다.
    • 활성(Active) - 시스템 자원을 변경하거나 작동에 영향을 줍니다.
    • 내부(Insider) - 보안 매개 변수 내부의 무엇인가에 의해 시작된다.
    • 외부(Outsider) - 주변으로부터 시작된다.

대책 (Countermeasures)

  1. 보안 공격을 처리하기 위해 사용된다.
    • 막다 (Prevent)
    • 감지하다 (Detect)
    • 해결하다 (Recover)
  2. 새로운 취약점에 대해 알린다.

  3. 잔여 취약성이 남아있을 수 있습니다.

  4. 위험 수준을 최소화하는 것이 목표

위협의 예시

  • 하드웨어:
    • 가용성: 장비가 도난당하거나 고장 나서 서비스 거부.
  • 소프트웨어:
    • 가용성: 프로그램이 삭제되거나, 사용자의 접근을 거부
    • 기밀성: 소프트웨어의 무단 사본이 만들어짐.
    • 무결성: 프로그램이 실행 실패하거나 의도하지 않은 작업을 수행하도록 수정
  • 데이터:
    • 가용성: 파일이 삭제되거나, 사용자의 접근을 거부
    • 기밀성: 무단으로 데이터를 읽는다.
    • 무결성: 기존 파일이 수정되거나 새 파일이 작성됩니다.
  • 통신 회선:
    • 가용성: 메시지가 파괴되거나 삭제되거나 통신 회선 및 네트워크를 사용할 수 없게 됩니다.
    • 기밀성: 메시지를 읽습니다. 메시지의 트래픽 패턴이 관찰됩니다.
    • 무결성: 메시지가 수정됩니다. 메시지의 지연, 재요청 또는 복제된 경우 거짓 메시지가 작성됩니다.

수동적(Passive) 공격 및 능동적(Active) 공격

  • 수동적 공격은 시스템에서 정보를 학습하거나 사용하려고 시도하지만 시스템 자원에는 영향을 미치지 않습니다
    • 도청 / 모니터링 전송
    • 감지하기 어렵다.
    • 감지보다는 예방에 중점을 둡니다.
    • 두 가지 종류가 있습니다:
      1. 메시지 내용의 유출
      2. 트래픽 분석
  • 능동적인 공격에는 데이터 스트림 수정이 포함됩니다.
    • 목표는 그들을 탐지하고 복구하는 것입니다.
    • 네 가지 범주 :
      • 숨기기
      • 다시 시도하기
      • 메시지 수정
      • 서비스 거부

보안 기능 요구 사항

기본적으로 컴퓨터 보안 기술 조치가 필요한 기능 영역에는 다음이 포함됩니다:

  • 액세스 제어 (Access Control)

  • 식별 및 인증 (Identification & Authentication)

  • 시스템 및 통신 보호 (System & Communication Protection)

  • 시스템 및 정보 무결성 (System & Information Integrity)

주로 관리 제어 및 절차가 필요한 기능 영역에는 다음이 포함됩니다:

  • 인식 및 훈련 (Awareness & Training)

  • 감사 및 책임 (Audit & Accountability)

  • 인증, 인정 및 보안 평가 (Certification, Accreditation & Security Assessments)

  • 비상 계획 (Contingency Planning)

  • 유지 (Maintenance)

  • 물리적 및 환경 보호 (Physical & Environmental Protection)

  • 계획 (Planning)

  • 인사 보안 (Personnel Security)

  • 위해 평가 (Risk Assessment)

  • 시스템 및 서비스 취득 (Systems & Services Acquisition)

컴퓨터 보안 기술 조치 및 관리 제어와 중복되는 기능 영역에는 다음이 포함됩니다:

  • 구성 관리 (Configuration Management)

  • 사고 대응 (Incident Response)

  • 미디어 보호 (Media Protection)

개방형 시스템을 위한 보안 아키텍처

ITU-T 권고안 X.800, OSI 보안 구조는 관리자가 효과적으로 보안 문제를 조직화 할 수 있는 유용한 방법을 제공합니다.

OSI 보안 구조는 국제적으로 표준화되어 있기 때문에 컴퓨터나 통신장비 생산업체는 권고된 서비스의 구조화된 정의에 따라 제품과 서비스에 보안규정을 적용하여 발전시켜야 합니다.

OSI 보안 구조의 핵심은 보안 공격, 보안 매커니즘, 보안 서비스 입니다.

  1. 보안 공격(Security Attack):
    • 정보의 안전성을 침해하는 행위
  2. 보안 메커니즘(Security Mechanism):
    • 보안 공격을 탐지, 예방하거나 공격으로 인한 침해를 복구하는 절차
  3. 보안 서비스(Security Service):
    • 정보의 송, 수신과 처리 시스템의 보안을 강화하기 위한 처리 또는 통신 서비스
    • 보안 서비스는 보안 공격에 대비하기 위한 것이며 하나 또는 그 이상의 보안 메커니즘을 사용하여 보안 서비스를 제공

보안 서비스

  • X.800
    • 보안 서비스를 시스템 리소스에 대한 특정 종류의 보호를 제공하기 위해 시스템에서 제공하는 처리 또는 통신 서비스로 정의합니다.
    • 보안 서비스는 보안 정책을 구현하고 보안 메커니즘으로 구현됩니다.
  • RFC 2828
    • 보안 서비스를 개방형 시스템을 통신하는 프로토콜 계층에서 제공하는 서비스로 정의하고 시스템 또는 데이터 전송의 적절한 보안을 보장합니다.

인증 서비스 (Authentication Service)

  • 두 연결 사이에 위장한 제 3자가 연결에 간섭 못하도록 합니다.

데이터 원본 인증 (Data Origin Authentication)

  • 수신된 데이터가 도중에 해킹 등 악의의 공격으로부터의 변조 없이 발신자로부터 올바로 전송되었음을 확인

  • 이 유형의 서비스는 통신하는 엔티티 간에 이전 상호 작용이 없는 전자 메일과 같은 응용 프로그램을 지원합니다.

대등 개체 인증 (Peer Entity Authentication)

  • 협회에서 피어 개체(Peer Entity)의 신원을 확인

  • 피어 개체(Peer Entity)의 신원 확인과 자격 유무를 확인합니다.

  • 통신 당사자 간의 신뢰성 있는 연결 또는 데이터 전송 과정에 적용됩니다.

액세스 제어 서비스 (Access Control Service)

  • 통신 링크를 통해 호스트 시스템 및 애플리케이션에 대한 액세스를 제한하고 제어하는 기능

  • 접근 권한을 얻으려는 각 엔티티를 먼저 식별하거나 인증해야 액세스 권한을 개인에게 맞출 수 있습니다

부인 방지 서비스 (Non-Repudiation Service)

  • 데이터를 송신한 자가 송신 사실을 허위로 부인하는 것으로부터 수신자를 보호합니다.

  • 수신자는 발신자가 실제로 메시지를 보냈음을 증명할 수 있습니다

  • 발신자는 수신자가 실제로 메시지를 수신했음을 증명할 수 있습니다

데이터 기밀성 서비스 (Data Confidentiality Service)

  • 수동 공격으로부터 전송된 데이터의 보호

  • 일정 기간 동안 두 사용자 간에 전송되는 모든 사용자 데이터를 보호합니다.

  • 연결 기밀성 (Connection Confidentiality)
    • 연결시 모든 사용자 데이터 보호
  • 트래픽의 흐름 분석으로부터 보호합니다.
    • 이를 위해서는 공격자가 통신 시설의 행선지, 빈도, 길이 또는 트래픽의 다른 특성을 관찰할 수 없도록 해야 합니다.
  • 비 연결형 기밀성 (Connectionless Confidentiality)
    • 단일 데이터 블록의 모든 사용자 데이터 보호
  • 트래픽 흐름 기밀성 (Traffic-Flow Confidentiality)
    • 트래픽 흐름의 관찰에서 파생된 정보의 보호

데이터 무결성 서비스 (Data Integrity Service)

  • 메시지 스트림, 단일 메시지 또는 메시지 내의 선택된 필드에 적용할 수 있습니다.

  • 비 연결 무결성 서비스(Connectionless Integrity Service)는 일반적으로 메시지 수정에 대한 보호 만 제공합니다.

  • 연결 지향 무결성 서비스(Connection-Oriented Integrity Service)는 메시지가 중복되지 않거나, 삽입 수정, 순서 변경 또는 재전송 없이 전송된 것으로 수신되도록 보장합니다.
    • 데이터가 파괴되지 않는 것도 보장합니다.
    • 메시지 스트림 수정 및 서비스 거부 문제를 해결합니다.
  • 복구가 가능한지 불가능한지에 대한 구별이 필요합니다.
    • 예방보다는 탐지와 관련이 있습니다.
    • 자동 복구 메커니즘을 통합하는 것이 더 매력적인 대안입니다.

가용성 서비스 (Availability Service)

  • 시스템 가용성을 보장하기 위해 시스템을 보호하는 서비스

  • 다양한 공격으로 인해 가용성이 저하되거나 줄어들 수 있습니다.
    • 이러한 공격 중 일부는 인증 및 암호화로 해결이 가능합니다.
    • 일부 공격은 가용성 손실을 예방하거나 복구하기 위해 물리적 조치가 필요합니다.
  • 서비스 거부 공격(DoS: Denial-of-Service)으로 인한 보안 문제를 해결합니다.

  • 시스템 자원의 적절한 관리 및 제어에 달려있습니다.

컴퓨터 보안 전략

보안 정책 (Security Policy)

  • 시스템 또는 조직이 중요하고 중요한 시스템 리소스를 보호하기 위해 보안 서비스를 제공하는 방법을 지정하거나 규제

  • 고려해야 할 요인 :
    • 보호되는 자산의 가치
    • 시스템의 취약점
    • 잠재적인 위협과 공격의 가능성
  • 고려해야 할 절충점 :
    • 사용 편의성과 보안성
    • 보안 비용 대비 실패 및 복구 비용

보안 구현 (Security Implementation)

  • 탐지(Detection):
    • 침입 탐지 시스템.
    • 서비스 거부 공격(DoS: Denial-of-Service) 탐지
  • 응답(Response):
    • 탐지시 공격을 막고 추가 손상을 방지할 수 있습니다.
  • 복구(Recovery)
    • 백업 시스템 사용
  • 예방(Prevention)
    • 보안 암호화 알고리즘
    • 암호화 키에 대한 무단 액세스 방지

보증 및 평가 (Assurance and Evaluation)

  • 보증:
    • 보안 조치가 시스템 및 프로세스 정보 보호를 위해 의도 된 대로 작동한다는 신뢰 수준
    • 시스템 설계와 시스템 구현 모두 포함
  • 평가:
    • 특정 기준과 관련하여 컴퓨터 제품 또는 시스템을 검사하는 프로세스
    • 관련 테스트 및 공식적인 분석 또는 수학적 기법을 필요로 합니다.

Reference