1 / 22

Bro Setup and Usage Guide with Seunghwan's Scripts

Learn how to set up and use Bro for network monitoring. This guide provides instructions for installation, configuration, and troubleshooting along with helpful scripts by Seunghwan.

beecher
Download Presentation

Bro Setup and Usage Guide with Seunghwan's Scripts

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. The bro 설정 및 사용법과 스크립트 이승환

  2. Bro 기본 사용법 • Broctl로 Bro를 시작할 수 있음 • Log 들은 /usr/local/bro/logs에 쌓이며, current/ 폴더에서 최종적으로 확인 가능

  3. 설치 환경설정 주의사항 • /usr/local/bro/etc에서 설정파일 변경 가능- broccoli.cfg : broccoli 시스템 환경설정 (피어 , 포트번호등)- broctl.cfg : broctl시스템 환경설정- network.cfg : 로컬 네트워크 환경설정- node.cfg : broctl node 설정 • 수정 후 sudobroctl deploy

  4. 설치 환경설정 주의사항 • Ubuntu 16.04 기본 인터페이스 이름 ens33 • The bro 기본 값 eth0 이기 때문에 오류 발생 • node.cfg수정

  5. 설치 환경설정 주의사항 • Error: error occurred while trying to send mail: send-mail: SENDMAIL-NOTFOUND not found • broctl.cfg에서 SendMail = /usr/sbin/sendmain추가

  6. 로그 파일 확인 • weird.log, http.log • 이외에도 conn.log(해당 인터페이스로 통하는 모든 연결), notice.org(흥미롭거나 이상하거나 나쁜 패킷들)

  7. bro script • 기본경로/usr/local/bro/share/bro • .bro 확장자 • site 디렉토리만 수정을 권장 • base : bro 가 자동적으로 모든 스크립트를 로드하며bro의 다양한 기능들이 내장, 추가적인 performance cost 소모없이 사용 가능 • policy : 상황에 따라 cost 가 발생할 수 있는 기능들로 사용자의 선택 하에 Load 되는 스크립트 • site/local.bro를 메인으로 스크립트들이 실행 됨

  8. local.bro • bro 전체에서 load 할 스크립트 관리 • 몇 가지 policy 들이 기본으로 활성화 되어있음. • Script option 재정의

  9. bro script 구조 • 해당 경로의 스크립트들을 import • 디렉토리를 load 할 경우 __load__.bro를 기준으로 load • 모듈이름 정의

  10. bro script 구조 • Notice::Type 을 지정하여 외부에서 import 가능 • TeamCymruMalwareHashRegistry::Match

  11. Notice Framework • “notice”란 이상하거나 악성일 가능성이 있는 것들 • 모든 Notice 관련 함수들을 관리

  12. Bro Notice Index • 기본으로 설정되어있는 Notice 들을 검색할 수 있음 • 정의한 소스코드의 위치, 간단한 설명, redefine 가능 옵션 등

  13. Notice Framework • Notice Framework 로 사용할 수 있는 함수들이 설명되어있음.

  14. bro script 구조 • &redef옵션들은 외부에서 redefine 가능

  15. Script Option 재정의 • base/frameworks/notice/main.bro • site/local.bro

  16. bro script 구조 • bro 의 함수 선언

  17. bro script 구조 • 이벤트 핸들러 • 스크립트의 주요 동작 부분

  18. bro script tutorial • http://try.bro.org/#/trybro

  19. bro script 적용

  20. 적용된 스크립트 확인

  21. 커맨드라인에서 바로 실행 • bro –i [인터페이스 이름] [스크립트 이름] • 해당 스크립트만 적용할 수 있어 디버깅에 유용

  22. 패킷덤프에 스크립트 적용 • sudo bro –r [패킷덤프 이름] [스크립트 이름] • 이미 덤프된 패킷에 스크립트를 적용해 볼 수 있음

More Related