[system operate] 11. 정보보호 및 보안

mainxjuju·2022년 6월 13일
0

운영체제

목록 보기
4/5
post-thumbnail

보호의 개요

운영체제 내의 다양한 프로세스들은 다른 프로세스의 활동으로부터 보호

  • 보호 protection; 컴퓨터 시스템에 정의된 자원에 대하여 프로그램, 프로세스, 또는 사용자 접근을 제어하는 방법
    • 가장 중요한 원칙
      1. 정책과 기법을 분리 devide between policy and mechanism
        정책은 무엇을 수행할까를 결정, 기법은 어떻게 수행할 것인가
      2. need-to-know 원칙
        프로세스들은 접근 권한이 부여된 자원들에 대해서만 접근
        프로세스가 자신의 일을 완료하기 위하여 현재 필요로 하는 자원만을 접근
      3. protection domain 보호영역
        프로세스가 접근할 수 있는 자원들을 명시하고 있는 하나의 보호 영역 내에서 동작
        각 영역은 객체들의 집합과 그 객체에서 취할 수 있는 조작의 형태를 정의
        영역은 접근 권한의 집합이고, 각각 <객체이름, 권한집합>의 순서쌍으로 구성
      4. 접근 권한(access right)
        어떤 주체가 어떤 객체를 이미 정해진 방법에 따라 접근할 수 있는 능력
  • 보안 security; 시스템과 그 시스템의 자료들이 결함없이 보전된다는 것을 의미하는 일종의 신뢰도, 보안의 보장은 보호의 개념보다 광범위한 주제

접근제어 정책 및 기법

접근제어; 기밀성, 무결성, 가용성 및 합법적인 이용과 같은 보호 서비스에 직접적으로 기여하게 되며 이러한 서비스들의 권한 부여를 위한 수단

접근제어리스트 ACL(Access Control List) - 열

  • 사용자명 <사용자명, 사용자 그룹 명>
    file0 (lee, 교수, rw-)
    file1 (kim, 교수, rwx)
    file2 (park, , rw-)(choi, 대학원, r--)(kim, 학생, --x)
    file3(
    , 학부, r-x)

    여기서 *는 all을 의미
    객체의 소유자는 언제든지 자신의 접근 제어 리스트를 변경가능
    단) 접근 제어 리스트의 변경이 현재 객체를 사용하고 있는 사용자에게 영향을 미치지x

권한 리스트 CL(Capability List) - 행

  • 각 행을 해당영역과 결합한 것
  • 한 영역에 대한 권한 리스트는 그 객체들에 허용된 조작 유형들을 함께 갖고있는 객체들의 list
  • 서로 포인터로 연결
  • 권한을 소유한다는 것은 접근을 허용받음을 의미
  • 권한 리스트는 보호영역과 결합되어 있으나, 해당영역에서 수행 중인 프로세스가 직접 액세스 불가능
  • 사용자에 의해서 간접적으로만 접근이 가능한 보호된 객체
  • 권한 리스트는 운영체제가 관리

lock-key 기법

  • 각 객체는 락이라 불리는 유일하고 독특한 비트패턴의 리스트를 보유
  • 각 영역은 키라고 불리는 유일하고 독특한 비트패턴의 리스트를 보유

즉, 객체->lock , 영역->key
ACL과 CL의 절충기법
수행중인 프로세스는 해당영역이 객체의 락키와 일치하는 키가 있을때만 그 객체에 접근 가능
해당 영역에 대한 키 리스트는 운영체제에 의한 관리

SL(Security Lable) 제어대상에 레이블을 붙임

보안의 개요

보호는 엄격히 말하면 컴퓨터 시스템에 저장된 프로그램 및 데이터에 통제된 접근 방법을 제공하기 위한 내부적인 주체

보안이란 적절한 보호 시스템뿐만 아니라, 시스템이 동작하는 외부환경에 대해서도 고려

보안의 분류

  • 외부보안; 침입자나 천재지변으로 부터 컴퓨터 시스템을 보호하는 것이며, 시설 보안과 운용보안 두가지로 나눔
  • 내부보안; 컴퓨터 하드웨어나 운영체제가 불법 침입자로 부터 프로그램이나 자료 및 데이터를 보호하기 위한 접근 제어 코드를 내장하고 있도록 하는 기능
  • 사용자 인터페이스 보안; 사용자의 신원을 운영체제가 먼저 확인하고 나서 시스템의 프로그램이나 데이터, 자료들을 접근
  • 네트워크 보안; 네트워크와 통신시설을 이용하여 전송중인 자료를 보호하기 위한 조치
  • 인터넷 보안; 인터넷을 통해 권한이 없는 컴퓨터 시스템 접근이나 위험을 막는 것

보안위협

  • 흐름 차단(Interruption)
    시스템의 일부가 파괴되거나 사용할수 x
    "가용성"에 대한 위협

  • 가로채기(Interception)
    인가 받지 않은 제 3자가 컴퓨터 자원을 접근하는 경우
    "비밀성"에 관한 위협

  • 변조
    인가 받지않은 제 3자가 시스템에 위조, 물(counterfeit object)을 삽입
    "무결성"에 대한 위협

  • 기타 보안 위협 요소
    적극적인 공격; 메시지 흐름차단, 신분위장, 변조, 재전송, 서비스 거부, 서비스 부인 etc...
    소극적인 공격; 정보를 알아내거나 악용하려고 시도는 하지만 시스템 자원에 직접적인 영향을 주지는 않음. ex)도청, 가로채기, 트래픽 분석

  • 악성 소프트웨어(Malicious Software)
    보안 공격의 다른 관점에 의한 구분은 사용자에 의한 침입과 소프트웨어에 의한 위협요소로 구분

    • 종류
      • Trap doors 트랩도어; 접근제어를 무시하거나 소스코드의 민감한 부분까지 다룰 수 있도록 한 비밀 통로
      • Trojan horses 트로이목마; 프로그램에 악의적인 루틴을 첨가하여 본래의 기능 외 악의적인 기능까지 수행하도록 하여 공격
      • Logic Bomb 논리폭탄; 논리 폭탄은 일정한 조건이 맞으면 폭발하도록 맞춰져있는 합법적인 프로그램에 추가된 코드
      • Zombie 좀비; 인터넷에 연결되어 있는 다른 컴퓨터에 몰래 침입하여 점령하는 프로그램
      • Virus; 다른 프로그램을 수정해서 감염시키는 프로그램
      • Worms; 자기 자신을 복제하면서 통신망 등을 통해서 전파
profile
나 개발자가 맞을까....?

0개의 댓글