Projektet ntop, der udvikler værktøjer til indfangning og analyse af trafik, har offentliggjort værktøjer til dybdeinspektion af pakker nDPI 5.0, som fortsætter udviklingen af OpenDPI-biblioteket. nDPI-projektet blev grundlagt efter et mislykket forsøg på at overføre ændringer til OpenDPI-repositoriet, som ikke længere bliver vedligeholdt. nDPI-koden er skrevet i C og distribueres under LGPLv3-licensen.
Systemet gør det muligt at bestemme de anvendte applikationslagprotokoller i trafikken ved at analysere karakteren af netværksaktiviteten uden at være bundet til netværksporte (det kan bestemme kendte protokoller, hvis håndterere modtager forbindelser på ikke-standard netværksporte, for eksempel hvis http ikke sendes fra port 80, eller omvendt, når en anden netværksaktivitet forsøges kamufleret som http ved at køre på port 80).
Forskellene fra OpenDPI ligger i understøttelsen af yderligere protokoller, porteringen til Windows-platformen, optimering af ydeevne, tilpasning til anvendelse i applikationer til realtids trafikovervågning (nogle specifikke funktioner, der sænkede motoren, er fjernet), muligheden for opsætning som et kernemodul til Linux og støtte til identifikation af subprotokoller.
Der understøttes definition af 56 typer netværkstrusler (flow risk) og over 450 protokoller og applikationer (fra OpenVPN, Tor, QUIC, SOCKS, BitTorrent og IPsec til Telegram, Viber, WhatsApp, PostgreSQL samt anmodninger til Gmail, Office 365, Google Docs og YouTube). Der er en dekoder til server- og klientkommunikation. SSL certificates, der gør det muligt at identificere protokoller (for eksempel Citrix Online og Apple iCloud) ved hjælp af krypteringscertifikater. For analyse af indhold i pcap-dumps eller aktuel trafik gennem netværksinterfacet leveres nDPIreader-værktøjet.
I den nye version:
- Der er implementeret en universel mekanisme til identifikation af trafik, der kombinerer metadata om TCP-aftryk, TLS-certifikathash og JA4 (identifikatorer til bestemmelse af netværksprotokoller og applikationer) i én trafikfingerprint. Den nye mekanisme gør det muligt at bestemme og sammenligne krypteret eller obfuskeret trafik mere præcist.
- Muligheden for at identificere TLS-, QUIC- og HTTP-strømme, hvor værtsnavne indgår (f.eks. i SNI til TLS/QUIC og i Host-headeren til HTTP), er blevet tilføjet; tidligere blev der ikke udført opløsning via DNS. Sådan aktivitet kan anvendes til at opdage anomalier, skjulte dataoverførselskanaler og metoder til omgåelse af filtrering.
- Grænsen for antallet af identificerbare protokoller og trafiktyper er hævet til 2^16, hvilket muliggør identifikation af praktisk talt ubegrænsede protokoller ved trafikinspektion. Alle tilgængelige protokoller er nu aktiveret som standard.
- Der er tilføjet nye muligheder til reglerne for klassificering af trafik efter fingerprints, JA4-applikationer og protokoller, HTTP-URL'er og kategorier.
- Understøttelsen af FPC (First Packet Classification) er forbedret, hvilket sigter mod at bestemme protokoller, applikationer og tjenester ud fra den første pakke, der sendes ved oprettelse af forbindelse. FPC hjælper med at reducere CPU-belastningen betydeligt ved trafikinspektion.
- Understøttelsen af pseudoprotokoller som ADULT_CONTENT, LLM og ADS_ANALYTICS_TRACK er fjernet, hvorefter klassificering nu er baseret på kategorier.
- Der er tilføjet støtte og muligheden for at analysere nye protokoller, herunder Microsoft Delivery Optimization, Rockstar Games, Kick.com, MELSEC, Hamachi, GLBP, Matter, TriStation, Samsung SDP, ESPN og Akamai.
- Der er tilføjet nye underkategorier, og klassifikationen af Amazon/AWS-tjenester er blevet udvidet.
- Omkring 30 nye kategorier er blevet tilføjet, og detaljegraden i trafikanalysen er forbedret.
- Der er tilføjet en analyser til størrelsen af datablokke for TLS-forbindelser.
- Muligheden for at oprette protokolstakke, der dækker to eller flere protokoller ved trafikklassifikation, er blevet tilføjet.
- Nye API'er til rangering af trafik og kodning/afkodning af hex-sekvenser er blevet tilføjet.
- Lister over bots, netværksscannere og mining-pools er blevet opdateret.
- Koden til parsing af HTTP-, TLS- og STUN-protokoller er blevet opdateret.
- Initialiseringen er blevet accelereret, og effektiviteten af hukommelsesstyringen er forbedret.
Kilde: opennet.ru
