시스템 관리
서버 관리자의 업무¶
시스템 시작/종료¶
사용자 계정 관리¶
- 원격 접근권한 제거
/etc/passwd
파일에서/bin/bash
와 같은 셸 삭제- 계정 사용기간 설정
/etc/shadow
파일에서 사용기간 또는 만료일 설정
자원 관리¶
네트워크 관리¶
명령어 | 설명 |
---|---|
ifconfig | 통신 디바이스(NIC) 상태 |
netstat -an | 현 시스템에서 사용되는 통신 서비스의 상태 |
top | 시스템 자원(CPU, memory 등)의 사용현황 |
ps -elf(-aux) | 현 시스템에서 수행 중인 프로그램과 데몬 상태 |
snoop | 패킷을 캡처하여 분석 |
nslookup | 도메인에 대한 IP 정보 및 도메인 네임과 관련된 여러 검색 |
inetd | 네트워크 슈퍼데몬인 inetd를 실행 |
윈도우 로그¶
이벤트(Event)
라는 중앙 집권화된 로그를 수집하여 저장- 관리는 편하나 보안수준이 낮음
이벤트 로그 종류¶
- 응용 프로그램 로그(AppEvent.Evt)
- 응용 프로그램이 기록한 다양한 이벤트
- 소프트웨어 개발자에 의해 결정
- 보안 로그(SecEvent.Evt)
- 로그인 시도, 리소스 사용에 관련된 이벤트 기록
- 시스템 로그(SysEvent.Evt)
- Windows 시스템 구성요소가 기록하는 이벤트
- 구성요소의 오류를 이벤트에 기록
- 그 외
- 디렉터리 서비스 로그, 파일 복제 서비스 로그,DNS 서버 로그 등
이벤트 로그 파일은 %Windows%\system32\config
폴더에 위치
바이너리 형식이므로 별도의 프로그램 필요
감사 정책¶
어떤 로그를 남길지를 정의한 규칙
설정 경로: [제어판]-[관리 도구]-[로컬 보안 정책]-[로컬 정책]-[감사 정책]
이벤트 로그 | 설명 |
---|---|
개체 액세스 감사 | 객체(특정 파일이나 디렉터리, 프린터 등)에 대한 접근 시도, 속성 변경 등 로그 |
계정 관리 감사 | 사용자 관련 설정 변경 로그를 탐지 |
계정 로그인 이벤트 감사 | 도메인 계정의 로그인에 대한 사항을 로그에 남김 |
권한 사용 감사 | 권한 설정 변경이나 관리자 권한이 필요한 작업을 수행할 때 로그에 남김 |
로그인 이벤트 감사 | 로컬 계정 접근 시 생성되는 이벤트를 감사 |
디렉터리 서비스 액세스 감사 | 액티브 디렉터리 개체에 접근하는 사용자에 대한 감사 로그 |
정책 변경 감사 | 사용자 권한 할당 정책, 감사 정책 또는 신뢰 정책의 변경과 관련된 사항을 로그에 남김 |
프로세스 추적 감사 | 프로세스를 시작하거나 중지할 때 해당 이벤트 발생 |
시스템 이벤트 감사 | 시스템의 시동과 종료, 보안 로그 삭제 등 시스템의 주요한 사항에 대한 이벤트를 남김 |
유닉스/리눅스 로그¶
- 로그를
여러 곳
에 저장 - 모두 파악하고 관리하기 어려움
- 다양한 로그들의 분석으로 공격자 추적 가능
로그 종류¶
로그 | 설명 |
---|---|
utmp | 현재 시스템에 로그인한 사용자의 상태를 출력 |
wtmp | 사용자의 로그인/로그아웃, 시스템 종료/부팅 정보를 저장 |
sulog | su 명령어(계정 변경)에 대한 로그. 텍스트 형태로 저장 |
lastlog | 각 사용자의 최근(마지막) 로그인 시각 |
acct/pacct | 시스템에 로그인한 모든 사용자가 수행한 프로그램에 대한 정보를 저장 |
history | 사용자별로 실행한 명령을 기록하는 로그. 텍스트 형태로 저장 |
btmp(Linux) | 실패한 로그인 시도에 대한 로그 |
loginlog(Unix) | 5회 이상 실패한 로그인 시도에 대한 로그 |
dmesg | 부팅될 때 출력되는 모든 메시지를 기록 |
secure | 원격 로그인 정보를 기록, TCP_WRAPPER(xinetd)의 접속제어에 관한 로그 |
messages | 시스템 운영에 대한 전반적인 메시지를 저장 |
시스템 로그¶
- 유닉스에서는 syslog에 의해 로그를 생성하고 관리
/etc/syslog.conf
- syslogd
- OS에 의해 자동 실행
- 어떤 로그를 어디에 남길지 결정
- 최근 리눅스는 기존 syslog를 개선한 rsyslog를 사용
설정 파일¶
facility
에 대하여 priority
의 경우에 해당하는 상황이 발생 시 logfile-location
파일에 기록
항목 | 도메인 |
---|---|
facility | *(모든 서비스), auth, authpriv(xinetd, telnet 등), cron, ftp, kern, lpr, mail, ntp, security, syslog |
priority | Emergency, Alert, Critical, Error, Warning, Notice, Info, Debug |
action | 로그를 어디에 남길지 결정 |
logfile-location | 터미널/콘솔(/dev/console), 원격 로그 서버(@호스트주소), user(지정한 사용자 스크린), *(현재 로그인된 사용자) |
웹 서버 로그¶
IIS 웹 서버 로그¶
- 기본 W3C 형식
- 주요 필드
- date, time : 사용자가 페이지에 접속한 날짜와 시간
- c-ip: 웹 페이지에 접속한 사용자 IP
- cs-username : 웹 페이지에 접속한 사용자 계정
- s-computername : 웹 서버 이름
- s-ip,s-port: 웹 서버 IP, 웹 서버 포트
- cs-method: HTTP 메소드
- cs-url-stem: 요청 페이지
- cs-url-query: 요청 파라미터
- sc-status : 응답 코드
Apache 웹 서버 로그¶
- access log: 클라이언트의 요청에 의해 웹 서버가 응답한 내용에 대한 로그
- error log: 클라이언트의 요청에 의해 웹 서버에 오류가 발생한 내용에 대한 로그
크래킹 S/W¶
크래킹이란 악의적인 목적을 가지고 시스템에 침임하는 행위이다.
- John the Ripper: 패스워드 점검도구로 유명한 프로그램
- pwdump: 윈도우에서 패스워드를 덤프하기 위한 프로그램
- L0phtCrack: 패스워드 취약점 점검도구
- ipccrack: 패스워드를 원격지에서 추측하여 취약점을 점검하는 프로그램
- chntpw: 물리적으로 접근이 가능한 시스템에서 패스워드를 리셋시키는 프로그램
- ERD Commander: 윈도우에서 패스워드를 복구하는 프로그램
- 키로거(Keylogger): 키보드로 입력한 정보를 로그로 남겨 실기간으로/정해진 시간에 공격자에게 전송
서버보안용 S/W¶
- SATAN
- 시스템 보안상의 약점을 찾아 보완할 수 있는 네트워크 분석용 보안 관리 도구
- SARA (UNIX)
- SATAN 기반
- HTML 형식의 보고서 기능
- SAINT (UNIX)
- HTML 형식의 보고서 기능
- 원격에서 취약점을 점검하는 기능 포함
- COPS (UNIX)
- 시스템 내부에 존재하는 취약점 점검
- 취약한 PW를 점검
- Nessus (대부분 OS)
- 클라이언트-서버 구조
- 클라이언트의 취약점을 점검하는 기능
- GUI 인터페이스
- 다양한 포맷으로 결과 저장
- nmap
- 포트 스캐닝 도구
무결성 점검 도구¶
정상적인 상태의 디렉터리 및 파일 정보를 백업해두어 이전 정보와 현재 정보를 비교
- tripwire, MD5, Fcheck, AIDE 등
스캔 탐지 도구¶
- mscan
- 메인 전체를 스캔하여 최근 많이 이용되는 주요 취약점을 한 번에 스캔
- sscan
- 네트워크를 통해 취약점 점검을 수행할 수 있는 도구
- portsentry
- 실시간으로 포트 스캔을 탐지하고 대응하기 위한 프로그램
- 공격 호스트를 경유하여 오는 모든 트래픽을 자동 재구성하는 기능
침입탐지 및 방화벽¶
- Snort
- 실시간 트래픽 분석, IP 네트워크에서의 패킷 처리를 담당하는 IDS
- 버퍼오버플로우, stelth 포트 스캔, CGI 공격, SMB 프로브, OS 핑거프린팅 등 공격 감지
- IPchain / IPtable
- 패킷 필터링 방화벽
- 인바운드, 아웃바운드 규칙 설정 가능
Last update :
4 juin 2023
Created : 30 mai 2020
Created : 30 mai 2020