개요
정보보안(산업)기사 시험에 자주 등장하는 snort를 설치하고 실행해 보자. snort(https://www.snort.org/)는 snort 홈페이지에서 다운로드 받을수 있는데 소스형태와 바이너리 형태 둘다를 지원한다. 바이너리는 윈도우, 페도라, CentOS를 지원한다. snort는 전통적인 snort 버전과 snort-openappid 두가지의 버전이 있다. 차이점은 snort-openappid는 어플리케이션을 인지하는 모듈이 탑재돼 있다는 것이다.
테스트 환경
Cent OS 7.6(64bit)
snort-2.9.14.1-1
설치
step 1) EPEL(Extra Packages for Enterprise Linux) Repository 설치
shell> yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
step 2) snort 를 설치하기전에 daq,libdnet-devel 의존성 패키지 설치.
shell> yum install daq libdnet-devel
step 3) snort 설치 설치
shell> rpm -Uvh snort-2.9.14.1-1.centos7.x86_64.rpm
설치가 끝났고 이제 실행해 보자
shell> snort
snort: error while loading shared libraries: libdnet.1: cannot open shared object file: No such file or directory
라이브러리가 없단다. libdnet 설치가 되어있는데도 없다고 나온다. 이럴 경우에 /lib64로 가서 libdnet.so.1.0.1을 libdnet.1 로 심볼릭 링크를 걸어주자~
shell> cd /lib64
shell> ln -s libdnet.so.1.0.1 libdnet.1
설치가 완료 되었다.
snort.conf 수정
아래 명령어로 snort.conf 파일을 검증하면 에러가 나올것이다.
shell> snort -T -c /etc/snort/snort.conf
-T 옵션 : snort.conf파일의 validation 검증
하나하나 로그를 보면서 snort.conf 파일을 수정하도록 하자.
1) WHITE_LIST_PATH,BLACK_LIST_PATH 변수값 수정
여기서는 /etc/snort/rules 위치로 변경
2) white_list.rules, black_list.rules (빈)파일 생성
shell> cd /etc/snort/rules
shell> touch white_list.rules black_list.rules
3) include 문 주석
local.rules을 제외한 나머지는 주석(#)처리, 초기 설치시 해당 rule이 없으므로 site specific rules 모두를 주석 처리한다.
4) local.rules 파일 생성(빈 파일)
shell> touch /etc/snort/rules/local.rules
5) dynamicdetection 라인 주석(#)처리
6) snort.conf 파일 검정
shell> snort -T -c /etc/snort/snort.conf
7) snort 실행
forground
shell> snort -i eth0 -c /etc/snort/snort.conf
background(Daemon)
shell> snort -i eth0 -c /etc/snort/snort.conf -D
8) snort 옵션
-D : Daemon 으로 작동
-v : tcp/ip header 출력( snort -v )
-e : 링크계층 헤더출력( snort -ve )
-d : application data 을 hex, ascii 두개로 출력( snort -ved )
-C : 패킷 페이로드 부분을 Ascii만 출력
-l(소문자 L) : 로그 디렉토리( snort -ved -l /var/log/snort )
-I(대문자 i) : 수신 인터페이스 이름을 alert파일에 기록 ( snort -i ens32 -I -c /etc/snort/snort.conf )
마치며
지금까지 snort 설치에 대해 알아보았다. 다음에는 snort 활용방안에 대해 좀더 알아 봐야겠다.
'보안' 카테고리의 다른 글
[iptables] 활용 (0) | 2019.11.05 |
---|---|
[snort] 활용2 (0) | 2019.11.01 |
[wireshark] IP fragments 패킷 필터링 (1) | 2019.10.30 |
[nmap]활용 (0) | 2019.10.29 |
[Snort] 활용1 (0) | 2019.10.28 |