Projekt , vyvíjející nástroje pro zachytávání a analýzu provozu, vydání nástrojů pro hloubkovou inspekci paketů , pokračující ve vývoji knihovny . Projekt nDPI byl založen po neúspěšné snaze o přenos změn do OpenDPI, který zůstal bez údržby. Kód nDPI je napsán v jazyce C a pod licencí LGPLv3.
Projekt identifikovat v provozu používané protokoly na úrovni aplikace, analyzováním povahy síťové aktivity bez vazby na síťové porty (může identifikovat známé protokoly, jejichž zpracovatelé přijímají připojení na nestandardních síťových portech, například pokud se http poskytuje na jiném portu než 80, nebo naopak, když se nějaká jiná síťová aktivita snaží maskovat pod http spuštěním na portu 80).
Rozdíly oproti OpenDPI spočívají v podpoře dalších protokolů, portování pro platformu Windows, optimalizaci výkonu, přizpůsobení pro použití v aplikacích pro monitorování provozu v reálném čase (byly odstraněny některé specifické funkce, které zpomalovaly vykonávání),
možnosti sestavení ve formě modulu jádra Linux a podpoře identifikace subprotokolů.
Celkem podporuje identifikaci 238 protokolů a aplikací, od
OpenVPN, Tor, QUIC, SOCKS, BitTorrent a IPsec až po Telegram,
Viber, WhatsApp, PostgreSQL a dotazy na GMail, Office365,
GoogleDocs a YouTube. Disponuje dekodérem serverových a klientských SSL certifikátů, který umožňuje identifikovat protokol (například Citrix Online a Apple iCloud) za použití šifrovacího certifikátu. Pro analýzu obsahu pcap dumpů nebo aktuálního provozu přes síťové rozhraní je dodávána utilita nDPIreader.
$ ./nDPIreader -i eth0 -s 20 -f "host 192.168.1.10"
Zjištěné protokoly:
DNS pakety: 57 bajty: 7904 toky: 28
SSL_No_Cert pakety: 483 bajty: 229203 toky: 6
FaceBook pakety: 136 bajty: 74702 toky: 4
DropBox pakety: 9 bajty: 668 toky: 3
Skype pakety: 5 bajty: 339 toky: 3
Google pakety: 1700 bajty: 619135 toky: 34
V novém vydání:
- Informace o protokolu se nyní zobrazuje okamžitě při detekci, aniž by bylo třeba čekat na úplné metadatové informace (dokonce i tehdy, když konkrétní pole ještě nebyla rozložena kvůli neobdržení odpovídajících síťových paketů), což je relevantní pro analyzátory provozu, které musí okamžitě reagovat na určité druhy provozu. Pro aplikace, které potřebují úplné rozložení protokolu, byl navržen API ndpi_extra_dissection_possible(), který umožňuje zajistit, že všechna metadata protokolu jsou definována.
- Bylo realizováno podrobnější rozložení TLS s extrakcí údajů o platnosti certifikátu a SHA-1 hash certifikátu.
- Do aplikace nDPIreader byl přidán příznak „-C“ pro export ve formátu CSV, což umožňuje pomocí dalšího nástroje ntop dostatečně složité statistické vzorkování. Například pro určení IP uživatele, který nejdéle sledoval filmy na NetFlix:
$ ndpiReader -i netflix.pcap -C /tmp/netflix.csv
$ q -H -d ‘,’ "select src_ip,SUM(src2dst_bytes+dst2src_bytes) from /tmp/netflix.csv where ndpi_proto like ‘%NetFlix%’ group by src_ip"192.168.1.7,6151821
- Byla přidána podpora navržená v určení škodlivé aktivity skryté v šifrovaném provozu pomocí analýzy velikosti paketů a doby odeslání/zpoždění. V ndpiReader je metoda aktivována příznakem „-J“.
- Byla zajištěna klasifikace protokolů podle kategorií.
- Přidána podpora pro výpočet IAT (Inter-Arrival Time) pro určení anomálií v používání protokolu, například pro odhalení používání protokolu při provádění DoS útoků.
- Byly přidány možnosti analýzy dat na základě počítaných metrik, jako je entropie, průměr, směrodatná odchylka a rozptyl.
- Byla navržena počáteční verze bindingů pro jazyk Python.
- Byl přidán režim identifikace čitelných řetězců v provozu pro odhalování úniků dat. V
ndpiReader se režim aktivuje příznakem „-e“. - Byla přidána podpora metody identifikace TLS klientů , která umožňuje na základě zvláštností vyjednávání připojení a zadaných parametrů určit, jaký software se používá pro navázání spojení (například umožňuje určit použití Tor a dalších typových aplikací).
- Byla přidána podpora metod identifikace implementací SSH () a DHCP.
- Byly přidány funkce pro serializaci a deserializaci dat ve
formátech Type-Length-Value (TLV) a JSON. - Byla přidána podpora protokolů a služeb: DTLS (TLS přes UDP),
Hulu,
TikTok/Musical.ly,
WhatsApp Video,
DNSoverHTTPS,
Datasaver,
Line,
Google Duo, Hangout,
WireGuard VPN,
IMO,
Zoom.us. - Byla vylepšena podpora analýzy TLS, SIP, STUN,
Viber,
WhatsApp,
AmazonVideo,
SnapChat,
FTP,
QUIC
OpenVPN UDP,
Facebook Messenger a Hangout.
Zdroj: opennet.ru
