[정보보안기사] 실기 - 시스템

.·2022년 7월 25일
0

시스템 기본 학습


윈도우 기본 학습

윈도우 인증 구성요소

LSA

  • 모든 계정의 로그인에 대한 검증 및 시스템 자원에 대한 접근 권한 검사
  • NT 보안의 중심 서비스, 보안 서브시스템이라 불림

SAM

  • 사용자/그룹 계정 정보에 대한 DB를 관리
  • SAM 파일은 사용자, 그룹 계정 및 암호화된 패스워드 정보를 저장하고 있는 DB로 윈도우 설치 디렉터리에 위치
  • SAM 파일은 중요한 파일이므로 적절한 접근 통제가 필요
    • Administrators 및 System 그룹 외에는 SAM 파일에 대한 접근 제한
    • 불필요한 그룹 및 계정에 대해서는 권한 제거

SRM

  • 인증된 사용자에게 SID(Security ID)를 부여

윈도우 보안 식별자(SID)

개요

  • 윈도우의 각 사용자나 그룹에 부여되는 고유한 식별번호
  • OS는 부여된 ID 값으로 사용자를 식별
  • 사용자 계정 및 패스워드 정보를 담고 있는 SAM 파일에 SID 정보가 저장되어 있음

SID 구조

계정SID
AdministratorS-1-5-21-4243233100-3174512425-4165118588-500
GuestS-1-5-21-4243233100-3174512425-4165118588-501
일반 사용자S-1-5-21-4243233100-3174512425-4165118588-1001
  • S-1: 윈도우 시스템을 의미
  • 5-21: 시스템이 도메인 컨트롤러 이거나 단독 시스템임을 의미
  • 숫자들: 시스템만의 고유한 식별자
  • 500, 501, 1001: 사용자 식별자(ID)

    500: 관리자 식별자
    501: 게스트 식별자
    1000 이상: 일반 사용자 식별자


UNIX/Linux 기본 학습


시스템 기본

사용자 정보

/etc/passwd 파일
  • UNIX는 시스템 관리자가 사용자 계정을 만들 때마다 해당 사용자와 관련된 정보를 /etc/passwd 파일에 저장
  • 형식
    • [user_account]:[user_password]:[user_ID]:[group_ID]:[comment]:[home_directory]:[login_shell]
    • root:x:0:0:root:/root:/bin/bash
      • user_account: 사용자 계정명
      • x: shadow 패스워드를 사용한다는 의미
      • 0: 사용자 ID(UID)
      • 0: 기본 그룹(GID)
      • root: 사용자 관련 기타 정보(코멘트)
      • /root: 로그인 성공 후 사용자가 위치할 홈 디렉터리
      • /bin/bash: 로그인 쉘
    • 해킹 시 주로 UID와 GID를 0으로 변경한다. 따라서 UID, GID가 0으로 변경 된 계정이 있는지 주기적으로 확인해 취약점을 제거해야 한다.

파일시스템 응용

파일시스템 개요

파일시스템 구성
  • 부트 블럭: OS를 부팅하거나 초기화하기 위한 부트스트랩 코드를 담고 있는 블럭
  • 슈퍼 블럭: 해당 파일시스템을 관리하기 위한 정보를 담고 있는 블럭
  • 아이노드 리스트
    • inode number: 파일시스템 내에서 해당 파일을 식별하기 위한 고유한 식별자
    • MAC TIME
      • last Modification Time: 파일의 내용을 마지막으로 수정한 시간
      • last Access Time: 파일을 마지막으로 접근한 시간
      • last Change Time: 파일의 속성을 마지막으로 변경한 시간(속성은 inode 정보를 의미)
    • inode에는 파일명이 없으며 파일명은 디렉터리를 통해 관리

파일 권한 관리

접근 권한 변경(chmod)
  • 대상: u(user), g(group), o(others), a(all)
  • 연산자: +(추가), -(제거), =(지정)
  • 접근권한: r(읽기), w(쓰기), x(실행)

    ex)

    • chmod go-w daemon.c: daemon.c의 group, otehrs에 w 권한 제거
    • chmod a=rw daemon.c: daemon.c의 모든 사용자에게 rw 권한 설정
    • chmod g+x, o-x daemon: daemon의 group에 x 권한을 추가하고 others에 x 권한 제거
  • 접근권한을 숫자로 기술: r=4, w=2, x=1

    ex)

    • chmod 777 daemon.c: 모든 사용자에게 rwx 권한 설정
    • chmod 664 daemon.c: user, group에 rw 권한, oters에 r 권한 설정
    • chmod 600 daemon.c: user에 rw 권한 설정
소유주 또는 소유그룹 변경(chown/chgrp)
접근 권한 마스크(umask)
  • 앞으로 만들어질 파일에 여향을 미치는 명령으로, 명령 시 지정한 8진수는 새로 만들어질 팡리에서 제거 될 권한을 명시
  • 일반 파일을 생성할 때 접근권한은 666에서 umask로 지정한 값을 빼고, 디렉터리는 777에서 umask로 지정한 권한을 뺀다.
  • EX) umask가 333일 대 일반 파일 생성 시 최종 접근 권한
    • umask가 333이라는 의미는 기본 접근 권한에서 w(2)와 x(1) 권한을 제거하라는 의미. 따라서 일반 파일의 666 기본 접근 권한에서 user, group, others에 w(2), x(1) 권한을 제거하면 최종 접근 권한은 444가 된다.(단순히 666에서 333을 빼는 것이 아님!!)
파일 검색(find)
  • 시스템 내에 있는 파일 중 사용자가 원하는 파일을 찾을 때 사용
  • 주요 옵션
    • 접근권한/퍼미션(perm)
      • -perm 4000이면 setuid만 설정되어 있는 파일을 검색, -4000이면 setuid를 포함하는 파일을 검색
    • 시간(time)
      • atime(access), mtime(modification), ctime(change)
      • -mtime (+-)n: +-가 없으면 정확히 n일, +n이면 n일 초과, -n이면 n일 미만인 파일을 검색
      • -mtime -4이면 마지막 수정일이 4일 미만인 파일 검색

0개의 댓글