::: 정보보안 :::

FIR (Fast Incident Response)

곰탱이푸우 2021. 6. 9. 17:34

1. 소개

1.1. 개요

FIR은 침해사고 대응을 위한 플랫폼(Security Incident Response Platform)으로 오픈소스이다.

 

TheHive에 비해 기능이 많이 단순하다. 장점이지만 곧 단점이다. 

외부 인텔리전스는 YETI에 종속되어 있고, 샘플 분석은 FAME에 종속된 것으로 보인다. 

 

TheHive에 비해 외부 Observable을 수집하거나 보강하는 기능은 지원하지 않고, TTPs 정리 기능 지원도 미흡하다.

 

공식 사이트 겸 GitHub

 

certsocietegenerale/FIR

Fast Incident Response. Contribute to certsocietegenerale/FIR development by creating an account on GitHub.

github.com

 

Docker

 

certsocietegenerale/FIR/docker

Fast Incident Response. Contribute to certsocietegenerale/FIR development by creating an account on GitHub.

github.com

 

라이선스는 GPL 3.0 이며, 코드 공개가 의무이지만 웹서비스로 제공하는 경우 공개대상이 아니다. (AGPL 라이선스가 탄생하게 된 원인이다)

 

 

1.2. 특징

기본적인 특징은 다음과 같다.

  • 단순한 기능으로 사고대응 플랫폼 입문에 유용
  • 인텔리전스 플랫폼은 YETI만 지원
  • TTPs 정리 기능 지원 미흡
  • FIR - YETI (- MISP) - FAME을 모두 사용해야 그나마 괜찮을 듯

 

Docker 코드를 확인해보면 내부적으로 다음 도구들을 활용한 것으로 확인된다.

  • MariaDB, REDIS, nginx, Django, Python
  • Docker를 생성하면 Debian 리눅스가 확인되며 웬만한 리눅스 배포판은 대부분 지원할 것으로 예상 된다

 

1.3. 예시

데이터 수집과 활용에 따라 다음과 같은 분석이 가능해진다. (출처 : https://github.com/certsocietegenerale/FIR)

 

UI만 살펴봐도 인텔리전스 보다는 순수하게 사고대응에 초점을 맞춘 것을 알 수 있다.

 

 

 

2. Docker 셋팅 방법

Production 환경에서는 단계별로 셋팅하거나 Ensible을 활용한 셋팅이 필요하지만, 테스트와 기능 확인이 주 목적이므로 Docker를 이용한 셋팅을 진행한다.

 

기본적인 Docker 이미지 생성은 다음 링크를 참고한다. (릴리즈 기록이 없어서 버전 정보가 없다!)

 

certsocietegenerale/FIR/docker

Fast Incident Response. Contribute to certsocietegenerale/FIR development by creating an account on GitHub.

github.com

 

샘플망에서 아래 경로의 코드를 다운로드하고 압축을 해제한다. (굳이 git clone 할 필요 없이 zip 파일 다운로드해도 된다.) 

 

certsocietegenerale/FIR

Fast Incident Response. Contribute to certsocietegenerale/FIR development by creating an account on GitHub.

github.com

 

터미널을 실행하고 압축을 해제한 경로 하위의 docker 폴더로 이동하고 docker-compose up을 실행하면 정상적으로 실행된다. 

처음 실행한 경우 db 테이블과 코드를 초기화 하는 과정이 진행되어 약 2~3분간 기다려야 한다.

 

 

다음과 같은 화면이 나오면 정상적으로 시작된 것이다. 

 

실행이 완료되면 웹 브라우저를 실행하고 http://localhost로 이동하면 다음과 같은 로그인 창을 확인할 수 있다.

 

초기 로그인 계정 정보는 admin/admin이다. 로그인 직후 비밀번호를 수정한다.

 

 

3. 기능 분석

3.1. 초기 화면

초기화면은 상당히 심플한 Dashboard이다.

3.2. 이벤트 생성

이벤트 생성 버튼을 누르면 이벤트를 생성할 수 있다. 

 

FIR은 Incident - Event로 구성되는데, Is an incident 누르면 Incident로 생성 가능하다.

 

 

개요 우측이 아래 내용이 추가 된다. (Actor, Plan) Major Incident를 누르면 주요 사고로 지정 가능하다.

 

Category는 아래와 같이 이미 고정 된 목록에서 선택하는 것으로 되어 있다.

 

3.3. 기능 확인

나머지는 대시보드, Incident/Event 조회, 통계 및 검색 기능이 전부인 것으로 보인다.

API도 지원하지만 TheHive에 비하면 별 기능이 없다.

 

Event 또는 Incident를 생성하면 세부 사항에 Comment와 Theat Intel 탭이 있다.

Threat Intel 탭은 YETI만 지원한다. (YETI도 별 내용 없던데??!!)

 

4. 결론

YETI에서 FIR, FAME과 삼각 구성을 지원한다고 해서 기대하고 봤는데, YETI나 FIR이나 기능이 별로 없다.

 

사실 이 정도도 직접 만들려면 상당히 힘들 것으로 생각되지만, MISP와 TheHive가 이미 막강한 기능을 제공해주고 있어서 상대적인 비교가 되는 건 어쩔 수 없나보다.

 

 

아래의 경우에는 유용할 수 있겠다.

  • 침해사고 대응 관리를 처음 시도하는 경우
  • 이슈관리, Wiki 등 내부에 이슈 관리와 트래킹 인프라가 없는 경우
  • 개인이나 소그룹 단위에서 이슈 관리를 하고자 하는 경우
  • 메모장이나 엑셀보다 나은 관리도구를 원하는 경우

 

보다 전문적이거나 복잡한 구성을 원하는 경우에는 TheHive가 더 나아보인다.