APS
자료실

자료실

[IDS] 그대로 따라하면 Snort 완벽 설치!!

기타
작성자
20_이주형 20_이주형
작성일
2021-12-02 18:04
조회
426

※파일 다운안되면 첨부파일 확인하세요


여기에 Snort를 설치해보려고한다


(사실 Windows 7에서 설치 테스트 했고, Windows 10은 이번에 시도해보려고 한다)


 Windows Snort.egg

(필요한 파일 몇개 모음 APM_Setup은 직접 다운받아주세용) -> google에서 apmsetup7 다운로드

(리눅스 기반이라 일반 메모장으로는 불편하니 editplus같은 편집툴을 사용하면 좋아용)

(유료라 공유는 안함!)


우선 네트워크의 패킷을 수집하려면 WinPcap이라는걸 설치해야 한다


https://www.winpcap.org/install/default.htm


여기서 다운로드 받으면 된다


2440EB3555699FAA31D8E5


2656193555699FAA250A6D


2602163555699FAC0A38EB


26557F3555699FAD25CDFC


273B2F3555699FAE351707


WinPcap은 기본값으로 설치해주면 된다


다음으로는 Snort 결과를 보기 위한 웹 서버를 설치할 것인데


APM Setup이라는걸 설치하여 한방에 해결하겠다


http://apmsetup.com/download.php --> 현재는 사라졌으니 google에서 apmsetup7 검색 후 다운로드


2644C1385569A28D2D1765


모두 기본 값으로 설치해주면 된다


2244F2385569A28D2C0058


2204F6385569A28E061C1B


24592D385569A2902121AA


227591385569A2910EC822


212B90385569A29331F08E


방화벽은 끌꺼지만 일단 액세스 허용!


21433D385569A2942E94E4


Readme 파일 보기는 체크해제했다


252912345569A2960A09DC


APMSETUP이 실행되면 업데이트를 한다고 하는데 아니요를 선택하고 X 를 클릭하자


256314345569A297364DCB


작업 표시줄 오른쪽에 보면 APM 아이콘이 생겼다


마우스 오른쪽 클릭하여 MySQL 관리를 선택하자


25063A345569A29920D9C0


그럼 MySQL root의 패스워드를 알려준다


226912345569A29A33B9F0


관리 페이지에 로그인하여 패스워드를 변경해도 된다


여기서는 그냥 사용하겠다


adodb 라는 것을 다운받아야 한다


http://sourceforge.net/projects/adodb/?source=directory


여기서 받으면 된다


압축을 풀어서 adodb5 라는 이름으로 C:\APM_Setup\htdocs 폴더에 넣어주자


그리고 원래 있던 index.php 파일은 지워주자


223D2F3D5569A44018D62B


너무 길어 지니 다음 글에 이어서 !!



이제 snort를 설치해 보자


snort를 다운받아야하는데 최신 버전의 snort를 다운받으니 DB와 연동에 조금 문제가 생겨서


전 버전의 snort를 사용하겠다


Snort_2_9_0_4_Installer.zip


255C313E5569A5B9331E0F


211C983E5569A5BA0DB26D


2426B53E5569A5BC0660DD


210BCC3E5569A5BD14AF7F


2444803E5569A5BE4112FD


245D223E5569A5BF32C912


이제 마지막으로 base를 다운받자


http://sourceforge.net/projects/secureideas/files/BASE/base-1.4.5/base-1.4.5.tar.gz/download


adodb와 마찬가지로 C:\APM_Setup\htdocs 안에 넣어주자


폴더 명은 base로 해주자


2534F93A5569A75213C0AF


이제 다운받는건 끝이 났고


설정을 해야한다


설정이 생각보다 복잡하다 (리눅스에 비하면 엄청 편하다)


우선 C:\Snort\schemas 로 이동하여 Shift + 마우스 오른쪽 클릭한다


그럼 여기에서 명령 프롬프트 열기라는 메뉴가 있다 클릭하자


21177B3B5569A79C133F68


mysqladmin -u root -p create snort

(snort라는 데이터베이스 만듬)

mysql -D snort -u root -p < create_mysql

(snort 데이터베이스에 현재 폴더에 있는 create_mysql 내용을 집어 넣음)

mysql -u root -p

(mysql 콘솔 로그인)

use snort;

(snort 데이터베이스 선택)

show tables;

(snort 데이터베이스 안에 테이블 확인)


2626B0505569A8582909D8


위와 같이 테이블이 나왔다면 성공이다


Mysql 설정은 끝이 났다


이제 Base 설정을 해보자


우선 수정해야할 부분이 있다


C:\APM_Setup\htdocs\base\includes\base_action.inc.php 파일을 열어서


include_once("Mail.php"); // r.rioux added for PEAR::Mail

include_once("Mail/mime.php"); //r.rioux added for PEAR::Mail attachments


두 줄 앞에 // 주석을 달아 주어야 한다


2774944A5569AD3F272BEA


그리고 웹 브라우저를 열어 http://localhost/base 로 이동해 보자


그럼 아래와 같은 창이 뜬다


Continue를 누르자


245BC5475569AACE2EE504


그럼 아래와 같은 창이 뜨는데 adodb를 풀어둔 경로를 적어준다


C:\APM_Setup\htdocs\adodb5


그리고 Continue를 누르자


217301485569AB3C1187D2


아래와 같은 창이 뜬다


아까 만든 db 인 snort


주소 localhost


MySQL 아이디와 패스워드를 입력해주고


Continue!


265902335569AF452F05AD


base 화면을 볼 때 인증을 할거면 적어 넣으면 된다


여기서는 귀찮으니 그냥 Continue


2511454B5569AC072847EB


아래와 같이 뜨면 Create BASE AG 클릭


26289E475569AFCC170807


잘 해왔다면 아래와 같이 DONE이 뜬다


이제 아래의 Step 5... 를 클릭하면


264195475569AFCE06D0C9


base 메인 화면이 뜬다


270538475569AFCE2F55F5

이제 Snort 설정만 해주면 된다


다음 글에 계속!!



이제 snort 설정을 해야 한다


C:\Snort\etc 로 이동하여


snort.conf 파일을 열어보자


27651A4B5569B0A2072987


우선 위의 화면 처럼 리눅스 path 경로로 되어있다 (/) 이것을


(\)로 바꿔주자


265996495569B0F7141335


그리고..


portvar 와 ipvar 로 되어있는 부분을 전부 var로 수정해야한다 (문서 전체) (스샷 없음)


2329A04A5569B1E91D4F58


170 라인 쪽에도 위의 화면 같이 되어있는데


아래 화면같이 바꿔준다


264E623A5569B7A229CD56


또......


2541C5465569B2DA29CD84


# site specific rules 의 아래 include 부분을 다 선택하여 지워주고


아래와 같이 user.rules 라고 적어 준다


214601465569B2DB28A904


또또..


C:\snort\rules 폴더에 user.rules 파일을 만들고


alert icmp any any -> any any (msg:"ICMP TEST"; sid:50001;)


를 추가해주고


C:\Snort 에는 so_rules라는 파일을 만들어서


50001 || ICMP TEST 를 추가해주자


23365E415569B3F02D4342


266E20415569B3F10912A9


또또또...


22514F365569B82A0B162D


위 화면같이 주석이 안되어 있는 부분을 주석 처리해주자


233B3F365569B82A1B6249

마지막으로


아래와 같이 # database 부분에


output database: alert, mysql, user=root password=apmsetup dbname=snort host=localhost

output database: log, mysql, user=root password=apmsetup dbname=snort host=localhost


를 추가해 주자


2371433C5569BD16274C04


이제 아까 snort\rules\user.rules에 추가해둔 icmp 탐지 룰을 이용하여


snort가 제대로 작동하는지 테스트 해보자


우선 테스트를 위해 방화벽을 꺼놓자


214051395569BE1E336218


2465F3395569BE1F19F229


23693D395569BE2016005B


방화벽을 껏으면 C:\Snort\bin 으로 이동하여


CMD 창을 열고


snort -W 를 입력해 본다


그럼 index 부분에 네트워크 카드 번호가 나오는데


여기서는 네트워크 카드가 1개라 1개만 나온다


1번 네트워크 카드를 사용하자


251988385569BE4A37002A


snort -c C:\Snort\etc\snort.conf -l C:\Snort\log -i 1


snort -c [설정파일] -l [로그경로] -i [네트워크 카드 번호]


245FC8385569BE4B08ADE3


이제 Snort가 에러없이 실행되었다면..


27720A375569BEFF1AEBAA


다른 PC를 이용하여 IDS를 설치한 Windows 10으로 PING을 보내보았다


233D76385569BE4D1FD97B


Windows 10에서 base 화면을 보면 ICMP를 감지했다는걸 볼 수 있다


222929385569BE502B4D17


핑을 한 번 보내면


icmp Request(8)와 icmp echo reply(0) [주고 받고]


4개의 핑을 보낸 결과


IDS에서 8개가 감지되었다


26620E395569BF8318FDBC


흠흠 룰 만드는 방법은 PDF첨부파일 참고

출처: http://lureout.tistory.com/491 [취미로 하는 IT보안]

전체 0