[SK shieldus Rookies 16기][클라우드기반 시스템 운영 및 구축] Zeek, HTTP/DNS/SSL/x.509 로그 필드, 로그 확인 및 전송 실습

Jina·2024년 1월 10일
0

SK shieldus Rookies 16기

목록 보기
54/59
post-thumbnail
post-custom-banner

1. Zeek

1.1. 정의

  • 네트워크 침입 탐지 시스템(NIDS)와 Bro가 Zeek 이라는 프로토콜 분석툴로 이름이 변경됐다.
  • 네트워크를 모니터링 할 수 있는 오픈 소스 프로그램

1.2. 목적 및 기능

  1. 패킷 수집
  2. TCP/IP 헤더를 분석
  3. 응용 프로토콜의 헤더를 분석
  4. 프로토콜별 분류
  5. 프로토콜별 로그 생성

2. Zeek 설치방법

$ apt update 
$ apt-get install curl gnupg2 wget –y
$ curl -fsSL https://download.opensuse.org/repositories/security:zeek/xUbuntu_20.04/Release.key | gpg --dearmor | tee /etc/apt/trusted.gpg.d/security_zeek.gpg
$ echo 'deb http://download.opensuse.org/repositories/security:/zeek/xUbuntu_20.04/ /' | tee /etc/apt/sources.list.d/security:zeek.list

$ apt update -y
$ apt-get install zeek -y
$ echo "export PATH=$PATH:/opt/zeek/bin" >> ~/.bashrc
$ source ~/.bashrc
$ zeek --version

3. Zeek 환경설정

$ cd /otp/zeek/etc
$ nano networks.cfg

3.1. 관제할 네트워크 등록하기

3.2. 관제할 네트워크 타입

3.3. 로그가 저장될 위치 확인

3.3. Zeek 활성화

$ zeekctl check
$ zeekctl deploy
$ zeekctl status

4. 로그 확인

WebServer 가상머신

$ service httpd start
$ service iptables start
$ cd /opt/zeek/spool/zeek
$ ls -l

4.1. Zeek HTTP 로그 필드

$ nanao http.log

4.2. Zeek DNS 로그 필드

$ nanao dns.log

4.3. Zeek SSL 로그 필드

4.4. Zeek X.509 로그 필드

4.5. 오래된 로그는 어디로?

/opt/zeek/spool/zeek 에서 일정 시간이 지나면 로그를 압축 파일로 만들어 /opt/zeek/logs 에 날짜별로 저장해 놓는다.

$ cd /opt/zeek/logs
$ ls -l

$ cd 2024-01-09
$ ls -l

5. 로그 전송

5.1. Splunk - tcp 22포트 방화벽 열기

tcp 22포트 방화벽 열기

/tmp 는 sticky bit 설정이 되어 있기 때문에 기타 사용자도 여기에 파일을 만들 수 있다. 별도의 로그 디렉토리를 만들지 않고 /tmp를 사용할 것이다.

5.2. ZeekIDS - Splunk 에게 http.log 파일 전송하기

$ scp http.log splunk@192.168.10.10:/tmp

5.3. Splunk - 전송된 로그 확인

/tmp 에서 파일 리스트를 확인하면

profile
공부 기록
post-custom-banner

0개의 댓글