카테고리 없음

OpenFPC에 관하여

이성권 2013. 3. 5. 17:33

OpenFPC는 lightweight full-packet network traffic recorder & buffering system을 제공하기 위한 조합된 도구의 집합니다. 

비전문가가 분산 환경에서 트래픽 저장장치를 COTS(Commercial-off-shelf)하드웨어에 설치하도록 하고 이미 존재하는 경보 또는 로그 관리 도구에 연동되도록 하는 것이 목적이다.

OpenFPC는 경량(lightweight)로 묘사되는데, 내가 본 다른 FPC/Network traffic forensic tools들과는  다른 디자인을 따르기 때문이다. IDS처럼 자동화된 이벤트를 트리거하는 기능을 사용자에게 제공하지 않고, NBA처럼 트래픽 변화의 이상징후 이벤트를 모니터링하도록 세팅할 수 없고, 오픈 소스 또는 상용 제품에서 제공하는 탐지 기능을 지원하지 않는다. OpenFPC는  필요시 정밀한 조사 및 깊은 분석을 하는 것들에 적합한 full packet/traffic data를 제공한다.

단순하게, 지원되는 포맷 중에서 하나의 로그파일 엔트리를 주면, OpenFPC는 PCAP으로 제공할 것이다.

아래 유투브 동영상은 설치 및 간단한 사용에 대한 데모 영상이다.


OpenFPC와 같이 동작하는 방법에 대해 이해하기 위해서는 어바웃 페이지를 보기 바란다. 
OpenFPC는 종횡무진(횡적 + 종적) 확장성을 가지도록 고안된 네트워크 트래픽 수집도구이다.  OpenFPC는  통신 경로 및 프록시를 사용하여 SOC(Security Operating Center)로 연동된 분산 시스템이다. OpenFPC를 디플로이하거나 아키텍처에 대해 보다 자세한 설명을 하기 위해서, 아래 단순한 다이아그램을 예시하여 설명하도록 하겠다.
먼저, 몇 개의 용어를 설명하도록 하겠다.
 Client Device: 
분석을 위해 사용되는 컴퓨터로 펄(perl) 환경이 요구되며 현재(2013.03.05) 리눅스와 OSX가 테스트 되었다. 이는 ofpcclient.pl 프로그램을 실행하여 시작된다.

ofpc-slave: 
OpenFPC 슬레이브 장치로, 네트워크 트래픽을 수집하는 시스템으로 Sourcefire의 daemonlogger를 사용한다. 몇몇 환경에서 단지 한개의 슬레이브가 사용되지만, OpenFPC는 다중 슬레이브들이 하나의 ofpc-master와 연결될 수 있다.
ofpc-master:
OpenFPC 마스터 장치로, 이는 패킷을 수집하지는 않고 PCAP 요청을 전달하고, 그 결과를 클라이언트에게 전달하는 역할을 수행한다. "proxy"로 볼 수 있는데, 트래픽을 라우팅하고 다른 마스터에게 릴레이 하는 장치로서 사용된다.

그림. OpenFPC 디플로이먼트 예제 

현재 기능(2013.03.05):

  • Client / Server or Client / Master / Slave operation
  • Node stacking with OpenFPC Proxy devices. Proxy -> Node, Proxy->Proxy->Proxy->Node->etc
  • Delivery of PCAPs to client (fetch)
  • Storage of PCAPs on slave / master (store)
  • Simple install and setup
  • GUI included with session search capability
  • Automated STORE actions from external tools 
  • Signing the MD5s of each extract
  • Distributed queries (Extract data from multiple OpenFPC nodes at the same time)
  • Session summary data (top hosts, ports, connections etc).
  • Combining distributed extracts with text reports
  • Supported log formats
    • Snort fast (native)
    • Snort fast (Barnyard)
    • Snort syslog
    • Sourcefire 3D IPS events 4.9
    • Exim4 (tested with Debian lenny)
    • Prads
    • BPF syntax
    • General search (--src-addr 192.168.0.1 --dst-port 22 --proto TCP etc) 
  • Tested on Ubuntu 10.04.

Planned for first "full" release.

  • SSL for communications (move to IO::Socket::SSL)
  • Full documentation (looking for help here as well!)
  • Central GUI for extraction
  • Connection summary information (graphical representation)