nfstream/nfstream
NFStream: a Flexible Network Data Analysis Framework.
해결하는 문제
NFStream은 온라인(실시간) 및 오프라인(pcap 파일) 데이터 분석을 위한 고수준 파이썬 프레임워크를 제공함으로써 네트워크 트래픽 분석 과정을 단순화합니다. 특히 암호화된 트래픽에서 의미 있는, 재현 가능한 특징을 추출하는 어려움을 해결하며, 머신러닝 모델에 사용할 수 있도록 이러한 데이터를 표준화된 방식으로 준비합니다.
작동 방식
NFStream은 CFFI 기반의 고성능 계산 엔진을 사용하여 네트워크 데이터를 처리하며, 멀티플랫폼 실행을 지원합니다. nDPI를 사용하여 깊은 패킷 검사를 수행하여 암호화된 애플리케이션을 식별하고 메타데이터(예: TLS 또는 SSH 지문)를 추출합니다. 또한 시스템 커널을 조사하여 네트워크 흐름을 특정 로컬 프로세스(PID 및 프로세스 이름)와 연결할 수 있습니다. 특징 추출을 위해, 사후 통계(패킷 크기/도착 간격의 평균, 표준편차)와 초기 흐름 특징(첫 n개 패킷에 대한 SPLT 분석)을 계산합니다.
대상 사용자
네트워크 연구자 및 보안 엔지니어를 위한 것으로, 실용적인 네트워크 흐름 분석을 수행하거나, 재현 가능한 실험을 만들거나, 트래픽 관리 및 분류를 위한 머신러닝 모델을 배포해야 하는 경우에 적합합니다.
주요 특징
- 암호화된 트래픽 가시성: nDPI를 사용하여 암호화된 애플리케이션을 식별하고 메타데이터 지문을 추출합니다.
- 시스템 통합: 커널 조사 기능을 통해 네트워크 흐름을 실제 시스템 프로세스와 매핑합니다.
- 머신러닝 준비 완료: 표준화된 통계적 특징 추출을 제공하며, Pandas 및 CSV로 직접 내보내어 모델 훈련을 쉽게 할 수 있습니다.
- 고성능: 리눅스에서 AF_PACKET_V3/FANOUT를 활용하고, PyPy를 지원하여 더 빠른 실행을 가능하게 합니다.
- 확장성: NFPlugins라는 플러그인 시스템을 통해 사용자가 사용자 정의 흐름 특징을 생성할 수 있습니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트