aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG.md185
1 files changed, 185 insertions, 0 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index e3f5258d7..5a4ba0956 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,190 @@
# CHANGELOG
+#### nDPI 4.12 (Dec 2024)
+
+## Major Changes
+
+- Added detection of encrypted/obfuscated OpenVPN flows (https://github.com/ntop/nDPI/pull/2547, https://github.com/ntop/nDPI/pull/2560)
+- Added detection of encrypted/obfuscated/proxied TLS flows (https://github.com/ntop/nDPI/pull/2553)
+- Implemented nDPI TCP fingerprint (https://github.com/ntop/nDPI/commit/6b6dad4fdb2e60cd2887f7d381bcab2387ba9507)
+
+For further details on these three topics, see https://www.ntop.org/ntop/a-deep-dive-into-traffic-fingerprints/
+
+## New Supported Protocols and Services
+
+This is the list of the new supported protocols, grouped by category.
+Information about these new protocols is available on https://github.com/ntop/nDPI/blob/dev/doc/protocols.rst
+
+* `NDPI_PROTOCOL_CATEGORY_IOT_SCADA`:
+ * `NDPI_PROTOCOL_CNP_IP` (https://github.com/ntop/nDPI/pull/2521, https://github.com/ntop/nDPI/pull/2531)
+ * `NDPI_PROTOCOL_ATG` (https://github.com/ntop/nDPI/pull/2527)
+ * `NDPI_PROTOCOL_TRDP` (https://github.com/ntop/nDPI/pull/2528)
+ * `NDPI_PROTOCOL_DICOM` (https://github.com/ntop/nDPI/commit/4fd12278b111eeaf1068876f77fb0a6176f69a34)
+* `NDPI_PROTOCOL_CATEGORY_DATA_TRANSFER`:
+ * `NDPI_PROTOCOL_LUSTRE` (https://github.com/ntop/nDPI/pull/2544)
+* `NDPI_PROTOCOL_CATEGORY_VPN`:
+ * `NDPI_PROTOCOL_NORDVPN` (https://github.com/ntop/nDPI/commit/f350379e95935448c22a387a561b57d50251f422)
+ * `NDPI_PROTOCOL_SURFSHARK` (https://github.com/ntop/nDPI/commit/5b0374c28b60a39f5720cb44ea5f711774c511af)
+ * `NDPI_PROTOCOL_CACTUSVPN` (https://github.com/ntop/nDPI/commit/c99646e4afee9489de9b62d7cb9b81176f6c01a3)
+ * `NDPI_PROTOCOL_WINDSCRIBE` (https://github.com/ntop/nDPI/commit/2964c23ca1f9af4df5c93e337987c6823b2ac663)
+* ` NDPI_PROTOCOL_CATEGORY_MUSIC`:
+ * `NDPI_PROTOCOL_SONOS` (https://github.com/ntop/nDPI/commit/806f47337d591b82ba2db211629b2b25429cc21e)
+* `NDPI_PROTOCOL_CATEGORY_CHAT`:
+ * `NDPI_PROTOCOL_DINGTALK` (https://github.com/ntop/nDPI/pull/2581)
+ * `NDPI_PROTOCOL_PALTALK` (https://github.com/ntop/nDPI/pull/2606)
+* `NDPI_PROTOCOL_CATEGORY_WEB`:
+ * `NDPI_PROTOCOL_NAVER` (https://github.com/ntop/nDPI/pull/2610)
+* `NDPI_PROTOCOL_CATEGORY_SHOPPING`:
+ * `NDPI_PROTOCOL_SHEIN` (https://github.com/ntop/nDPI/pull/2615)
+ * `NDPI_PROTOCOL_TEMU` (https://github.com/ntop/nDPI/pull/2615)
+ * `NDPI_PROTOCOL_TAOBAO` (https://github.com/ntop/nDPI/pull/2615)
+* `NDPI_PROTOCOL_CATEGORY_NETWORK`:
+ * `NDPI_PROTOCOL_MIKROTIK` (https://github.com/ntop/nDPI/pull/2618)
+* `NDPI_PROTOCOL_CATEGORY_STREAMING`:
+ * `NDPI_PROTOCOL_PARAMOUNTPLUS` (https://github.com/ntop/nDPI/pull/2628)
+* `NDPI_PROTOCOL_CATEGORY_VIRTUAL_ASSISTANT`:
+ * `NDPI_PROTOCOL_YANDEX_ALICE` (https://github.com/ntop/nDPI/pull/2633)
+
+## New features
+
+* Implemented JA4 raw fingerprint (https://github.com/ntop/nDPI/commit/42ded07139e41c54a9ae2c8875a9e2c56d50af41)
+* Add monitoring capability (for STUN flows) (https://github.com/ntop/nDPI/pull/2588)
+* Implemented DNS host cache (https://github.com/ntop/nDPI/commit/55fa92490af593358a0b13ad1708ee9b14eec128)
+* Add a configuration file to `ndpiReader` (https://github.com/ntop/nDPI/pull/2629)
+
+## New algorithms
+
+* Implemented algorithms for K-Nearest Neighbor Search (KNN) (https://github.com/ntop/nDPI/pull/2554)
+* Added `ndpi_quick_encrypt()` and `ndpi_quick_decrypt()` API calls (https://github.com/ntop/nDPI/pull/2568)
+
+## Improvements
+
+* Fixed probing attempt risk that was creating false positives (https://github.com/ntop/nDPI/commit/fc4fb4d409c43af8b9bdbd9d0cf8d9b742408f26)
+* Fixes Viber false positive detection (https://github.com/ntop/nDPI/commit/5610145c6c2f0aebd6adee7717145ab44c29f848)
+* ahocorasick: fix mem leaked AC_NODE_T object (https://github.com/ntop/nDPI/pull/2258, https://github.com/ntop/nDPI/pull/2522)
+* Endian-independent implementation of IEEE 802.3 CRC32 (https://github.com/ntop/nDPI/pull/2529)
+* Improved Yahoo matching for Japanese traffic (https://github.com/ntop/nDPI/pull/2539)
+* HTTP, QUIC, TLS: allow to disable sub-classification (https://github.com/ntop/nDPI/pull/2533)
+* Bittorrent fixes (https://github.com/ntop/nDPI/pull/2538)
+* bins: fix `ndpi_set_bin`, `ndpi_inc_bin` and `ndpi_get_bin_value` (https://github.com/ntop/nDPI/pull/2536)
+* TLS: better state about handshake (https://github.com/ntop/nDPI/pull/2534)
+* OpenVPN: improve detection (https://github.com/ntop/nDPI/commit/c713c894b6146c7884e24895cd3df1d7e35ee120)
+* OpenVPN, Wireguard: improve sub-classification (https://github.com/ntop/nDPI/commit/85ebda434d44f93e656ee5d3e52dc258134495d0)
+* oracle: fix dissector (https://github.com/ntop/nDPI/pull/2548)
+* RTMP: improve detection (https://github.com/ntop/nDPI/pull/2549)
+* RTP: fix identification over TCP (https://github.com/ntop/nDPI/commit/def86ba0a9f090cebda3d2e521e22f5d8f2f0f35)
+* QUIC: add a basic heuristic to detect mid-flows (https://github.com/ntop/nDPI/pull/2550)
+* Enhanced DHCP fingerprint (https://github.com/ntop/nDPI/commit/b77d3e3ab6d216cda9a092794a5fb8b1eac86fe6)
+* dns: add a check before setting `NDPI_MALFORMED_PACKET` risk (https://github.com/ntop/nDPI/pull/2558)
+* Tls out of order (https://github.com/ntop/nDPI/pull/2561)
+* Added DHCP class identifier (https://github.com/ntop/nDPI/commit/7cc2432098ccd85c6de34e177f1115272c8d382b)
+* Improved fingerprint serialization (https://github.com/ntop/nDPI/commit/40fefd59a7bcf087c89c1f62adfc2fb8eccb126a)
+* Fixed handling of spurious TCP retransmissions (https://github.com/ntop/nDPI/commit/eeb1c281adae5002d8f9c981c0b145a88a814548)
+* TLS: improve handling of Change Cipher message (https://github.com/ntop/nDPI/pull/2564)
+* Added pki.goog domain name (https://github.com/ntop/nDPI/commit/26b1899d9274b07b04032468e33a14a36756a63f)
+* TTL Cache Fix (https://github.com/ntop/nDPI/pull/2582)
+* Added STUN fingerprint code (https://github.com/ntop/nDPI/commit/ab3e07335409f5c0710cdffbbf7091578f18f128)
+* TLS: heuristics: fix memory allocations (https://github.com/ntop/nDPI/pull/2577)
+* TLS: detect abnormal padding usage (https://github.com/ntop/nDPI/pull/2579)
+* Enhanced DHCP fingerprint (https://github.com/ntop/nDPI/commit/4df60a888b374e4b41298d0d63f98fcaff05786d)
+* STUN: fix monitoring of Whatsapp and Zoom flows (https://github.com/ntop/nDPI/pull/2590
+* Exports DNS A/AAAA responses (up to 4 addresses) (https://github.com/ntop/nDPI/commit/45323e3bf8a0fc56fd5f74c12f78e2f27429e701)
+* Added new API calls for serializing/restoring the DNS cache (https://github.com/ntop/nDPI/commit/b9348e9d6e0e754c4b17661c643ca258f1540ca1)
+* Fixed JA4 invalid computation due to code bug and uninitialized values (https://github.com/ntop/nDPI/commit/2b4061108215304c131aea314229719975c8f1d9)
+* Add configuration of TCP fingerprint computation (https://github.com/ntop/nDPI/pull/2598)
+* STUN: if the same metadata is found multiple times, keep the first value (https://github.com/ntop/nDPI/pull/2591)
+* STUN: minor fix for RTCP traffic (https://github.com/ntop/nDPI/pull/2593)
+* Added support for RDP over TLS (https://github.com/ntop/nDPI/commit/6dc4533c3cc0786c740f91cedab74e54623349b2)
+* STUN: fix monitoring with RTCP flows (https://github.com/ntop/nDPI/pull/2603)
+* Fixes TCP fingerprint calculation when multiple EOL are specified (https://github.com/ntop/nDPI/commit/d5236c0aafe0b9622da752147ff4fbafd52e7582)
+* Added DHCP fingerprint (https://github.com/ntop/nDPI/commit/fecc378e0426cbad42da636bb075dadb3fb24e61)
+* DNS reponse addresses are now serialized in JSON (https://github.com/ntop/nDPI/commit/0d4c1e9179d03ee099a943f8420c54174c976da7)
+* TikTok cleanup (https://github.com/ntop/nDPI/commit/a97a130e59d635c5acfccf6049499d201dc90ba3)
+* Added HTTP credentials extraction (https://github.com/ntop/nDPI/commit/412ca8700fc53da705c6aa386c736a400279a614)
+* TLS: export heuristic fingerprint as metadata (https://github.com/ntop/nDPI/pull/2609)
+* SIP: rework detection and extract metadata (https://github.com/ntop/nDPI/pull/2614)
+* Zoom: fix heap-buffer-overflow (https://github.com/ntop/nDPI/pull/2621)
+* Small updates on domains list (https://github.com/ntop/nDPI/pull/2623)
+* RTP, STUN: improve detection of multimedia flow type (https://github.com/ntop/nDPI/pull/2620)
+* Update `flow->flow_multimedia_types` to a bitmask (https://github.com/ntop/nDPI/pull/2625)
+* Improved TCP probing attempt (https://github.com/ntop/nDPI/commit/9e67885aff6bbfc41157c620752a6770b6b62b23)
+* When triggering risk "Known Proto on Non Std Port", nDPi now reports the port that was supposed to be used as default (https://github.com/ntop/nDPI/commit/56e52448c43ee069b283501327bd15067d877d57)
+* SIP: export metadata via json (https://github.com/ntop/nDPI/pull/2630)
+* STUN: improve Whatsapp monitoring (https://github.com/ntop/nDPI/pull/2635)
+* Enhanced STUN stats](https://github.com/ntop/nDPI/commit/6b6b5c7c4e4e6112dcd6722a8685ee3517d7d5bc)
+* Added STUN custom support (https://github.com/ntop/nDPI/commit/ea1b8dc1cb3caffbe4937c9b8ca1a3ecde4c3351)
+* signal: improve detection of chats and calls (https://github.com/ntop/nDPI/pull/2637)
+* STUN: fix monitoring (https://github.com/ntop/nDPI/pull/2639)
+* STUN/RTP: improve metadata extraction (https://github.com/ntop/nDPI/pull/2641)
+
+## Misc
+* Fix `verify_dist_tarball.sh` after latest release (https://github.com/ntop/nDPI/pull/2519)
+* Removed unnecessary includes (https://github.com/ntop/nDPI/pull/2525)
+* Fixed initialization (https://github.com/ntop/nDPI/commit/e72255445c5654d1d1f932583fbf5f01c187e946, https://github.com/ntop/nDPI/commit/9b1736aa8960170d32eac7c954194eff9436fbbc)
+* Fix url for downloading X/Twitter crawler IPs (https://github.com/ntop/nDPI/pull/2526)
+* Introduced `ndpi_master_app_protocol` typedef (https://github.com/ntop/nDPI/commit/53a6bae365618f9b301cf51e5f3f9d5450b0e280)
+* Added `ndpi_get_protocol_by_name*` API call (https://github.com/ntop/nDPI/commit/f7ee92c690ebce8841f1ab973b3d63146952f912)
+* Changed `NDPI_MALICIOUS_JA3` to `NDPI_MALICIOUS_FINGERPRINT` (https://github.com/ntop/nDPI/commit/bad0e60813e0b23a0cd96c92e58b9caa08eb8dec)
+* Added `ndpi_is_proto_*` and `ndpi_get_proto_by_*` API call (https://github.com/ntop/nDPI/commit/9263d4dd873c4e2068e392a692b20609b1ec5a9a)
+* Added `ndpi_risk2code` and `ndpi_code2risk` API call (https://github.com/ntop/nDPI/commit/5436dddef55e068095ca56b114715a91a551bf26)
+* Added `print_ndpi_address_port` in nDPi API (https://github.com/ntop/nDPI/commit/d769b23e05f93158302cf6904b182860b05545e9)
+* Print risk code in `ndpi_dump_risks_score` (https://github.com/ntop/nDPI/commit/69fd4aadf3ed362ba67f03975f8b72c733bca7f7)
+* Align serialized risk names to all others (first letter; uppercase letter) (https://github.com/ntop/nDPI/pull/2541)
+* wireshark: extcap: fix output data link type (https://github.com/ntop/nDPI/pull/2543)
+* wireshark: extcap: export flow risk info (https://github.com/ntop/nDPI/commit/23ae3d0c265590a138f156c2193998e3b8f2fdd5)
+* Added -E option for dumping flow fingerprint (https://github.com/ntop/nDPI/commit/fda3730cf0bdec6b4a1cd8e38d3a88c33f0d0ef1)
+* Reworked fingerprint export now in JSON (https://github.com/ntop/nDPI/commit/6de91c78955a0d85d97518c273366bd9d6ede5de)
+* wireshark: extcap: rework trailer header (https://github.com/ntop/nDPI/pull/2557)
+* fuzz: try to be a little bit faster (https://github.com/ntop/nDPI/pull/2559, https://github.com/ntop/nDPI/pull/2570, https://github.com/ntop/nDPI/pull/2578)
+* domain lists are not loaded when -E is used (https://github.com/ntop/nDPI/commit/1d1edfc1c787bfe91d457f632c148447f8912842)
+* Implemented ndpi_strrstr() (https://github.com/ntop/nDPI/commit/191694f797639fc0b56adcf050bc9cfa8dc02f3d, https://github.com/ntop/nDPI/pull/2570)
+* Allow IP guess before port in `ndpi_detection_giveup` (https://github.com/ntop/nDPI/pull/2562)
+* Replaced traces with debug messages (https://github.com/ntop/nDPI/commit/08a37dc779dde9f85989459a946195e1d22914fc)
+* wireshark: lua: add script for QUIC fingerprints (https://github.com/ntop/nDPI/pull/2566)
+* Added new API calls `ndpi_hex2bin` and `ndpi_bin2hex` (https://github.com/ntop/nDPI/commit/42cfd29cc3d7dd2c883c8fd3c5f53319f752fbfc)
+* Add enable/disable guessing using client IP/port (https://github.com/ntop/nDPI/pull/2569)
+* CI: add tests on macos-15 (https://github.com/ntop/nDPI/pull/2571)
+* Let the library returning the packet direction calculated internally (https://github.com/ntop/nDPI/pull/2572)
+* wireshark: extcap: allow configuration of OpenVPN/TLS heuristics via GUI (https://github.com/ntop/nDPI/pull/2576)
+* CI: remove macos-12 (https://github.com/ntop/nDPI/pull/2592)
+* Moved ndpi_lru in a separate file (https://github.com/ntop/nDPI/commit/7629b94a2671611b302a7d95a5392f78c6729f77)
+* Added -N option for dumping/restoring the DNS cache (when enabled) (https://github.com/ntop/nDPI/commit/2e5edd2cc956b420f6b9e2a2ffec7d435694a69a)
+* Added JA4 stats (https://github.com/ntop/nDPI/commit/b53e4fc661377fe7f9cc135d46db2d5dd15060ab)
+* Added support for printing JA4r when enabled (https://github.com/ntop/nDPI/commit/faaa5c5799440117f7a9cc78499433396dba7eb3)
+* Added TLS fingerprints (https://github.com/ntop/nDPI/commit/37a654e33fc03c2cd0c956e860b634b2ad7d5b60)
+* Added `ndpi_is_public_ipv4` (https://github.com/ntop/nDPI/commit/3e04321eab515992ef2af96af916fa5155f07a7e)
+* Parser for ndpiReader JSON files (https://github.com/ntop/nDPI/commit/97ce7293920646d3b8e052ef467d23f086baf982)
+* Added -L <domain suffix> for loading domain suffixes (https://github.com/ntop/nDPI/commit/afc4d9e34d61a45c5daeffcdcc187bc0b105ef3e)
+* ndpiReader: add some statistics about monitoring (https://github.com/ntop/nDPI/pull/2602)
+* ndpiReader: explicitly remove non ipv4/6 packets (https://github.com/ntop/nDPI/pull/2601)
+* Fix `ndpi_tot_allocated_memory` calculation if `ndpi_calloc()` used (https://github.com/ntop/nDPI/pull/2604)
+* ndpiReader: fix command line options used by wireshark (https://github.com/ntop/nDPI/pull/2605)
+* ml tests for dga detection (https://github.com/ntop/nDPI/pull/2607)
+* Add new json serialization type `ndpi_serialization_format_inner_json` (https://github.com/ntop/nDPI/commit/8ad34b381ca5d352dc4f877f93bc0f7625d8b28c)
+* fuzz: improve coverage (https://github.com/ntop/nDPI/pull/2612)
+* Exported `is_ndpi_proto` definition (https://github.com/ntop/nDPI/commit/183175fc6b4c9e610fb22dfd69946cc7063b6a63)
+* Crash fix when -f is specified with a non-existing pcap file (-i) (https://github.com/ntop/nDPI/commit/35ef56cc2467e907fa1827a4e8058893dea0b8a7)
+* Unify ndpi debug logging to always use a u16 protocol id (https://github.com/ntop/nDPI/pull/2613)
+* Added ndpi_intoav6() (https://github.com/ntop/nDPI/commit/de8c326cd218867b88c25b0e6c0be9e2c909b1e9)
+* Debian/Ubuntu packaging: use `--enable-no-sign` to build `*.deb` packages w/o signing those (https://github.com/ntop/nDPI/pull/2616)
+* ndpiReader: fix statistic about total number of flows (https://github.com/ntop/nDPI/pull/2622)
+* Update GitHub CI actions (https://github.com/ntop/nDPI/pull/2627)
+* Removed old USE_LEGACY_AHO_CORASICK code (https://github.com/ntop/nDPI/commit/170849f156fe7b803eb08f91722bfaa576f3084f)
+* Fix license typo (https://github.com/ntop/nDPI/pull/2638)
+* Update script to download Azure IP list ranges (https://github.com/ntop/nDPI/pull/2640)
+
+## New Contributors
+
+* @wssxsxxsx made their first contribution in https://github.com/ntop/nDPI/pull/2527
+* @liwilson1 made their first contribution in https://github.com/ntop/nDPI/pull/2539
+* @YellowMan02 made their first contribution in https://github.com/ntop/nDPI/pull/2607
+* @Klavishnik made their first contribution in https://github.com/ntop/nDPI/pull/2633
+* @adipierro made their first contribution in https://github.com/ntop/nDPI/pull/2638
+
+**Full Changelog**: https://github.com/ntop/nDPI/compare/4.10...4.12
+
+
+
#### nDPI 4.10 (Aug 2024)
## Major Changes