정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56...

56
시스템 해킹과 보안 침해사고와 로그

Upload: others

Post on 04-Mar-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

시스템 해킹과 보안

침해사고와 로그

Page 2: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

2/56

Contents

01 침해사고가 발생할 때 대응 절차

02 로그 관련 기본 개념

03 윈도우 시스템 로그 분석과 설정

04 리눅스 로그 분석과 설정

학습목표

해커가 침입했을 때 대응하는 절차를 알아본다.

운영체제별 증거를 보관할 수 있다.

로그의 중요성과 역할을 이해할 수 있다.

운영체제별 로그 종류와 용도를 이해할 수 있다.

운영에 적절한 로그 정책을 수립할 수 있다.

적절한 로그 정책을 적용할 수 있다.

로그를 분석하고 이해할 수 있다.

Page 3: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

3/56

침해사고가 발생할 때 대응 절차

해킹 사고 대응 절차

• 메모리 덤프

- 침투했다면 메모리 덤프한 후 이를 CD-ROM등 다시 쓰기 불가능한 백업 매체에 저장,

- 이유는 로그의 위조/변조가 너무 쉬워 법적 효력이 거의 없기 때문

- 증거물로 사용할 수 있도록 위조/변조가 불가능한 CD-ROM에 저장

• 해커의 접속 차단

- 메모리 덤프 수행 후 현재 접속한 해커의 접속 끊기

- 방화벽이나 TCPWrapper같은 접근 제어 이용, 해커의 셸 프로세스 확인하여 종료

• 시스템 이미지 확보

- 해커의 접속 끊은 후 시스템 이미지를 CD-ROM같이 수정이 불가능한 매체에 다시 저장

- 2개를 만들어 하나는 법적 증거물 제출용, 다른 하나는 침입 추적(Forensic)용으로 사용

• 운영자에게 통보

- 시스템 이미지를 저장하는 동안 관리자는 자신의 상위 직급 관리자나 운영자에게 보고

• 침입자 추적

- 공격 대상이 되었던 시스템 이미지 이용 CD-ROM으로 똑같은 시스템 만들어 침입자 추적

Page 4: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

4/56

침해사고가 발생할 때 대응 절차

• 시스템 복구 과정에서는 우선 침입 상황을 파악한 뒤 다음 사항을 살펴본다.

- 시스템에 설치된 응용 프로그램의 변조 여부

- 시스템 설정 파일의 변조 여부

- 데이터의 삭제 및 변조 여부

- 운영 중인 다른 시스템에 침투했는지 여부

• 침입 후 대응 및 시스템 복구

- 마지막으로 백업 장치 이용 해킹으로 손상된 부분 복구, 법적 절차에 따라 해커 처벌

Page 5: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

5/56

실습 12-1 윈도우 시스템 증거 보존하기

FTK Imager 실행하기

FTK Imager는 Accessdata 사이트에서 무료로 다운로드할 수 있다. 다운로드한 FTK

Imager는 네트워크 공유 또는 USB 외장 하드 등에 저장하여 기존 시스템 데이터에

최소한으로 영향을 주도록한다.

그림 12-1 FTK Imager, [File] 메뉴에서 실행 항목 확인

1

Page 6: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

6/56

실습 12-1 윈도우 시스템 증거 보존하기

메모리 덤프하기

FTK Imager를 이용한 메모리 덤프는 [File]-[Capture Memory] 메뉴를 활용

그림 12-2 FTK Imager를 이용한 메모리 덤프

2

Page 7: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

7/56

실습 12-1 윈도우 시스템 증거 보존하기

pagefile도 메모리 덤프에 포함할지 여부를 선택할 수 있고,

Accessdata의 데이터 포맷인 AD1로 메모리 덤프를 저장.

그림 12-3 Volatilty를 이용한 메모리 덤프 분석 예

Page 8: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

8/56

실습 12-1 윈도우 시스템 증거 보존하기

시스템 이미지 확보하기

그림 12-4 이미지 획득 타입 설정 그림 12-5 이미지 획득 대상 설정

3

Page 9: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

9/56

실습 12-1 윈도우 시스템 증거 보존하기

Physical Drive는 물리적인 하드 디스크를 구분 단위로 하고, Logical Drive는 흔히 C, D드라이브처럼 사용자가 이용하는 논리적인 드라이브를 구분 단위로 한다.

이미지 획득 대상의 타입을 Physical Drive로 선택한 후 [그림 12-5]에서는 이미지를 획득할

물리 디스크를 선택한다.

물리 디스크를 선택하면 [그림 12-6]과 같은 이미지 생성 창을 확인할 수 있다. <Add> 버튼을

누르면 [그림 12-7]과 같이 생성하는 이미지 타입을 선택할 수 있다.

그림 12-6 이미지 생성 창 그림 12-7 이미지 타입 선택

Page 10: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

10/56

실습 12-1 윈도우 시스템 증거 보존하기

Raw (dd)는 디스크를 비트 단위 그대로 파일 형태로 바꾸어 저장한다.

이외에 SMART, E01, AFF는 암호화와 압축을 지원하는 디스크 이미지이다.

가장 일반적으로 사용하는 포맷은 E01로 포렌식의 대표적인 툴인 EnCase가 사용하는 이미지 포맷이다. 이미지 타입을 선택한 후에는 이미지 관련 정보와 이미지 파일 경로, 파일 이름,

디스크 정보를 몇 MB 파일로 나누어 저장할지, 압축 수준은 어느 수준으로 할지 설정한다.

그림 12-8 이미지 관련 정보 입력 그림 12-9

이미지 파일 관련 설정

그림 12-10 이미지 파일 생성

Page 11: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

11/56

실습 12-1 윈도우 시스템 증거 보존하기

이미지를 확보한 후에는 [그림 12-6]에서 ‘Verify images after they are created’ 체크 여부에 따라 다음과 같은 이미지의 해시 검증 창을 확인할 수 있다.

그림 12-11 이미지 파일

해시 값

그림 12-12 이미지 파일 확인

Page 12: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

12/56

실습 12-1 윈도우 시스템 증거 보존하기

획득된 이미지는 EnCase 나 FTK 등 포렌식 툴을 사용하여 분석할 수 있고, VMWare로 부팅하는 것도 가능하다. FTK Imager 로 파일 내용을 살펴볼 수도 있다.

[File ]-[Add Evidence Item ]이나 [Image Mounting ] 메뉴를 선택하면 각각 탐색기 형태로

보거나 다른 논리적인 디스크로 마운트시켜 파일 내용을 확인할 수 있다.

그림 12-13 이미지 파일 해시 값 확인

그림 12-14 이미지 파일 마운트

Page 13: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

13/56

로그 관련 기본 개념

윈도우

• 이벤트(Event)라는 중앙 집중화된 로그 수집하여 저장

• 로그가 중앙 집중화되어 관리 용이

• 공격자가 한 로그만 삭제하면 되므로 위험, 로그에 대한 보안 수준 낮음

유닉스

• 로그를 여러 곳에 산발적으로 저장, 여러 곳에 저장된 유닉스 로그는 초보자가 찾기도 어려움

• 공격자도 로그를 모두 찾아 지우기 어려움

AAA : Authentication(인증), Authorization(인가), Accounting

인증 : 자신의 신원(identity)을 시스템에 증명하는 과정(아이디(id)와 패스워드 입력)

• 아이디가 신원을 나타내고 정상 패스워드 입력하면 인증되는 방식

출입 통제 시스템에서 지문으로 신분을 확인까지가‘인증’ 이고 인식 시스템에 손가락을

대고 그 사람이 누구인지 확인하는 과정까지가‘인가’

인가 : 올바른 패스워드를 입력 시스템에 로그인 허락된 사용자라 판명되어 로그인

Accounting : 시스템에 로그인한 후 시스템이 이에 대한 기록을 남기는 과정

인증과 인가, Accounting은 일반 운영체제뿐만 아니라 방화벽등 모든 시스템에 해당

책임 추적성(Accountability) : 추적에 대한 기록의 충실도

감사 추적(Audit Trail) : Accounting을 하여 남긴 로그 정보를 통한 추적 그 자체

Page 14: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

14/56

윈도우의 로그 분석과 설정

해커에 대한 즉각적인 확인

윈도우에서 이를 확인할 수 있는 명령은 query user와 net session이다.

그림 12-15 query user 명령 실행 결과

그림 12-16 net session 명령 실행 결과

Page 15: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

15/56

윈도우의 로그 분석과 설정

doskey /history 명령 : 명령 창에서 내린 명령 확인

그림 12-17 doskey/history로 최근 실행 명령 목록 확인

로그 정책의 설정

윈도우 로그 정책

• [제어판]-[관리 도구]-[로컬 보안 정책] 메뉴 선택 [로컬 정책]-[감사 정책]에서 확인

• 윈도우에서는 로그 정책이 대부분 정보를 로깅하지 않게 설정

• 적절한 로깅 설정 필요

Page 16: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

16/56

윈도우의 로그 분석과 설정

그림 12-18 로컬 정책 > 감사 정책 설정 목록과 항목별 감사 항목 설정 예

Page 17: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

17/56

윈도우의 로그 분석과 설정

[제어판]-[관리 도구]-[이벤트 뷰어]에서 쌓이는 로깅 정보 확인

그림 12-19 이벤트 뷰어를 이용한 보안 로그 확인

Page 18: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

18/56

윈도우의 로그 분석과 설정

개체 액세스 감사

• 파일이나 디렉터리, 레지스트리 키, 프린터 같은 객체에 접근을 시도하거나 속성을 변경하려는 것 등을 탐지

표 12-1 주요 개체 액세스 감사 로그

이벤트 ID 내용

4656 개체에 대한 접근 요청

4657 레지스트리 값 변경

4658 개체에 대한 접근 종료

4660 개체 삭제

4663 개체에 대한 접근

4670 개체의 접근 권한 변경

4698 스케줄된 작업 생성

4699 스케줄된 작업 삭제

4700 스케줄된 작업 활성화

4701 스케줄된 작업 비활성화

5031 외부의 접근을 허용하는 응용 프로그램을 윈도우 방화벽이 차단

5140 네트워크 공유 개체 접근

Page 19: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

19/56

개체 관리 감사

표 12-2 주요 계정 관리 감사 로그

윈도우의 로그 분석과 설정

이벤트 ID 내용 이벤트 ID 내용

4739 도메인 정책 변경 4720 사용자 계정 생성

4722 사용자 계정 활성화 4723 사용자 계정 패스워드 변경 시도

4724 사용자 계정 패스워드 초기화 시도 4725 사용자 계정 비활성화

4726 사용자 계정 삭제 4738 사용자 계정 변경

4740 사용자 계정 잠금 4767 사용자 계정 잠금 해제

4781 사용자 계정 이름 변경

Page 20: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

20/56

윈도우의 로그 분석과 설정

계정 로그온 이벤트 감사

• 계정 로그온 이벤트 감사는 도메인 계정 사용으로 생성

• 로그온 이벤트 감사는 로컬 계정 사용으로 생성

표 12-3 주요 계정 로그인 이벤트 감사 로그

표 12-4 4776 오류 코드

이벤트 ID 내용

4776 도메인 컨트롤러에 대한 로그인 시도

4777 도메인 컨트롤러에 대한 로그인 시도 실패

Page 21: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

21/56

윈도우의 로그 분석과 설정

권한 사용 감사

• 권한 설정 변경시, 관리자 권한이 필요한 작업 수행 시 로깅

• 공격자가 계정 생성하여 관리자 권한 부여, 이에 준하는 일 수행 시 로깅이 남음

표 12-5 주요 권한 사용 감사 로그

이벤트 ID 내용

4672 권한 할당

4673 권한이 있는 서비스 호출

4674 권한이 있는 개체 작동

Page 22: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

22/56

윈도우의 로그 분석과 설정

로그온 이벤트 감사

• 계정 로그온 이벤트 감사와 비슷, 로컬 계정의 접근 시 생성되는 이벤트 감사한다는 점이 다름

표 12-6 주요 로그인 이벤트 감사 로그

이벤트 ID 내용 이벤트 ID 내용

4624 성공적인 로그인 4625 계정 로그인 시도 실패

4634 로그오프 4649 리플레이 공격 탐지

4778 윈도우 시스템에 세션 재생성 4779 윈도우 시스템에 세션 해제

4800 시스템 잠김 4801 시스템 잠김 해제

4802 화면 보호기 실행 4803 화면 보호기 해제

5632 무선 네트워크를 통한 인증 요청 5633 유선 네트워크를 통한 인증 요청

Page 23: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

23/56

윈도우의 로그 분석과 설정

디렉터리 서비스 액세스 감사

• 디렉터리 서비스 운영에 대한 부분

정책 변경 감사

• 사용자 권한 할당 정책, 감사 정책, 또는 신뢰 정책 변경 관련된 사항 로깅

표 12-7 주요 정책 변경 감사 로그

이벤트 ID 내용

4719 시스템 감사 정책 변경

4907 개체에 대한 감사 설정 변경

4706 다른 도메인과의 신뢰 관계 형성

4707 다른 도메인과의 신뢰 관계 제거

4713 커버로스 정책 변경

4704 사용자 권한 할당

4705 사용자 권한 제거

4714 암호화 데이터 복구 정책 변경

4946 방화벽에 대한 예외사항 목록 변경 - 규칙 추가

4947 방화벽에 대한 예외사항 목록 변경 - 규칙 변경

4948 방화벽에 대한 예외사항 목록 변경 - 규칙 제거

4950 방화벽 설정 변경

4670 개체에 대한 권한 변경

Page 24: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

24/56

윈도우의 로그 분석과 설정

프로세스 추적 감사

• 프로세스 추적 감사 관련 이벤트 로그는 사용자나 응용 프로그램이 프로세스 시작,중지 시 발생

표 12-8 주요 프로세스 추적 감사 로그

이벤트 ID 내용

4688 새 프로세스 생성

4689 프로세스 종료

5712 RPC(Remote Procedure Call)이 시도됨

Page 25: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

25/56

윈도우의 로그 분석과 설정

시스템 이벤트

• 시스템의 시동과 종료, 보안 로그 삭제 등 시스템의 주요 사항에 대한 이벤트

표 12-9 주요 시스템 이벤트 감사 로그

이벤트 ID 내용

5024 방화벽 서비스 시작

5025 방화벽 동작 멈춤

5030 방화벽 시작 실패

4608 윈도우 시작

4609 윈도우 종료

4616 시스템 시간 변경

4697 시스템에 서비스 등록

4618 모니터링하고 있던 보안 이벤트에서 패턴 발생

Page 26: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

26/56

이벤트 로그 백업하기

이벤트 로그 파일의 위치는 해당 이벤트의 [속성] 메뉴에서 확인

그림 12-20 백업하고자 하는 로그의 등록정보 선택

실습 12-2 윈도우 로그 관리하기

1

Page 27: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

27/56

실습 12-2 윈도우 로그 관리하기

보안 로그는‘%SystemRoot%\System32\Winevt\Logs\Security.evtx’에 파일 저장

그림 12-21 로그 일반 설정 창

Page 28: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

28/56

실습 12-2 윈도우 로그 관리하기

응용 프로그램 로그, 시스템 로그도 같은 디렉터리에 각각 Application.evtx, System.evtx로

존재

그림 12-22 로그 백업

그림 12-23 백업된 보안 로그

Page 29: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

29/56

원격시스템의 로그 관리하기

원격지 로그 확인

원격 시스템의 로그 수집 : MMC(Microsoft Management Console) 이용

그림 12-24 MMC의 실행

그림 12-25 MMC에서 스냅인 추가/제거

실습 12-2 윈도우 로그 관리하기

2

Page 30: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

30/56

실습 12-2 윈도우 로그 관리하기

[스냅인 추가/제거]의 왼쪽‘사용 가능한 스냅인’ 이벤트 뷰어 선택 <추가> 버튼 누름

그림 12-26 스냅인 추가 창

Page 31: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

31/56

실습 12-2 윈도우 로그 관리하기

오른쪽‘선택한 스냅인’에 해당 스냅인 추가, <확인> 버튼 누름

그림 12-27 원격 관리 목적으로 등록된 원격지 시스템

Page 32: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

32/56

시스템 시간 설정하기

윈도우는 자체적으로 동작하는 시간 동기화 서비스 있음

[제어판]-[관리도구]-[서비스]에 ‘Windows Time’

그림 12-28 ‘Window Time’ 서비스 설정 관련 항목

윈도우는‘Windows Time’ 실행 않되면 이 서비스에 종속

된 서비스를 시작하지 않도록 강제

그림 12-29 ‘Window Time’서비스 등록 정보

실습 12-2 윈도우 로그 관리하기

3

Page 33: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

33/56

리눅스 로그 분석과 설정

로그 디렉터리 표 12-10 주요 리눅스 시스템의 로그 디렉터리 위치

그림 12-30 /var/log 디렉터리의 로그 파일

경로 적용 시스템

/usr/adm 초기 유닉스, BSD 계열 : HP-UX 9.X, SunOS 4.x

/var/adm 최근 유닉스, SVR 계열 : 오라클 솔라리스, HP-UX 10.x 이후, IBM AIX

/var/log 일부 BSD 계열 : BSD, FreeBSD, 오라클 솔라리스, 리눅스

/var/run 일부 리눅스

Page 34: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

34/56

리눅스 로그 분석과 설정

그림 12-31 /var/adm 디렉터리의 로그 파일

Page 35: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

35/56

리눅스 로그 분석과 설정

utmp(x) 로그

utmp 데몬 : utmp(x) 파일에 로그 남기는 프로그램

utmp 데몬은 리눅스의 가장 기본적인 로깅을 제공하는 데몬(/etc/lib/utmpd) 현재

시스템에 로그인한 사용자의 상태 출력

utmp 데몬에 저장된 로그를 출력하는 명령 : w, who, users, whodo, finger 등

w 명령 : 현재 시스템에 로그인된 사용자 계정과 로그인 셸 종류,로그인 시간, 실행 중인

프로세스의 종류

그림 12-32 w 명령을 실행하여 현재 시스템에도 로그인한 사용자 목록 확인

Page 36: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

36/56

who 명령 : 접속한 시스템의 IP 확인

그림 12-33 who 명령을 실행하여 시스템에 로그인한 사용자 IP확인

리눅스 로그 분석과 설정

Page 37: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

37/56

그림 12-34 /etc/default/utmpd 파일에서 스캔 주기 설정

리눅스 로그 분석과 설정

Page 38: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

38/56

리눅스 로그 분석과 설정

wtmp(x) 로그

wtmp 데몬 : wtmp(x) 파일에 로그 남김, /usr/include/utmp.h 파일 구조체 사용

utmp 데몬과 비슷한 역할, 사용자들의 로그인, 로그아웃, 시스템 재부팅 정보 수록

last 명령 이용 확인

그림 12-35 last 명령 실행하여 시스템에 로그인한 사용자의 최근 목록 확인

Page 39: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

39/56

리눅스 로그 분석과 설정

특정 항목만 확인하고 싶으면 last 명령 뒤에 해당 문자열만 추가

그림 12-36 last reboot 명령 실행하여 시스템을 부팅/셧 다운한 최근 기록 확인

Page 40: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

40/56

리눅스 로그 분석과 설정

su 로그

su(switch user)는 권한 변경에 대한 로그

출력 형식

su 로그에 대한 설정 파일 : /etc/default/su

[날짜] [시간] [+(성공) or -(실패)] [터미널 종류] [권한 변경 전 계정 - 변경 후 계정]

Page 41: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

41/56

리눅스 로그 분석과 설정

su 로그에 대한 설정 파일 : /etc/default/su

그림 12-38 /etc/default/su 파일에서 su로그 경로 확인

Page 42: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

42/56

리눅스 로그 분석과 설정

pacct 로그

시스템에 로그인한 모든 사용자가 수행한 프로그램에 대한 정보 저장하는 로그

그림 12-39 pacct 실행

pacct 로그도 utmp나 wtmp처럼 로깅 내용이 /usr/adm/pacct 파일에 텍스트가 아닌

바이너리 형태로 저장

로깅 내용 확인 위한

acctcom 명령 실행

그림 12-40 acctcom 명령 실행

결과

[그림 12-43] acctcom 명령 실행 결과

Page 43: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

43/56

리눅스 로그 분석과 설정

root 계정으로 vi 에디터 실행한 기록 출력하는 명령

그림 12-41 acctcom을 이용해 root 계정이 vi 에디터를 실행한 내역 출력

Page 44: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

44/56

리눅스 로그 분석과 설정

lastcomm 명령 : 실행된 날짜 출력

그림 12-42 ‘lastcomm’명령 실행 결과

Page 45: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

45/56

리눅스 로그 분석과 설정

lastcomm 명령 이용하면 실행한 명령과 S, F, D, X가 각 프로세스 간략한 상태 표시

• S : Superuser가 사용한 명령

• F : Fork 후에 사용된 명령

• D : Core를 덤프하고 종료된 명령

• X : Signal에 의해 종료된 명령

Page 46: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

46/56

리눅스 로그 분석과 설정

.sh_history 또는 .bash_history

리눅스에서는 실행 명령 기록은 .sh_history, .csh_history, .bash_history

‘[셸의 종류]_history 파일’형식으로 각 계정의 홈 디렉터리에 저장

그림 12-43 history 명령으로 최근 실행 명령 목록 확인

Page 47: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

47/56

리눅스 로그 분석과 설정

history 내용은 .bash_history에 텍스트 형태로 저장

cat이나 more 명령으로 확인

그림 12-44 .bash_history 파일에서 최근 실행 명령 목록 확인

Page 48: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

48/56

리눅스 로그 분석과 설정

syslog

시스템의 로그 정보를 대부분 수집하여 로깅

해당 로그의 종류와 로깅 수준은 /etc/syslog.conf 파일에서 확인

그림 12-45 /etc/syslog.conf 파일에서 syslog 로깅 목록 확인

Page 49: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

49/56

리눅스 로그 분석과 설정

➊ *.err;kern.debug;daemon.notice;mail.crit /var/adm/messages

‘모든 에러(*.err)와 커널의 디버그 시 남는 로그(kern.debug), 각 데몬의 동작에

대한 일반 정보(daemon.notice), 메일 서비스에 심각한 오류가 있는 경우

(mail.crit)에는 /var/adm/messages 파일에 해당 메시지를 저장하라’

➋ mail.debug ifde‘f( LOGHOST’, /var/log/syslog, @loghost)

‘메일에 대한 디버깅 정보(mail.debug)를 ‘LOGHOST’가 정의되어 있을 경우

(ifdefine) loghost 시스템의(@loghost) /var/log/syslog 파일에 저장하라’

Page 50: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

50/56

리눅스 로그 분석과 설정

authlog/loginlog

loginlog는 실패한 로그인 시도에 대한 로깅 수행

loginlog 파일에 실패한 로그인 기록이 저장되도록 설정

이 설정은 /etc/default/login 파일에 저장, 시스템 재부팅할 때 적용

그림 12-47 authlog 파일의 생성과 권한 설정

Page 51: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

51/56

리눅스 로그 분석과 설정

그림 12-48 /etc/syslog.conf 파일 편집

Page 52: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

52/56

리눅스 로그 분석과 설정

그림 12-49 /etc/default/login 파일 설정 사항

Page 53: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

53/56

리눅스 로그 분석과 설정

텔넷 등을 통해 로그인 시도 시 잘못된 계정과 패스워드로 로그인에 5번 실패 시

텔넷 재 실행

SYSLOG_FAILED_LOGINS는 5회 이상 잘못된 시도에 대해 loginlog 파일에 로깅

SYSLOG_FAILED_LOGINS 앞의 주석 표시(#) 제거하고 재부팅

원격에서 윈도우 이용 텔넷 접속 시도(5번 로그인을 시도하여 모두 실패하기)

5회 실패하면 연결 자동으로 끊김

그림 12-50 system-log 서비스 재시작

그림 12-51 다섯 번에 걸친 잘못된 로그인 시도

Page 54: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

54/56

리눅스 로그 분석과 설정

생성한 /var/adm/loginlog 파일에 실패한 접속 시도가 로깅되어 있는지 확인

그림 12-52 잘못된 로그인 시도에 대한 authlog 파일 로그

Page 55: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

55/56

리눅스 로그 분석과 설정

시스템별 로그 상세 경로

표 12-11 시스템별 주요 로그 파일 위치

로그 파일 리눅스(레드햇) 솔라리스 HP-UX (10.x 이상) IBM-AIX

utmp, wtmp /var/run(utmp)

/var/log(wtmp)

/var/adm /var/adm /var/adm

utmpx, wtmpx 존재하지 않음 /var/adm 존재하지 않음 존재하지 않음

btmp /var/log 존재하지 않음 /var/adm 존재하지 않음

syslog 존재하지 않음 /var/log /var/adm/syslog/syslog.log /var/adm

secure /var/log 존재하지 않음 존재하지 않음 존재하지 않음

sulog 존재하지 않음 /var/adm /var/adm /var/adm

pacct /var/log /var/adm /var/adm /var/adm

authlog 존재하지 않음 /var/log 존재하지 않음 존재하지 않음

messages /var/log /var/adm /var/adm /var/adm

loginlog 존재하지 않음 /var/adm 존재하지 않음 존재하지 않음

lastlog /var/log /var/adm /var/adm /etc/security

access_log /var/log/httpd /var/log/httpd /usr/local/etc/httpd/logs /usr/local/etc/httpd/logs

error_log /var/log/httpd /var/log/httpd /usr/local/etc/httpd/logs /usr/local/etc/httpd/logs

shutdownlog 존재하지 않음 존재하지 않음 /etc/shutdownlog 존재하지 않음

failedlogin 존재하지 않음 존재하지 않음 존재하지 않음 /etc/security

Page 56: 정보보안 개론과 실습:네트워크halra.knuw.ac.kr/systemsecurity/ch12.pdf · 3/56 침해사고가 발생할 때 대응 절차 해킹 사고 대응 절차 • 메모리 덤프

시스템 해킹과 보안