2016년 8월 28일 일요일

[Snort] Web Base Snort

BASE(Basic Analysis and Security Engine)



데이터베이스에 저장한 Snort 탐지 내역을 쿼리하고 분석할 수 있도록 웹 인터페이스를 제공하는 공개용 분석 툴이다. 

BASE 설치


BASE를 사용하기 위해서는 먼저 APM(Apache, PHP, Mysql) 설치를 해야 한다.

# yum install libjpeg* libpng* freetype* gd-*

# yum install httpd

# yum install mysql mysql-server mysql-devel

# yum install php php-mysql

위와 같이 패키지를 설치한다.







패키지 설치가 되었는지 다시 확인한다.

# iptables -F

방화벽을 해제한다.

이제 Apache 환경설정을 해주어야한다.

# vi /etc/httpd/conf/httpd.conf


nobody로 변경을 해준다.


현재는 도메인이 없으므로 해당 서버 IP를 추가한다.

# service httpd restart 



서버를 재시작한 후 브라우저에 해당 IP에 접속하면 Apache Test Page가 나타날 것이다.

이제 PHP 환경 설정을 진행해주어야한다.


DirectoryIndex index.html index.php


AddType application/x-httpd-php .php .html .htm .Inc
AddType application/x-httpd-php-source .phps

설정이 완료되면,

#vi /var/www/html/phpinfo.php 

<?php
phpinfo();
?>

위와 같이 입력 후 저장을 한다.


http://해당 IP/phpinfo.php 입력 시 위와 같은 화면이 나타나면 php가 잘 구동 되는 것이다.

Snort가 기본적으로 갖고 있는 출력 기능을 Snort 대신 출력해주는 도구인 barnyard 설치가 필요하다.

# git clone https://github.com/firnsy/barnyard2.git

git을 이용해 먼저 barnyard2 파일을 다운받는다. 
git 패키지가 없을 경우 yum install git을 이용해 다운 받은 후 진행한다.

# cd barnyard2
# yum install libtool autoconf
# ./autogen.sh 
# ./configure --with-mysql (32bit)
# ./configure --with-mysql-libraries=/usr/lib64 (64bit)
# make
# make install

barnyard2 구동 시  waldo 파일이 필요하다.

touch /var/log/snort/barnyard2.waldo
# cp etc/barnyard2.conf /etc/snort/barnyard2.conf 
# vi /etc/snort/barnyard2.conf

user=root
password=해당 패스워드
dbname=snort
host=localhost

# vi /etc/snort/snort.conf


# vi /etc/snort/rules/local.rules


barnyard2에 대한 설정은 여기까지다.

이제 base에 대해 설치 후 설정을 진행해야된다.

# wget https://sourceforge.net/projects/secureideas/files/BASE/base-1.4.5/base-1.4.5.tar.gz
# tar zxvf base-1.4.5.tar.gz -C /var/www/html
# mv /var/www/html/base-1.4.5 /var/www/html/base
# chown -R apache.apache /var/www/html/base

# vi /etc/php.ini

# service httpd restart

adodb 설치와 설정을 진행한다.

# wget https://sourceforge.net/projects/adodb/files/adodb-php5-only/adodb-519-for-php5/adodb519.tar.gz
# tar zxvf adodb519.tar.gz -C /var/www/html
# chown -R apache.apache /var/www/html/adodb5

mysql에서 snort 데이터베이스를 생성해야 한다.

# mysql_secure_installation

mysql 계정의 패스워드 설정을 한다.


snort 테이블을 만든다.


create_mysql 파일을 snort 테이블에 복사한다.

이제 http://해당IP/base에 들어간다.


Config Writeable가 No로 표시되어있다. 설정 파일에 내용을 입력할 권한이 없다는 뜻이다.


base 파일의 권한을 확인한 후 write 할 수 있도록 777 권한을 준다.


Continue


ADODB 경로를 입력한 후 Continue


Continue


Admin User Name: admin
Password: 1234
Full Name: admin

Continue


Create BASE AG 클릭


step 5 클릭


설치가 완료되었다.

# vi /etc/snort/barnyard2.conf

log 파일이 저장 될 경로를 추가한다.

# snort -u snort -g snort -c /etc/snort/snort.conf -i eth0
# barnyard2 -c /etc/snort/barnyard2.conf -d /var/log/snort/ -f snort.u2
snort 와 barnyard2 를 실행 시킨 후 다른 PC에서 ping 을 보낸다.



위와 같이 BASE 화면에 패킷 정보가 나타난다.

BASE 에서는 패킷 정보를 그래프로 확인할 수 있다.


Graph Alert Data를 누른 후 확인을 해보면 아래와 같은 에러 메시지가 나타난다.


아래와 같이 해결해야한다.

# yum install php-gd

# service httpd restart

# yum install php-pear

# pear install --force Image_Color

# pear install --force Image_Canvas

# pear install --force Image_ Graph

# vi /var/www/base/html/base_config.php


위와 같이 설정해준다.


Graph Alert Data에 들어가면 위와 같이 그래프로 설정할 수 있는 화면이 나타난다.

댓글 없음:

댓글 쓰기