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

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

Embed Size (px)

DESCRIPTION

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

Citation preview

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