본문 바로가기
자격증/정보보안기사

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

by 겸손하게 빚진자로, 밝게 인사 2016. 4. 18.
728x90

□ 서버 관리자가 tail 명령어로 secure 로그를 실시간 모니터링 할 경우 명령


tail -f /var/log/secure



□ sticky bit

 - /tmp 파일은 여러 사용작 공유하는 디렉토리인데 이러한 디렉토리에서 

   파일의 소유자만 이 해당 파일을 삭제할 수 있도록 설정하는 것



□ umask


 - 새로 생성되는 파일과 디렉토리의 기본 퍼미션을 결정

 - 디렉토리의 경우 777에서, 파일은 666에서 umask 값을 빼주면 퍼미션이 된다.



□ pwconv 명령어

 - /etc/passwd 파일에서 두번째 필드의 암호화된 패스워드 부분을 /etc/shadow 파일로 저장시키는 명령

 - pwunconv 명령은 /etc/shadow 파일에 보관되었던 패스워드를 다시 /etc/passwd 파일에 저장한다.



□ POSIX (Portable Operating System Interface)

 - 컴퓨터를 사용하는 기업들이 기존의 프로그램을 다시 코딩하지 않고 서로 다른 제조사들의 시스템에서

   사용하기 위해 제조사 중립적인 특성을 위해 표준 시스템 인터페이스로 지정한 기준

 - IEEE 산하 P1003 기술 위원회에서 작성한 컴퓨터 운영체제 서비스의 표준 규격




□ init 명령어

 - 시스템 부팅 과정의 마지막에 수행되어 /etc/inittab 파일을 읽어 시스템의 Run Level을 결정



□ 부트매니저

 - 컴퓨터 부팅 시 설치된 여러 운영체제 중 어떤 것으로 부팅할지 선택할 수 있게 해줌

 - 리눅스에서는 LILO와 GRUB을 지원


 1. LILO(Linux LOader, 리눅스 로더)

  - x86용 리눅스에서 가장 많이 사용되었던 리눅스 로더

  - 하드의 MBR에 설치하여 작동하는 프로그램

  - LILO는 /etc/lilo.conf 파일로 설저오디며, 정보의 갱신은 /sbin/lilo 명령으로 수행


 2. GRUB

  - GNU 프로젝트의 부트로더

  - 대부분의 운영체제의 커널을 불러올 수 있으며, 인자를 넘겨 줄 수도 있음

  - GRand Unified Bootloader



□ 리눅스 시스템 부팅과정

 

1. ROM BIOS에서 지정된 부팅 드라이브로 부팅 시작

2. 부팅 드라이버의 첫번째 섹터인 부트 섹터를 읽어들임

3. 부팅 섹터의 부팅 프로그램인 부팅 로더 작동

4. 커널 이미지 적재

5. 루트 파일 시스템 마운트

6. 시스템 초기화 프로그램 작동



□ 강제 종료 명령


 - 특정한 프로세스가 쉽게 종료되지 않을 때 강제종료

 - kill -9 <프로세스ID>

 - 프로세스 강제 종료를 위해 SIGKILL시그널을 해당 프로세스에 전달해야 하는데

   SIGKILL 시그널은 9번 시그널임



□ PAM (Pluggable Authentication Module)

 - PAM 구성토큰

 1. type : PAM에게 이 모듈에 어떤 타입의 인증이 사용될 것인지를 알려줌

 2. account : 계정은 사용자가 서비스에 접근이 허용되었는지, 패스워드 기간만료 되었는지 결정

 3. auth :  생체 인증과 같은 정교한 방법을 통해서 결정

 4. password : 패스워드를 설정하거나 확인하는데 사용하는 모듈 

 5. session : 사용자가 인증받기 전에 또는 후에 사용되는 모둘 


- PAM 암호화 알고리즘 변경 시 수정해야 하는 파일

 /etc/pam.d/login, /etc/pam.d/passwd




□ 저널링(Journaling)

 - 리눅스 시스템에서 디스크에 쓰기 전 로그를 남겨 

   시스템에 비정상적인 종료 시에도 로그를 이용하여 빠르게 복구할 수 있는 기술 



□ 파일의 허가권한 바꾸기 : chmod 명령어 사용


 1. 파일 : -rwxrwxrwx인 test 파일에 Setuid를 설정하려면


   chmod 4777 test  또는 chmod u+s test



□ /etc/fstab

 - 파일 시스템 설정을 위한 파일

 - 파일시스템의 마운ㅌ와 관련된 내역과 옵션을 기술

 - mount -a 는 /etc/fstab에 들어있는 파일 시스템과 파티션 목록 중 noauto 옵션이 있는 항목만 

   제외하고 모두 마운트 함

※ mount 명령 : 보조기억장치에 설치된 파일 시스템을 UNIX 시스템이 인식하도록 특정 디렉토리를 

   논리적으로 연결시키는 명령, 반대 명령어는 umount

   mount 설정정보는 /etc/mtab에 저장됨



□ chattr(change attribute)

 - 리눅스 파일 시스템에서 파일의 숨을 속성을 변경하는 명령



□ usrquota 옵션

 - 디스크 Quota란 사용자의 디스크 사용량을 제한시키기 위해 사용하는 프로그램

 - 디스크 쿼터가 적용되어 있는 시스템의 /etc/fstab 파일에서 설정



□ vmstat 명령어

 - 시스템의 프로세스 정보, 메모리 사용량, IO상태, CPU사용률 등의 정보를 출력하는 명령



 - procs 

   . r : 실행 시간을 위해 기다리고 있는 프로세스 수

   . b : 계속 잠들어 있는 프로세스 수 

 - momory

   . swpd : 가상 메모리 사용량 (KB)

   . free : free 메모리 사용량 (KB)

   . buff : buffer 메모리 사용량 (kb)

   . cache : cache 메모리 사용량 (kb)

 - swap

   . si : 디스크에 swap in된 양 (kb)

   . so : 디스크에 swap out된 양 (kb) 

 - io

   . bi : 블록 디바이스에서 보낸 블록수(blocks/s)

   . bo : 블록 디바이스에서 받은 블록수(blocks/s)

 - system

   . in : 초당 발생한 인터럽트 수

   . cs : 초당 발생한 문맥 교환 개수

 - cpu

   . us : 사용자에 의해 사용된 CPU 시간

   . sy : 시스템에 의해 사용된 CPU 시간

   . id : idle 시간



□ TCPwapper 서비스에 대한 /etc/initd.conf 파일구조


- 정의 : 

  TCPwrapper는 inetd 데몬과 클라이언트 사이에서 미리 정의되어 있는 서비스들에 대한 

  접근통제 목록을 이용하여 서비스의 허용 및 거부, 로그를 기록할 수 있는 보안강화 도구

- 특장점 : 

  존재하는 SW나 설정파일을 바꿀 필요가 없고, C/S 응용 프로그램 사이의 실질적인 

  통신에 부하를 주지 않음

- 원리 : 

   hosts.allow와 hosts.deny를 통해 들어오는 패킷의 출발지 IP와 접근통제목록의 조건을 비교하여

   서비스의 허용 및 거부 수행 (허용정책 : /etc/hosts.allow, 차단정책 : /etc/hosts.deny)

  


 구분

 서비스 

 소켓타입 

 프로토콜

 플래그 

 사용자 

 실행경로 

 실행인수

 사용전

 Telnet  

 stream

 TCP

 nowait 

 root 

 /usr/sbin/in.telnetd 

 in.telnetd 

 사용후

 Telnet 

 stream 

 TCP 

 nowait 

 root 

 /usr/sbin/tcpd 

 in.telnetd


- TCPwapper를 사용하려면 실행 경로를 tcpd로 설정된다.




□ bind shell

 - 원격지의 공격자가 접속하도록 통신포트를 열어놓고 있는 백도어를 의미함




□ 로그데몬

 - /etc/syslog.conf : 시스템 로그 데몬의 환경 설정 파일

 - /var/log/messages : 시스템 로그

 - logrotate 프로그램 : 로그파일을 효율적으로 관리하기 위해 로그 파일을 순환시키며, 

   지정한 용량만큼 찼을 때 다른 파일로 순환시킴



□ dmesg 명령어

 - 부팅 과정에 화면에 출력되었던 메세지를 다시 출력해주는 명령어

   부팅 과정 중 화면 메세지는 /var/log/dmesg에 저장됨

반응형