밍경송의 E.B

[사이버보안] 시스템보안(2)- 접근제어, 권한관리, 로그관리, 취약점관리 본문

CSE/사이버보안개론

[사이버보안] 시스템보안(2)- 접근제어, 권한관리, 로그관리, 취약점관리

m_gyxxmi 2024. 4. 19. 23:01

이 글은 2024-1 ㅇ화여대 사이버보안개론 수업자료를 참고하였음을 밝힙니다

 

3 접근제어

접근제어란? ----------------- IP가 기본이다!!!!!!!!!!

: 적절한 권한을 가진 사용자만 특정 sys나 정보에 접근할 수 있도록 통제하는 것.

목적 - 외부의 침입으로부터 sys 보호

요소 - 주체 : 사용자, 프로세스

        - 객체 : 파일, DB, 프로그램

        - 접근 : 읽기, 쓰기, 변경, 삭제, 실행

 

 

🔒OS의 접근제어

  • 불필요한 인터페이스 제거 -> 접근제어를 수행할 부분을 최소화
  • 시스템에 대한 접근 제어 정책 : 기본적으로 IP를 통해 수행됨
    • *윈도우의 경우 자체적으로 IP 기반의 접근제어 X ->  보통 방화벽 등을 통해 수행

 

 

✨inetd 데몬 (UNIX)

  • OS가 어떤 관리적 인터페이스로 운영되는지 파악 (UNIX의 경우 telnet-port23, SSH-port22)
  • 다양한 데몬의 슈퍼 데몬 (데몬을 관리하는 데몬)
    •  데몬 : 서비스의 요청에 대해 응답하는 실행 중인 bg 프세스
  • 여러 서버를 하나로 통합하여 관리, 데몬과 클라이언트의 요청 연결
  • *inetd.conf : 불필요한 인터페이스를 제거하기 위해 확인해야 할 파일

 : 클라이언트로부터 inetd가 관리하는 텔넷, SSH, FTP 등에 대한 연결 요청을 받으면 해당 데몬을 활성화 -> 실제 서비스 제공

 

 

✨TCPWrapper (UNIX)

  • 외부에서 들어오는 클라이언트에 대한 접근통제 기능 제공 (보안 목적으로 하나 더 띄우는 느낌)
  • 클라이언트의 IP 주소를 혹인하여 관리자가 접근을 허용한 호스트에 대해서만 서비스 허용 (외부 해킹으로부터 보호)

: TCPWrapper 설치 -> inetd 데몬은 TCPWrapper의 tcpd 데몬에 연결을 넘겨줌

: tcpd 데몬은 접속을 요구한 클라이언트에 적절한 권한이 있는지  inetd.conf를 참조/확인 후 해당 데몬에 연결

+ 연결에 대한 로그 실시

 


 

 

🔒DB의 접근제어

  • 특정 IP로부터의 접근을 차단.허용 가능
    • tcp.invited_node = (200.200.200.100, 200.200.200.200) // 허용
    • tcp.excluded_node = (200.200.200.100) //차단
  • MS_SQL은 IP에 대한 접근제어 제공 X -> 방화벽을 통해 IP 접근 제어 수행

 


 

🔒응용 프로그램의 접근제어

- 목적/역할에 따라 접그제어 제공. or not

- 웹서비스를 제공하는 IIS(MS 윈도우를 사용하는 서버를 위한 인터넷 기반 서비스들의 모임)와 아파치 역시 IP에 대한 접근 제어 제공

 

🔒네트워크 장비의 접근 제어

: 원격 관리 시 관리자/특정 IP만 접근 가능하도록 제어

  • 관리 인터페이스의 접근제어 = UNIX의 접근제어
  • ACL(Access Control List)을 통한 네트워크 트래픽 접근 제어
    • 들어오고 나가는 패킷을 분석해서 정해진 규칙에 따라 패킷 전송/차단함으로서 네트워크 접근 제어
    • 방화벽에서의 접근 제어와 기본적으로 동일

 


 

 

4 권한관리

: 각 사용자(누가)가 적절한 권한으로 적절한 정보 자산(무엇)에 접근할 수 있도록 하는 것

 

*권한 관리 != 접근제어

- 권한 관리의 경우 접근은 허용 but 기능 사용에 대한 관리- 접근제어는 접근 권한이 있는지, 애초에 들어갈 수 있는지에 대한 제어

 

 

 

🔒OS의 권한관리

 

- Windows

  • NTFS(new technology file sys) : 기본 파일 sys -> 그룹 또는 개별 사용자에게 [모든 권한, 수정, 읽기/실행, dir 내용 보기, 읽기, 쓰기 등]의 권한 설정 가능

- UNIX

  • 파일 및 디렉토리에 대한 권한 설정 방법이 모두 동일. 
  • ls -al 명령으로 해당 디렉토리 내용 확인

  • 파일 또는 디렉토리 소유자, 그룹, 소유자도 그룹도 아닌 사용자로 구분하여 권한 부여
  • chmod로 권한변경 가능
  • 권한은 숫자로 표기 가능 (8진수 표기, 순서는 rwx) 
    • ex)   755 -> 111 101 101 -> 소유자의 경우 모든 권한 / 그룹의 경우 write을 제외한 권한

 

 

 


 

🔒DB의 권한 관리

 

  1. 질의(query)에 대한 관리
    1. DDL(Definition) : 데이터 구조 정의 [CREATE, DROP, ALTER]
    2. DML(Manipulation) : db의 운영 및 사용 목적, 데어터의 검색과 수정 처리 [SELECT, INSERT, UPDATE, DELETE]
    3. DCL(Control) : 권한 관리를 위한 query [GRANT(부여), DENY(금지), REVOKE(마지막 행위 회수)]

  1. 질의문에 대한 관리
    1. DDL과 DML은 DCL에 의해 GRANT/DENY 됨
    2. DCL에 의한 권한 부여 혹은 회수 과정

  1. 에 대한 관리
    1. 뷰: 각 사용자에 대해 참조 테이블의 각 열에 대한 권한을 설정하는 것이 불편 -> 가상테이블을 만든 것

뷰에 대한 권한 설정  = 테이블에 대한 권한 설정

 

 

*뷰를 사용하는 경우, 직원은 direct하게 테이블에 접근할 수 없음.

 


 

🔒응용 프로그램의 접근제어

  • 응.프 내의 권한 관리 < 응.프 자체의 실행 권한이 더 중요
  • 응.프는 자신을 실행한 계정의 권한을 물려받음 -> 보안에 취약한 응.프의 경우 해당 프를 실행한 계정 권한 악용가능
    • ex ) Apache 등의 웹서버 서비스가 root 권한으로 실행되는 경우 -> 공격자가 웹 취약점을 악용하여 root 권한 획득 가능
    • * Windows의 IIS에서는 실행 프로세스 권한을 별도로 만들어 사용
    • * UNIX의 경우 nobody와 같이 제한된 계정 권한 사용

 


 

 

5 로그 관리

: 시스템 내부/ 네트워크를 통한 외부에서 시스템에 영향을 미칠 경우 해당 사항을 기록

 

- AAA 로그 정보를 이용한 해커, 악의적 사용자를 추적

  • Authentication : 자신의 신원을 시스템에 증명하는 것
  • Authorization(인가, 권한 부여) : 지문, PW 등을 통해 로그인이 허락된 사용자로 판명 -> 로그인/ 특정 권한을 부여하는 과정
  • Accounting : 로그인에 성공 -> sys가 이에 대한 기록을 남기는 활동, 객체나 파일에 접근한 기록
    • 책임 추적성(accountability) : 추적에 대한 기록의 충실도. 책임추적성 ↑  로그가 충실하게 기록 ↑ 문제 대응력 ↑
    • 감사 추적 (audit trail) : 보안과 관련하여 시간대별 이벤트 기록 로그

 

🔒OS의 로그 관리

 

- Windows

  • 이벤트라고 불리는 중앙집중화된 형태로 로그 수집.저장
  • 중앙집중화 -> 관리가 편하지만 보안의 위험성 ↑
  • 이벤트뷰어에 표시되는 항목에는 종류, 날짜시간, 원본,범주, 이벤트(로그별 고유번호), 사용자, 컴퓨터 등

 

 

- UNIX

  • 분산된 형태로 생성/관리 (!= 윈도우)
  • 윈도우에 비해 상대적으로 공격자 찾기 쉬움

 

 


 

🔒DB의 로그 관리

- 자원 낭비의 분제로 일반적으로 접근 로그만 남김

- 별도의 모니터링 툴 도입

 

🔒네트워크 장비의 로그 관리

- 자체적으로 로그를 남기는 공간 없음 -> 로그 서버를 따로 운영해야 함. (해커가 침투해도 서버를 해킹하지 않는 이상 자신의 흔적을 지우기 어렵다는 장점)

- 보안 : 침입 차단/탐지/방지 시스템에 로깅 기능 존재 + 다양한 보안 시스템의 로그는 통합로그관리(SIEM)에 의해 수집 관리

- 관리 : 넽웤 트래픽 모니터링 sys와 관리 시스템의 로그

- 장비 인증 : 인증 서버를 통해 네트워크 장비에 대한 인증 시도/ 로그인 정보 확인 가능

 

 

 


 

 

6 취약점 관리

- 보안이 완벽할 순 없다. -> sys 자체의 결함을 체계적으로 관리

* 취약점 분석 도구 : SATAN, SARA, SAINT 등

ex) 패치 관리 , 응.프 고유 위험 관리( os파일/명령 실행 등), 응.프의 정보 수집 제한 (os의 정보 노출 주의)