정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

58
정정 정정 정정 정정 정정정 정정 정정정 정정 정정정 정정정 정정정정정 정정정정정정정 정정정정정 정정정정정정정

Upload: beatrice-barton

Post on 03-Jan-2016

60 views

Category:

Documents


0 download

DESCRIPTION

정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공. 계정과 패스워드의 중요성을 이해한다. 1. 적절한 패스워드 설정 방법을 익힌다. 2. 4. 6. 세션의 의미와 관리 방법을 살펴본다. 사용자 및 클라이언트에 대한 접근 제어와 관리 방법을 알아본다. 3. 5. 시스템에 존재할 수 있는 취약점의 종류를 알아본다. 로그의 의미와 수행 가능한 로그의 범위를 살펴본다. Section 01 계정과 패스워드 관리. 인증 수단 식별 (Identification) - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

정보 보안정보 보안

시스템 보안시스템 보안

최미정최미정강원대학교 컴퓨터과학전공강원대학교 컴퓨터과학전공

Page 2: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

이 장에서 다룰 내용이 장에서 다룰 내용이 장에서 다룰 내용이 장에서 다룰 내용

계정과 패스워드의 중요성을 이해한다 .

적절한 패스워드 설정 방법을 익힌다 .

세션의 의미와 관리 방법을 살펴본다 .

1

2

3

4

5

6

사용자 및 클라이언트에 대한 접근 제어와 관리 방법을 알아본다 .

시스템에 존재할 수 있는 취약점의 종류를 알아본다 .

로그의 의미와 수행 가능한 로그의 범위를 살펴본다 .

Page 3: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

인증 수단 식별 (Identification)

•아이디라는 문자열을 통해 그 사람이 누구인지 확인하는 과정 .

인증 (Authentication) 의 네 가지 방법

•당신이 알고 있는 것 (Something You Know): 군대의 암구어처럼 머릿 속에 기억하고 있는

정보를 이용해 인증을 수행하는 방법

예 ) 패스워드

•당신이 가지고 있는 것 (Something You Have): 신분증이나 OTP(One Time Password) 장치

등을 통해 인증을 수행하는 방법

예 ) 출입카드

•당신 모습 자체 (Something You Are): 홍채와 같은 생체 정보를 통해 인증을 수행하는 방법 .

경찰관이 운전면허증의 사진을 보고 본인임을 확인하는 것도 이에 해당된다고 볼 수 있음 .

예 ) 지문인식

•당신이 위치해 있는 곳 (Somewhere You Are): 현재 접속을 시도하는 위치의 적절성을

확인하는 방법

예 ) 콜백 (Call Back)

Page 4: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

운영체제의 계정 확인 윈도우 : 운영체제에 대한 관리자 권한을 가진 계정을 administrator 라고 칭하는데 ,

이는 시스템에 가장 기본으로 설치되는 계정

유닉스 : 기본 관리자 계정으로 root 가 존재 .

계정 생성과 삭제시 적절한 승인 절차가 마련되어 있어야 하고 , 불필요한 계정이 존재하는지와 불필요하게 관리자 권한 등이 부여되어 있지 않은지를 주기적으로 확인해야 함 .

Page 5: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

윈도우 관리자 계정 확인 net localgroup administrators 명령

유닉스 계정 목록 확인 /etc/passwd 파일

Page 6: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

/etc/passwd 파일의 구성

➊사용자 계정

➋패스워드가 암호화되어 shadow 파일에 저장되어 있음을 나타낸다 .

➌사용자 번호

➍그룹 번호

➎실제 이름 . 시스템 설정에 영향이 없는 것으로 , 자신의 이름을 입력해주어도 된다 .

➏사용자의 홈 디렉토리 설정 . 앞의 예는 관리자이므로 홈 디렉토리가 /root 다 . 일반 사용자는 /home/wishfree 와 같이 /home 디렉토리 하위에 위치한다 .

➐사용자의 셸 정의 . 기본 설정은 bash 셸이다 . 사용하는 셸을 이곳에 정의해준다 .

•관리자 권한은 사용자 번호와 그룹 번호로 식별 .

•관리자는 사용자 번호가 0 번이고 , 그룹 번호도 0.

•root 이외에 사용자 번호가 0 번인 계정이 존재하면 , 그 계정도 관리자 권한을 가짐

root : x : 0 : 0 : root : /root : /bin/bash ➊ ➋ ➌ ➍ ➎ ➏ ➐

Page 7: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

윈도우 일반 사용자 계정 확인 net user 명령

유닉스 일반 사용자 계정 확인 역시 /etc/passwd 파일에서 확인

• /etc/passwd 파일의 구조에서 ➋와 ➐ 부분을 확인해야 함 .

•리눅스나 유닉스의 옛날 버전에서는 ➋가 빈 것이 패스워드 없이 로그인이 가능한 계정이였으나 ,

최근의 유닉스는 시스템의 보안 설정으로 인해 로그인이 차단되어 계정이 동작하지 않음 .

•➐도 /bin/sh, /bin/csh, /bin/bash, /bin/ksh 와 같이 정상 셸이 아니라 /bin/false 처럼

명시적으로 사용이 금지되어 있거나 빈 경우에는 누군가에게 할당된 계정이 아님 .

Page 8: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

윈도우 그룹 목록 확인 net localgroup 명령

Page 9: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

윈도우의 기본 그룹

Page 10: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

유닉스 그룹 목록 확인 /etc/group

/etc/group 구조

➊그룹 이름 . 여기서는 root 그룹을 말함 .

➋그룹에 대한 패스워드를 설정하는데 , 일반적으로는 설정되지 않음 .

➌그룹 번호 . 0 은 root 그룹 .

➍해당 그룹에 속한 계정 목록 . 하지만 이 목록은 완전하지 않기 때문에 패스워드 파일과 비교해보는 것이 가장 정

확 .

root : x : 0 : root ➊ ➋ ➌ ➍

Page 11: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

데이터베이스의 계정 관리 MS-SQL 에서는 윈도우의 관리자계정으로 데이터베이스에 로그인할 수 있지만

오라클에서는 할 수 없음 .

운영체제와 데이터베이스 계정이 완전히 분리되어 있지 않은 경우 데이터베이스 계정 이외에 운영체제의 계정 역시 잘 확인해야 한다 .

데이터베이스에서도 계정이 운영체제처럼 관리자 계정과 일반 사용자 계정으로 나뉨 .

MS-SQL 에서 관리자 계정은 sa(system administrator).

오라클에서 관리자계정은 sys, system. (sys 와 system 은 둘다 관리자 계정이지만 , system 은 sys 와 달리 데이터베이스를 생성할 수 없음 .)

오라클은 Scott 이라는 기본 계정이 존재하고 , 솔루션을 설치하거나 테이블을 생성할 때 관련 계정이 자동으로 생성되는 경우가 많음 . 그리고 그 계정들은 보통 아이디와 패스워드가 동일하기 때문에 불필요한 경우에는 잠금 상태 (LOCK) 로 바꾸어 주고 그렇지 않은 경우에는 패스워드를 적절히 바꾸어 주어야 함 .

Page 12: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

패스워드 관리 좋지 못한 패스워드의 예 길이가 너무 짧거나 널 (Null) 인 패스워드 사전에 나오는 단어나 이들의 조합 키보드 자판의 일련 나열 사용자 계정 정보로 유추 가능한 단어들

좋은 패스워드 단어와 간단한 숫자 , 특수문자 한두 개를 조합한 적절한 길이의 패스워드

Page 13: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

세션 사용자와 컴퓨터 또는 두 컴퓨터간의 활성화된 접속

Page 14: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

컴퓨터에서 세션을 적절히 유지하기 위한 보안 사항 . 세션 하이재킹 또는 네트워크 패킷 스니핑에 대응하기 위한 암호화 세션에 대한 지속적인 인증 (Continuous Authentication).

지속적인 인증 인증 절차를 거쳐 시스템에 접근하는 데 성공했다면 , 얼마 후 같은 아이디로 시스템에

접근하는 사람이 인증에 성공한 처음의 그 사람인가라는 의문에 대한 해답을 찾기 위한 방책 윈도우 : 화면 보호기

유닉스 : /etc/default/login 이나 /etc/profile 과 같이 사용자의 일반 환경을 설정하는 파일에서 타임아웃 값을 명시적으로 설정 .

Page 15: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

운영체제의 접근 제어 접근 제어를 수행해야 할 관리 인터페이스

inetd 데몬

•클라이언트로부터 inetd 가 관리하고 있는 Telnet 이나 SSH, FTP 등에 대한 연결 요청을 받은

후 해당 데몬을 활성화시켜 실제 서비스를 하는 , 데몬과 클라이언트의 요청을 연결하는 역할

Page 16: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

TCPWrapper

• TCPWrapper 가 설치되면 , inetd 데몬은 연결을 TCPWrapper 의 tcpd 데몬에 넘겨줌 . tcpd

데몬은 접속을 요구한 클라이언트에 적절한 접근 권한이 있는지 확인한 후 해당 데몬에 연결을

넘겨줌 . 이때 연결에 대한 로그도 실시할 수 있음 .

Page 17: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

데이터베이스의 접근 제어 오라클은 $ORACLE_HOME/network/admin/sqlnet.ora 파일에서 IP 에 기반한 접근

제어 설정

200.200.200.100 과 200.200.200.200 라는 두 IP 의 접근을 허용하고 싶으면 1 과 같이 , 200.200.200.150 의 접근을 차단하고 싶으면 2 와 같이 추가 .

MS-SQL 은 운영체제처럼 IP 에 대한 접근 제어를 기본으로 제공하지 않음 .

tcp.invited_nodes=(200.200.200.100, 200.200.200.200)tcp.excluded_nodes=(200.200.200.150)

Page 18: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

네트워크 장비의 접근 제어 네트워크 장비도 IP 에 대한 접근 제어가 가능 .

네트워크 장비에서 수행하는 IP 에 대한 접근 제어로는 관리 인터페이스의 접근 제어와 ACL(Access Control List) 을 통한 네트워크 트래픽의 접근 제어를 생각할 수 있음 .

네트워크 장비의 관리 인터페이스에 대한 접근 제어는 유닉스의 접근 제어와 거의 같고 , ACL 을 통한 네트워크 트래픽에 대한 접근 제어는 방화벽에서의 접근 제어와 기본적으로 같음 .

Page 19: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

윈도우의 권한 관리 윈도우 NT 4.0 이후부터는 NTFS(New Technology File System) 를 기본 파일

시스템으로 사용 .

➊ 모든 권한 : 디렉토리에 대한 접근 권한과 소유권을 변경할 수 있으며 , 하위에 있는 디렉토리와 파일을 삭제할 수 있음 .

➋ 수정 : 디렉토리를 삭제할 수 있음 . 읽기 및 실행과 쓰기 권한이 주어진 것과 같음 .

➌읽기 및 실행 : 읽기를 수행할 수 있으며 , 디렉토리나 파일을 옮길 수 있음 .

➍ 디렉토리 내용 보기 : 디렉토리내의 파일이나 디렉토리의 이름을 볼 수 있음 .

➎읽기 : 디렉토리의 내용을 읽기만 할 수 있음 .

➏쓰기 : 해당 디렉토리에 하위 디렉토리와 파일을 생성할 수 있으며 , 소유권이나 접근 권한의 설정 내용을 확인할 수 있음 .

Page 20: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

윈도우의 특정 권한으로는 좀 더 세부적인 쓰기 , 읽기 등이 있음 .

윈도우에서 디렉토리 및 파일에 대해 설정되는 접근 권한의 규칙•규칙 1 : NTFS 접근 권한은 누적 .

•규칙 2 : 파일에 대한 접근 권한이 디렉토리에 대한 접근 권한보다 우선 .

•규칙 3 : ‘ 허용’보다‘거부’가 우선

Page 21: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

윈도우에서는 파일 및 디렉토리에 대한 권한을 cacls 명령으로도 확인할 수 있음

Page 22: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

유닉스의 권한 관리 유닉스는 파일 및 디렉토리에 대한 권한 설정 방법이 모두 같음 . ls -al 명령으로 해당 디렉토리의 내용을 확인 .

Page 23: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

➊ 파일의 종류와 권한 . 다시 다음 4부분으로 나눌 수 있다 . - rw- r-- r-- ⓐ ⓑ ⓒ ⓓ ⓐ 파일 및 디렉토리의 종류 . - 표시는 일반 파일을 , d 표시는 디렉토리를 나타냄 .

ⓑ 파일 및 디렉토리 소유자의 권한 .

ⓒ 파일 및 디렉토리 그룹의 권한 .

ⓓ 해당 파일 및 디렉토리의 소유자도 그룹도 아닌 제 3의 사용자에 대한 권한 .

• 읽기 (r: read), 쓰기 (w: write), 실행 (x: execute) 의 권한을 부여 .

• 권한은 숫자로 표기할 수도 있음 . 읽기는 4, 쓰기는 2, 실행은 1로 바꾸어 환산 .

➋ 파일에 대한 소유자➌ 파일에 대한 그룹 . 유닉스에서 dba 그룹에 속한 계정은 /etc/group 에서 dba 의

그룹번호로 확인 .

-rw-r--r-- 1 oracle dba 312 Nov 30 13:05 listener.ora

➊ ➋ ➌

rw- r-- r-- = 42- 4-- 4-- → 644

Page 24: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

질의문에 대한 권한 관리 DDL(Data Definition Language)

•데이터 구조를 정의하는 질의문으로 , 데이터베이스를 처음 생성하고 개발할 때 주로 사용하고 운영 중에는 거의 사용하지 않음 .

• CREATE: 데이터베이스 객체를 생성한다 .

• DROP: 데이터베이스 객체를 삭제한다 .

• ALTER: 존재하는 기존 데이터베이스 객체를 다시 정의한다 DML(Data Manipulation Language)

• 데이터베이스의 운영 및 사용과 관련해 가장 많이 사용하는 질의문으로 , 데이터의 검색과 수정 등을 처리 .

• SELECT: 사용자가 테이블이나 뷰의 내용을 읽고 선택한다 .

• INSERT: 데이터베이스 객체에 데이터를 입력한다 .

• UPDATE: 기존 데이터베이스 객체에 있는 데이터를 수정한다 .

• DELETE: 데이터베이스 객체에 있는 데이터를 삭제한다 .

DCL(Data Control Language) •권한 관리를 위한 질의문 .

• GRANT: 데이터베이스 객체에 권한을 부여한다 .

• DENY: 사용자에게 해당 권한을 금지한다 .

• REVOKE: 이미 부여된 데이터베이스 객체의 권한을 취소한다

Page 25: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

권한 부여와 관련되어 일반적으로 다음과 같은 구조로 적용됨 .

Page 26: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

MS SQL 에서 권한 관리 데이터베이스 테이블에 대한 권한 변경시 계정 또는 그룹의 권한 항목만 체크하면 됨 . With Grant 는 내가 A 에게 Select 에 대한 With Grant 옵션을 부여하면 , A 가 내

허락을 받지 않고도 C 나 F 와 같은 다른 사람에게 Select 권한을 부여할 권한을 갖게 해주는 것 ( 일종의 권한 위임 )

Page 27: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

오라클 ( 오라클 11g) 에서 권한 관리 권한 부여와 제거 명령어 형식

권한 부여와 제거 명령어 예

권한 부여 : SQL> grant [ 권한 ] on [ 테이블 이름 ] to [ 사용자나 Role];권한 제거 : SQL> revoke [ 권한 ] on [ 테이블 이름 ] from [ 사용자나 Role];

SQL> grant select on member to wishfree;SQL> grant select on address to sysweaver;

Page 28: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

권한이 부여된 내역 확인

•wishfree 계정에 부여된 권한 확인

SQL> select * from user_tab_privs where grantee in ('WISHFREE')

Page 29: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

권한 내용을 모두 보고 싶을 때는 조건을 뺀 , 즉 select * from user_tab_privs 만 입력 . wishfree 에게 부여된 Select 권한은 Revoke 명령으로 제거할 수 있음

SQL> revoke select on member from wishfree;

SQL> select * from user_tab_privs where grantee in ('WISHFREE')

Page 30: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

뷰 각 사용자에 대해 참조 테이블의 각 열에 대한 권한을 설정하는 것이 매우 번거롭고

관리가 어려워 만든 가상 테이블 .

Page 31: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

Authentication ( 인증 ) 자신의 신원 (Identity) 을 시스템에 증명하는 과정 . 가장 일반적인 경우가 아이디와

패스워드를 입력하는 과정 . 아이디가 신원을 나타내고 패스워드가 정상이면 인증이 됨 .

Authorization ( 인가 ) 올바른 패스워드를 입력해 시스템에 로그인이 허락된 사용자라고 판명되어 로그인되는

과정 .

Accounting 접근한 객체나 파일에 대한 기록 . 추적을 위한 로그의 충실도를 책임 추적성 (Accountability) 이라 함 .

Page 32: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

윈도우의 로그 윈도우 2003 은 최소한의 로그가 기본으로 설정되어 있어 시스템에 남겨진 로그를 확인 할

수 있음 . 윈도우에서는 이벤트 뷰어라는 로그 열람 기능을 제공하는데 , 운영체제 수준에서 남기는 거의 모든 로그를 이 기능을 통해 볼 수 있음

이벤트 뷰어에 표시되는 내용

Page 33: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

윈도우의 로그 정책 설정 [ 관리도구 ]-[ 로컬 보안 설정 ] 에서 설정

Page 34: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

윈도우의 로그 종류

Page 35: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공
Page 36: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

유닉스의 로그 주요 시스템의 로그 디렉토리 위치

•레드햇 리눅스는 /var/log 디렉토리 아래에 로그 파일이 존재 .

Page 37: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

유닉스 로그의 종류

Page 38: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

Last 명령 실행 결과

Page 39: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

데이터베이스 로그 데이터베이스는 모든 접근 및 실행 SQL 문에 대해 로그를 남길 수 있음 .

하지만 로그를 활성화시키면 CPU 점유율이 30% 가량 상승하는 시스템 자원의 문제 때문에 보안보다 데이터베이스 운영상의 문제점을 확인하기 위해 필요할 때만 활성화시키고 , 평소에는 데이터베이스에 대한 간단한 접근 로그만 남기는 것이 일반적임 .

MS-SQL 2000 에서는 오른쪽과 같이 로그인 시도에 대한 실패와 성공 로그를 각각 남길 수있음 .

오라클은 네트워크를 통해 데이터베이스에 로그인하면 $ORACLE_HOME/network/log/listener.log 에 그 기록을 남김 .

Page 40: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

데이터베이스에 대한 로그를 남기는 가장 좋은 방법은 별도의 데이터베이스 모니터링 툴을 도입하는 것 .

네트워크에 네트워크 트래픽을 모니터링할 수 있는 태핑 (Tapping) 장비를 설치하고 , 네트워크 패킷 중 데이터베이스 질의문을 확인하여 이를 로그로 남김 .

Page 41: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

네트워크 장비의 로그 라우터나 스위치는 자체적으로 로그를 남기는 저장공간이 없음 . 각 네트워크 장비에서

생성되는 로그를 네트워크를 통해 로그 서버에 전송 .

해커가 어떤 네트워크 장비에 침투하더라도 자신의 흔적을 지우기가 쉽지 않음 .

Page 42: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

패치 마이크로소프트에서는 시스템의 보안 취약점을 확인하기 위한 MBSA(Microsoft

Baseline Security Analyzer) 와 같은 툴을 배포하고 있음 (http://www.microsoft.com/ technet/security/tools/mbsahome.mspx). MBSA 를 이용해 현재 윈도우의 취약점과 적용되어 있지 않은 패치 목록을 확인할 수 있음 .

Page 43: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

솔라리스의 패치 관련 사이트 (http://sunsolve.sun.com/show.do?target=patchpage)

Page 44: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

응용 프로그램의 보안 설정 응용 프로그램의 잘못된 설정이 공격자가 운영체제에 침투하는 경로를 제공하는 경우도

많기 때문 운영체제뿐만 아니라 응용 프로그램에 대한 보안 설정도 매우 중요 .

응용 프로그램의 실행 프로세스 권한 설정 공격자는 응용 프로그램의 취약점을 통해 해당 프로세스의 운영체제 권한을 얻는

것이가능 . 따라서 데이터베이스나 다른 응용 프로그램도 필요에 따라 프로세스의 실행 권한을 제한해야 함 .

특히 웹은 취약점이 많이 노출될 수 있어 , 윈도우에서는 IIS 에서 그 실행 프로세스 권한을 별도로 만들어 사용하고 유닉스에서는 nobody 와 같이 제한된 계정 권한을 사용해야 함 .

Page 45: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

응용 프로그램의 통한 운영체제의 접근 제한 응용 프로그램 중에는 해당 응용 프로그램을 통해 운영체제의 파일이나 명령을 실행시킬

수 있는 것이 있음 .

MS-SQL 의 xp_cmdshell 은 데이터베이스를 통해 운영체제의 명령을 실행하고 , 파일 등에 접근할 수 있음 .

응용 프로그램의 동작과 관련하여 운영체제에 접근할 수 있는 함수나 기능이 있으면 그 적절성을 검토해야 함 .

Page 46: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

응용 프로그램의 통한 운영체제의 정보 수집 제한 응용 프로그램이 운영체제에 직접적인 영향을 미치지 않아도 응용 프로그램의 특정 기능이

운영체제의 정보를 노출시키기도 함 . 유닉스에서는 이메일을 보낼 때 , 수신자가 있는 시스템의 sendmail 데몬에 해당 계정이

존재하는지 확인하기 위해 일반 계정은 vrfy(verify) 명령을 , 그룹은 expn(expansion) 명령을 시스템 내부적으로 사용 . 일반 사용자는 다음과 같이 Telnet 을 이용해 시스템에 존재하는 계정의 목록을 어느 정도 파악할 수 있음 .

이러한 응용 프로그램의 기능은 제한하는 것이 바람직함 .

Page 47: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

불필요한 서비스 및 악성 프로그램의 확인과 제거 응용 프로그램의 통한 운영체제의 정보 수집 제한

Page 48: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

현재 동작 중인 프로세스의 확인

• 시스템에 동작 중인 악성 프로그램을 확인하기 위해 현재 동작중인 프로세스를 확인하는 것도 매우 중요 .

• [Windows 작업 관리자 ] 창을 이용한 프로세스 확인

Page 49: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

현재 동작중인 프로세스의 확인

• 유닉스에서는 ps -ef 명령을 통해 시스템에서 운영 중인 프로세스를 확인

Page 50: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

열린 포트 확인 악성 프로그램이나 운영 중인 서비스는 열린 포트를 통해서도 확인할 수 있음 . 윈도우와

유닉스 모두 netstat -an 명령으로 확인이 가능 .

Page 51: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

악성 프로그램 탐지 툴 이용 잘 알려진 악성 프로그램은 대부분 백신 툴 등을 통해 탐지와 제거가 가능 . 하지만

리눅스나 유닉스에서는 이런 툴이 많이 부족하기 때문에 수동으로 해야 할 경우가 많음 .

무결성 검사 시스템에 어떤 변화가 일어나는지 테스트 .

MD5 해시 기법을 많이 사용 .

관리자는 주요 파일의 MD5 값을 주기적으로 수집하고 , 검사하여 변경되는 파일의 내역을 확인하여 , 변경하지 않거나 시스템 운영상 변할 일이 없는 파일이 변경된 것을 발견하면 이에 대한 조치를 할 수 있음 .

Page 52: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

4가지 인증 방법 당신이 알고 있는 것 (Something You Know): 계정과 패스워드를 통한 인증 당신이 가지고 있는 것 (Something You Have): 출입 카드 및 스마트 카드 등을 통한 인증 당신 모습 자체 (Something You Are): 생체 인식 당신이 위치해 있는 곳 (Somewhere You Are): 콜백 등 사용자 위치 정보를 사용한 인증

계정 관리의 주요 사항 관리자 권한 등을 소유한 계정의 적절성 검증 불필요한 계정의 존재 여부 검증 각 그룹별 권한의 적절성 검증

좋지 못한 패스워드 길이가 너무 짧거나 널 (Null) 인 패스워드 사전에 나오는 단어나 이들의 조합 키보드 자판의 일련 나열 사용자 계정 정보로 유추가 가능한 단어

세션 두 컴퓨터간의 활성화된 접속

Page 53: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

접근 제어 적용 순서① 주요 네트워크 서비스와 관리자 인터페이스 목록 파악

② 주요 네트워크 서비스별로 IP 를 통한 접근 제어 수행 TCP Wrapper 를 통한 접근 제어

윈도우에서 파일과 디렉토리에 대한 권한 규칙 NTFS 접근 권한은 누적된다 .

파일에 대한 접근 권한이 디렉토리에 대한 접근 권한보다 우선한다 .

'허용 '보다 '거부 '가 우선한다 .

Page 54: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

데이터베이스에서 DCL 을 이용한 권한 부여 구조

뷰 참조 테이블의 각 열에 대한 사용자 권한 설정을 간편하게 관리하기 위한 가상 테이블

AAA Authentication( 인증 ): 자신의 신원을 시스템에 증명하는 과정 Authorization( 인가 ): 인증이 수행된 객체에 대해 이미 설정된 권한 구성에서 객체가

요구하는 접근 권한 부여의 적절성을 확인하는 과정 Accounting: 접근에 성공한 객체에 대한 로그

Page 55: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

윈도우의 로그 종류

Page 56: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

유닉스의 로그 종류

Page 57: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

취약점 관리

패치 : 버퍼 오버플로우나 포맷 스트링과 같이 응용 프로그램 자체에 있는 취약점에 패치를 적용해 이를 제거한다 .

응용 프로그램 관리 : 응용 프로그램을 통해 시스템에 접근할 수 없도록 응용 프로그램을 통한 운영체제로의 접근 경로를 제거한다 . 그리고 응용 프로그램의 취약점을 통해 운영체제에 접근할 경우에도 영향력을 최소화하기 위해 응용 프로그램의 프로세스 권한을 낮게 부여한다 .

불필요한 서비스 및 악성 프로그램 탐지 : 시스템에 존재하는 불필요한 서비스나 악성 프로그램을 확인하기 위해 시스템의 서비스 포트 및 프로세스를 확인하고 무결성 검사를 수행한다 .

Page 58: 정보 보안 시스템 보안 최미정 강원대학교 컴퓨터과학전공

정보 보안 개론 9 장 끝

58