운영체제의 설정과 취약점

48
운운운운운 운운운 운운운 20092224 운운운 20072248 운운운

description

운영체제의 설정과 취약점. 20092224 윤영종 20072248 조태현. 목 차. 운영체제의 계정 확인 운영체제의 취약점 윈도우 시스템 보안 설정 유닉스 시스템 보안 설정 Q & A. 운영체제의 계정확인. 윈도우 관리자 권한을 가진 계정을 administrator 라고 칭하는데 이는 시스템에 가장 기본으로 설치되는 계정 유닉스 기본 관리자 계정으로 root 존재. 유닉스 계정 목록 / 그룹 확인 /etc/passwd 파일 /etc/group. 운영체제의 취약점. 윈도우 계열. - PowerPoint PPT Presentation

Transcript of 운영체제의 설정과 취약점

Page 1: 운영체제의 설정과 취약점

운영체제의 설정과 취약점

20092224 윤영종 20072248 조태현

Page 2: 운영체제의 설정과 취약점

목 차

운영체제의 계정 확인

운영체제의 취약점

윈도우 시스템 보안 설정

유닉스 시스템 보안 설정

Q & A

Page 3: 운영체제의 설정과 취약점

운영체제의 계정확인

윈도우 관리자 권한을 가진 계정을 administrator 라고 칭하는데

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

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

Page 4: 운영체제의 설정과 취약점

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

/etc/group

Page 5: 운영체제의 설정과 취약점

운영체제의 취약점

윈도우 계열

점검항목 설명 점검 방법

계정 및 패스워드 관리

취약점

기본 계정 , 유추 가능한 패스워드 사용 취약점이며 ,

권한을 탈취하는 문제점 발생

관리자 계정 및 주요 계정의 소유자 및 권한 설정에 대한 관리와 계정의 만료기간 ,

계정 잠금 , 비밀번호의 복잡도 , 불필요 계정의 삭제 /비활성화 등을 각 기관의 보안정책에 맞추어 설정을 점검

접근제어 설정

취약점

사용자 권한에 대한 관리 취약점 이며 , 비 인가된 자원접근 , 오용 등을 문제점 발생

personal Firewall pro 를 이용한 비정상․원격 접근 가능한 취약성 점검

응용서비스

취약점

응용서비스에 대해 새롭게 발견된 취약점이며 , 불법 권한획득 등 문제점 발생

정기적인 윈도우 보안패치 수행

보안프로그램

미운영

백신 , 방화벽 등의 보안프로그램 미 운영할 경우 ,

악성코드 감염 등 문제점 발생백신의 설치 및 정기적인 업데이트 등의 보안프로그램 운영 여부 점검

Page 6: 운영체제의 설정과 취약점

유닉스 계열

점검항목 설명 점검 방법

계정 및 패스워드

관리 취약점

기본 계정 , 유추 가능한 패스워드 사용 취약점이며 ,

권한을 탈취하는 문제점 발생

root 계 정 외 UID 가 0 인 계 정 존재여부 확인불필요 계정 존재여부 (default 계정 등 ) 패스워드 파일 권한 설정 등의 점검을 통하여 일반사용자의 불필요한 권한 보유 점검

접근제어

설정 취약점

사용자 권한에 대한 관리 취약점 이며 , 비인가된 자원접근 , 오용 등을 문제점 발생

일반 사용자의 SU 명령 제한 확인root 계 정 SSH, telnet 접 속 제 한 확인원격 접근 가능한 취약성 점검

서비스

환경설정

취약점

불필요한 서비스가 운영될 경우 외부의 비인가 접근시도 및 정보 노출 등 문제점 발생

서비스 환경설정 파일 권한 설정 제한 확인기 타 서 비 스 설 정 확 인 ( 서 비 스 에 불필요한 서비스 port 공개 등 )

Default( 기본 설치값 ) 서비스 데몬 등의 및 환경 설정에 대한 취약성 점검

Page 7: 운영체제의 설정과 취약점

윈도우 시스템 보안 설정

계정에 대한 보안 설정

로컬 보안 설정

데몬 관리

접근 제어

파일 및 디렉토리 관리

Page 8: 운영체제의 설정과 취약점

• 패스워드 관리 : 주기적으로 관리하는 시스템의 패스워드를 크래킹 하여 취약한 패스워드를 가진 계정을 체크

• 불필요한 계정삭제

• 관리자 계정 바꾸기 : 윈도우의 기본 계정은 삭제가 불가능 하므로 Administrator

계정 을 다른 이름으로 바꿔서 사용

• Guest 계정의 사용안함

계정에 대한 보안 설정

Page 9: 운영체제의 설정과 취약점

Administrator & Guest 계정의 사용 시작 → 설정 → 제어판 → 관리도구 → 로컬 보안 설정 → 보안 옵션

Page 10: 운영체제의 설정과 취약점

• 네트워크에서 이 컴퓨터 엑세스 / 거부 : 윈도우의 대부분의 설정은 ‘거부’가 우선권을 갖는다 .

네트워 크에서 이컴퓨터 엑세스 거부를 설정할 경우에는 원격에서 접속이 불가능하다 .

로컬 보안 설정

Page 11: 운영체제의 설정과 취약점

로컬 로그인 / 거부 ‘ 로컬 로그인 거부’ 사용할 경우에는 원격에서는 접속이 가능 하지만 시스템 앞에서는 로그인할 수 없다 .

시스템 종료 / 원격에서 강제로 시스템 종료 시스템 종료는 기본적으로 Administrators, Backup

Operators,

Power Users 그룹만이 로컬에서 시스템을 종료시킬 수 있다 .

원격에서 강제로 시스템 종료는 Administrators 그룹만이 가능

로그인 스크린에 마지막 사용자 이름 표시 안함 로그인 스크린에 마지막 사용자 이름 표시안함 → 사용

Page 12: 운영체제의 설정과 취약점

로그인 하지 않고 시스템 종료 허용 로그인 시 ‘옵션’을 누르면 ‘시스템 종료’ 버튼이 활성화 된다 기본적으로 금지 하는것이 좋다 .

보안 감사를 로그 할 수 없는 경우 즉시 시스템 종료 감사 로그가 꽉 차거나 , 로깅을 정상적으로 시행할 수 없을 때 시스템을 재부팅하게 하는 설정

Administrator 계정 이름 바꾸기 공격자가 윈도우의 기본 관리자 계정을 추측하여 패스워드 크 래킹 공격을 시도할 수 있으므로 기본 관리자 계정의 이름을 바꾼다 .

Page 13: 운영체제의 설정과 취약점

데몬 관리

데몬이란 ?

시스템의 사용자 인터페이스에는 나타나지 않지만 서비스가 요청되었을 때 , 이에 반응할 수 있도록 항상 실행되어 있는 프로그램

데몬의 종류에는 FTP, SMTP, HTTP, HTTPS 등이 있고 , 데몬

보안을 설정 함으로서 시스템 보안을 향상시킬 수 있다

Page 14: 운영체제의 설정과 취약점

데몬 관리 (FTP)• FTP 의 취약점 중 가장 일반적인 취약점을 익명계정의

로그인 허용이다 . 윈도우 시스템에서는 익명 계정이 기본적으로

허용 되어 있는데 , 이런 익명 계정에 의한 FTP 로그인을

금지한다 .

• 동시 접속자 수 FTP 에 접속할 필요가 있는 세션 수 이상의 접속이 이루어 지 지 않도록 설정한다 .

Page 15: 운영체제의 설정과 취약점

데몬 관리 (SMTP)• SMTP 접근제어 설정

접근제어 설정은 FTP서비스와

마찬가지로 특정 IP 와 네트워크에

대한 설정 가능

• SMTP 릴레이 설정

자신에게 전달되는 메일을 다른

메일 서버로 전달해주는 기능

Page 16: 운영체제의 설정과 취약점

데몬 관리 (HTTP)

• 기본 가상 디렉토리 변경 : 기본 웹 가상 디렉토리인 c:\inetpub\wwwroot 를 다른

임의의 디렉토리로 변경 필요

• 디렉토리 보안 : 익명 엑세스와 인증 제어 , IP 주소 및 도메인 이름 제한 ,

보안 통신에 대한 설정

Page 17: 운영체제의 설정과 취약점

데몬 관리 (HTTPS)

• HTTPS 는 443 번 포트를 사용해서 운영되며 , 암호화된 웹 접속

할 수 있게 한다 .

Step 1. 인증 서버의 설치 Step 2. 웹 서버에서 인증 서버로 인증서 발급 요청 Step 3. 인증 서버에서 웹 서버의 인증서 요청 승인 Step 4. 인증 서버에서 승인받은 인증서를 웹 서버에

설치 Step 5. 클라이언트 웹 브라우저 인증서 발급 요청 Step 6. 인증 서버에서 클라이언트 웹 브라우저 인증서

승인 Step 7. 클라이언트에 승인받은 인증서 설치 Step 8. 클라이언트로부터 웹 서버로 HTTPS 를 이용한

접속

Page 18: 운영체제의 설정과 취약점

데몬 관리 (SNMP)• SNMP 는 시스템의 여러 정보를 원격에서 수집할 수 있도록 한다

Page 19: 운영체제의 설정과 취약점

데몬 관리 ( 패치 )• Microsoft 사이트에서 해당 패치를 검색하여 업데이트 한다

Page 20: 운영체제의 설정과 취약점

접근 제어 접근 제어 (Sygate)• Sygate 를 이용해 현재 동작중인 응용 프로그램 확인

Page 21: 운영체제의 설정과 취약점

• Sygate 를 이용한 네트워크 트래픽 확인

Page 22: 운영체제의 설정과 취약점

• Sygate 사이트에서의 원격 취약점 분석

Page 23: 운영체제의 설정과 취약점

• Sygate 방화벽에서의 접근제어 설정

Page 24: 운영체제의 설정과 취약점

파일 및 디렉토리 관리

모든 권한 : 디렉토리에 대한 접근 권한과 소유권을 변경 할 수 있으며 , 서브 폴더와 파일을 삭제할 수 있다 .

수정 : 폴더를 삭제할 수 있으며 , 수정의 권한이 있으면 , ‘읽기 및 실행’ 그리고 ‘쓰기’ 권한이 주어진 것과 같다 .

읽기 및 실행 : 읽기를 수행할 수 있으며 , 디렉토리나 파일을 이동할 수 있다 .

폴더 내용 보기 : 디렉토리 내의 파일이나 서브 디렉토리의 이름을 볼 수 있다 .

읽기 : 디렉토리 안의 내용의 읽기만 가능하다 .

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

Page 25: 운영체제의 설정과 취약점

EFS 의 적용

Page 26: 운영체제의 설정과 취약점

유닉스 시스템 보안 설정

계정 관리

서비스 관리

패치 관리

접근 제어

파일 및 디렉토리 관리

Page 27: 운영체제의 설정과 취약점

계정관리

• 취약한 패스워드의 점검• 사용하지 않는 계정의 제거• 중복된 root 계정의 존재 여부

grep ‘:0:’ /etc/passwd

Page 28: 운영체제의 설정과 취약점

서비스 관리 – Inetd 데몬

• /etc/services

Page 29: 운영체제의 설정과 취약점

서비스 관리 – FTP ( 포트 21)• 주요 보안 이슈는 원격 버퍼 오버플로우 공격과 포맷 스트링

공격 , 그리고 anonymous 로그인과 root 계정의 로그인 허용이 있다 .

• FTP 의 경우 해당 시스템에 계정이 있으면 누구나 로그인이 가능하므로 /etc/ftpusers 파일을 통해서 계정을 제한해주어야 함

Page 30: 운영체제의 설정과 취약점

서비스 관리 – SSH( 포트 22) secure CRT 프로그램

• SSH 는 암호화된 Telnet 서비스 SSH1 은 접속과 인증을 위해서 RSA(Rivest-Shamir-Adleman) 를 이용하며 , 통신의 암호화를 위해서는 Blowfish, DES, 3DES, RC4 및 IDEA등을 사용함

Page 31: 운영체제의 설정과 취약점

서비스 관리 – Telnet ( 포트 23)• 평문 전송으로 암호화 하지 않은 통신으로 보안에 매우

취약하므로 가능하면 사용하지 않는 것이 제일 좋지만 굳이 사용하려고 한다면 최소한의 보안 설정으로 관리자에 대한 로그인 제한을 두는 것이 좋다 .

• 관리자 원격 로그인 제한 /etc/default/login

• 로그인시 경고문 출력 /etc/issue

Page 32: 운영체제의 설정과 취약점

서비스 관리 – SMTP ( 포트 25)• Sendmail 에 대한 가장 일반적인 보안 이슈는 원격

버퍼오버플로우나 포맷스트링 그리고 , EXPN 과 VRFY 명령의 실행여부다 .

• telnet 192.168.68.5.25

Expn root

Vrfy wishfree

Page 33: 운영체제의 설정과 취약점

서비스 관리

• SMTP – Expn, Vrfy 명령 금지 설정• Vi /etc/mail/sendmail.cf

Page 34: 운영체제의 설정과 취약점

서비스 설정 – TFTP ( 포트 69)

• FTP 를 이용해서 접속하고자 할 때 , Anonymous 계정이 존재하는 경우를 제외하면 계정과 패스워드를 입력해야만 접속할 수 있다 . 그러나 TFTP 의 경우에는 이러한 인증 과정이 전혀 없다 . TFTP 를 이용하는데 계정과 패스워드는 필요 없다 . 따라서 TFTP 데몬은 운영하지 않는 것이 최상이며 , 운영하고자 할 경우에는 – s(secure) 옵션을 주어 실행한다 .

Page 35: 운영체제의 설정과 취약점

서비스 관리 – SNMP( 포트 121)

SNMP 의 중지• SNMP 는 다른 서비스와는 달리 inetd 데몬에 의해서

운영되는 데몬이 아니다 . Standalone 데몬이라는 뜻이다 . 따라서 이 SNMP 를 중지시켜주기 위해서는 기본 부팅 설정인 /etc/rc3.d 에서 이를 제거해주어야 한다 . 제거할 때는 나중에 다시 동작시킬 수 있도록 backup 과 같은 디렉토리로 옮겨주자 .

• Mv /etc/rc3.d/S76snmpx /etc/rc4.d/backup/S76snmpdx

Page 36: 운영체제의 설정과 취약점

서비스 관리 – Lockd( 포트 4045)

• 하나의 클라이언트가 시스템 자원에 대해 자원을 공유할 때 파일을 여는 동안 다른 클라이언트가 중복 변경을 행하지 않도록 파일을 잠그는 데몬이다 .

이 데몬은 standalone 데몬으로서 SNMP 를 정지 시켜주었을 때와 마찬가지 방법을 사용한다 .

Page 37: 운영체제의 설정과 취약점

서비스 관리 – X11 : XDMCP ( 포트 6000)

• XDMCP 는 원격에서 GUI 환경으로 시스템을 관리하기 위한 프로토콜이다 . 윈도우의 터미널 서비스와 비슷하다고 생각하면 될 것 이다 . XDMCP 를 이용하기 위해서는 윈도우에서

Xmanager 라는 툴이 필요하다 .

Page 38: 운영체제의 설정과 취약점

서비스 관리 – X11 : XDMCP

• Xmanager 를 이용한 원격 시스템 접근 후 로그인

Page 39: 운영체제의 설정과 취약점

패치 관리 - 래드햇

• 보안패치 사이트 정보 - http://www.redhat.com/apps/support/errata

Page 40: 운영체제의 설정과 취약점

패치관리 – 솔라리스• Sun 사이트에서 적절한 패치 정보 및 패치 획득

Page 41: 운영체제의 설정과 취약점

접근 제어 – TCPWrapper• TCPWrapper 동작 원리

TCPWrapper 가 설치되면 , inetd 데몬은 연결을 TCPWrapper 의 데몬인 tcpd 데몬에 넘겨준다 . tcpd 데몬은 접속을 요구한 클라이언트가 적절한 접근 권한이 있는 지를 확인하고 , 해당 데몬에 연결을 넘겨준다 . 이때 연결에 대한 로깅도 실시한다 .

TCPWrapper 는 모든 프로토콜에 대한 접근 제어를 할 수 있는 것은 아니다 . inetd 데몬이 관리하지 않는 standalone 데몬과 같은 경우는 inetd 데몬이 통제할 수 없으며 , TCP 프로토콜 외에 일부 프로토콜에 대해서만 통제가 가능하다 .

Page 42: 운영체제의 설정과 취약점

접근 제어 (TCPWrapper) 적용

• 설정을 변경한 후에는 이를 적용하기 위해서 inetd 데몬을 재시작 해야 한다 .

/usr/sfw/sbin/tcpd

Page 43: 운영체제의 설정과 취약점

접근 제어 (TCPWrapper) 접근 제어

• 접근 제어의 설정 - /etc/host.deny

• 접근 제어의 설정 - /etc/hosts.allow

Page 44: 운영체제의 설정과 취약점

접근 제어 (TCPWrapper) 규칙검사

/usr/local/bin/tcpdchk

 /usr/sfw/sbin/tcpdmatch in.telnetd 192.168.68.3

Page 45: 운영체제의 설정과 취약점

접근 제어의 규칙 설정 방법

• ALL : 192.168.68.3, 192.168.68.4 EXCEPT 192.168.68.5

모든 데몬에 대해 , 192.168.68.3 과 192.168.68.4 에 대한 접 근을 허락해주고 , 192.168.68.5 는 금지한다 .

• in.ftpd : 192.168.68.0/255.255.255.0

192.168.68.*** 네트워크에 해당하는 시스템이 FTP 에 접속하는 것을 허락한다 .

• in.telentd : .co.kr

도메인 이름이 co.kr 로 끝나는 시스템으로부터의 telnet 접근을 허락한다 .

Page 46: 운영체제의 설정과 취약점

파일 및 디렉토리 권한

• 각 디렉토리 및 파일 별 적절한 권한 설정 /etc 접근 권한 751 (d rwx r-x --x) /bin 접근 권한 771 (d rwx rwx --x) /usr/bin 접근 권한 751 (d rwx r-x --x) /sbin 접근 권한 771 (d rwx rwx --x) - rw- r-- r—

ⓐ ⓑ ⓒ ⓓ

ⓐ 파일 및 디렉토리의 종류 . - 표시는 일반 파일을 , d 표시는 디렉토리를 나타냄 . ⓑ 파일 및 디렉토리 소유자의 권한 . ⓒ 파일 및 디렉토리 그룹의 권한 . ⓓ 해당 파일 및 디렉토리의 소유자도 그룹도 아닌 제 3 의 사용자에 대한 권한 .

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

Page 47: 운영체제의 설정과 취약점

파일 및 디렉토리 관리

/etc/inetd.conf 접근 권한 600 (- rw- --- ---)

시스템이 제공하는 서비스에 대한 정보를 담고 있다 . 관리자 이외에는 접근 권한이 없도록 설정한다 . 솔라리스에서 기본

권한은 777 이므로 반드시 변경한다 .

Page 48: 운영체제의 설정과 취약점

Q & A