aboutsummaryrefslogtreecommitdiff
path: root/dependencies
Commit message (Collapse)AuthorAge
* Merge commit 'fb1dcc71de39e6dd5c11b8bc4288ec5e618fa946'1.7rc2Toni Uhlig2024-10-17
|
* Merge commit '9a14454d3c5589373253571cee7428c593adefd9'Toni Uhlig2024-10-17
|
* Read and parse configuration files. Fixes #41. (#42)1.7rc1Toni2024-10-16
| | | | | | | | | | | Read and parse configuration files. Fixes #41. * supports nDPId / nDPIsrvd via command line parameter `-f` * nDPId: read general/tuning and libnDPI settings * support for settings risk domains libnDPI option via config file or via `-R` (Fixes #45, thanks to @UnveilTech) * added some documentation in the config file * adjusted Systemd and Debian packaging to make use of config files Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Fix SonarCloud complaint.Toni Uhlig2024-08-16
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Fix some SonarCloud complaints.Toni Uhlig2024-02-13
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Replaced ambiguous naming of "JSON string" to more accurate "JSON message".Toni Uhlig2023-12-04
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* flow-info.py: Do not print any information if a flow is "empty" meaning no ↵Toni Uhlig2023-12-01
| | | | | | | | L4 payload seen so far. * added JsonDecodeError to provide more information if builtin JSON decoder fails Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Fixed possible buffer underflow.Toni Uhlig2023-11-20
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Fixed SonarCloud complaints.Toni Uhlig2023-11-20
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Fixed more SonarCloud complaints.Toni Uhlig2023-11-07
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Apple/BSD port (#30)Toni2023-11-06
| | | | | | | | * Add MacOS to Github CI builds. * Fixed libnDPI-4.8 CI build. * Fixed missing include for `struct sockaddr*`. * Reworked IPv4 address and netmask retrieval. Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Add DBUS suspicious flow event notification daemon.Toni Uhlig2023-11-03
| | | | | | * nDPIsrvd.h: support for closing/resetting a nDPIsrvd_socket (required for a reconnect) Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Sonarcloud integrationToni Uhlig2023-10-05
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Fix issues detected by SonarCloud.Toni Uhlig2023-10-05
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Enable custom JSON filter expressions for Python scripts.Toni Uhlig2023-08-27
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* c-captured extensionToni Uhlig2023-08-14
| | | | | | | * capture packets after error event occurred * add "logging" and "capture" mode Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Added Keras based Autoencode (Work-in-Progress!)Toni Uhlig2023-07-16
| | | | | | * minor fixes Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Small CI/CD/nDPIsrvd.py improvements.Toni Uhlig2023-01-17
| | | | | | * Updated examples/js-rt-analyzer and examples/js-rt-analyzer-frontend Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* nDPid: Fixed base64encode bug which lead to invalid base64 strings.Toni Uhlig2023-01-09
| | | | | | | | * py-semantic-validation: Decode base64 raw packet data as well * nDPIsrvd.py: Added PACKETS_PLEN_MAX * nDPIsrvd.py: Improved JSON parse error/exception handling Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* nDPIsrvd: Provide workaround for change user/group.Toni Uhlig2022-11-13
| | | | | | | | * nDPId/nDPIsrvd/c-examples: Parameter parsing needs to be improved if `strdup()` in combination with static strings is used. * Other non-critical fixes. Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* nDPIsrvd.h: Provide two additional convenient API functions.Toni Uhlig2022-11-06
| | | | | | | * nDPIsrvd_json_buffer_string * nDPIsrvd_json_buffer_length Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Increased network buffer size to 33792 bytes.Toni Uhlig2022-10-30
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* c-analysed: improved feature extraction from "analyse" eventsToni Uhlig2022-10-01
| | | | | | | | * c-captured: update detected risks on "detection-update" events * c-collectd: added missing flow breed * c-collectd: PUTVAL macros are more flexible now Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Added nDPIsrvd-analysed to generate CSV files from analyse events.Toni Uhlig2022-09-30
| | | | | | | * nDPIsrvd.h: iterate over JSON arrays * nDPId: calculate l3 payload packet entropies for analysis Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Refactored client distributor C API.Toni Uhlig2022-09-25
| | | | | | | | | | | * Still not perfect, but the code before was not even able to deal with JSON arrays. Use common "speaking" function names for all functions in nDPIsrvd.h * Provide a more or less generic and easy extendable JSON walk function. * Modified C examples to align with the changed C API. * c-collectd: Reduced lot's of code duplication by providing mapping tables. * nDPId: IAT array requires one slot less (first packet has always an IAT of 0). Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* nDPIsrvd.h: Fixed bug during token parsing/hashing. Do not hash array contents.Toni Uhlig2022-09-23
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Improved flown analyse event:Toni Uhlig2022-09-22
| | | | | | | | * store packet directions * merged direction based IATs * merged direction based PKTLENs Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* flow-info.py: Command line arguments --no-color, --no-statusbar (both useful ↵Toni Uhlig2022-09-22
| | | | | | | | for tests/CI) and --print-analyse-results. * run_tests.sh: Use flow-info.py for additional DIFF tests. Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Added layer4 payload length bins.Toni Uhlig2022-09-19
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* New flow event: 'analysis'.Toni Uhlig2022-09-13
| | | | | | | | | * The goal was to provide a separate event for extracted feature that are not required and only useful for a few (e.g. someone who wants do ML). * Increased network buffer size to 32kB (8192 * 4). * Switched timestamp precision from ms to us for *ALL* timestamps. Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* nDPIsrvd.py: Throw SocketTimeout Exception to catch both timeout exceptions ↵Toni Uhlig2022-06-07
| | | | | | different Python versions can throw. Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Small fixes.lns2022-04-26
| | | | Signed-off-by: lns <matzeton@googlemail.com>
* nDPId: Merged nDPId_flow_(info|finished) into nDPId_flowlns2022-04-24
| | | | | | | * nDPIsrvd: Fixed buffer allocation error due to missing memset() on disconnect * nDPIsrvd: Removed unused struct members Signed-off-by: lns <matzeton@googlemail.com>
* nDPIsrvd.(h|py): Added socket read/recv timeout.lns2022-04-17
| | | | | | * nDPIsrvd.h: support for O_NONBLOCK nDPIsrvd_socket Signed-off-by: lns <matzeton@googlemail.com>
* Refactored buffer subsystem.lns2022-04-16
| | | | Signed-off-by: lns <matzeton@googlemail.com>
* Reworked nDPIsrvd.h C-API.Toni Uhlig2022-03-21
| | | | | | | | | | | | * nDPIsrvd.h: Provide nDPId thread storage. * nDPIsrvd.py: Fixed instance cleanup bug. * nDPIsrvd.h: Support for instance/thread user data and cleanup callback. * nDPIsrvd.h: Most recent flow time stored in thread ht instead of instance ht. * nDPId: Moved flow logger out the memory profilier into SIGUSR1 signal handling. * nDPId: Added signal fd to be usable within epoll's event handling (live-capture only!) * nDPId: Added information about ZLib compressions to daemon status/shutdown events. Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Renamed basic event to error event for the sake of the logic.Toni Uhlig2022-03-13
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Disconnect nDPIsrvd clients immediately instead waiting for a failed write().Toni Uhlig2022-03-13
| | | | | | | | | * nDPIsrvd: Collector/Distributor logging improved * nDPIsrvd: Command line option for max remote descriptors * nDPId: Stop spamming nDPIsrvd Collector with the same events over and over again * nDPId: Refactored some variable names and events Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Fixed some pyhton issues with static class members.Toni Uhlig2022-03-08
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Added daemon event: DAEMON_EVENT_STATUS (periodically send's daemon statistics.)Toni Uhlig2022-03-06
| | | | | | | | | | * Improved distributor timeout handling (per-thread). * flow-info.py / flow-dash.py: Distinguish between flow risk severities. * nDPId: Skip tag switch datalink packet dissection / processing. * nDPId: Fixed incorrect value for current active flows. * Improved JSON schema's. Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Serialize flow risk score / confidence.Toni Uhlig2022-02-27
| | | | | | | * bump libnDPI to 8b062295cc76a60e3905c054ce37bd17669464d1 * removed ndpi_id_struct's Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Improved py-flow-info to provide more optional information about received ↵Toni Uhlig2022-02-05
| | | | | | | | | | timestamps. * py-flow-dashboard: Added color mapping for PieCharts/Graph that make more sense * nDPId: Renamed `flow_type' to a more precisely `flow_state' * nDPId: Changed the default setting to process only as much packets as libnDPI does Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Added additional (minimalistic) detection information to flow updates.Toni Uhlig2022-02-04
| | | | | | | | | | | | | This will only affect flows with the state `FT_FINISHED' (detection done). * nDPIsrvd.py: force use of JSON schema Draft 7 validator * flow-dash.py: gather/use total processed layer4 payload size * flow-info.py: added additional event filter * flow-info.py: prettified flow events printing whose detection is in progress * py-semantic-validation.py: added validation checks for FT_FINISHED * updated flow event JSON schema Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Major nDPId extension. Sorry for the huge commit.Toni Uhlig2022-01-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - nDPId: fixed invalid IP4/IP6 tuple compare - nDPIsrvd: fixed caching issue (finally) - added tiny c example (can be used to check flow manager sanity) - c-captured: use flow_last_seen timestamp from `struct nDPIsrvd_flow` - README.md update: added example JSON sequence - nDPId: added new flow event `update` necessary for correct timeout handling (and other future use-cases) - nDPIsrvd.h and nDPIsrvd.py: switched to an instance (consists of an alias/source tuple) based flow manager - every flow related event **must** now serialize `alias`, `source`, `flow_id`, `flow_last_seen` and `flow_idle_time` to make the timeout handling and verification process work correctly - nDPIsrvd.h: ability to profile any dynamic memory (de-)allocation - nDPIsrvd.py: removed PcapPacket class (unused) - py-flow-dashboard and py-flow-multiprocess: fixed race condition - py-flow-info: print statusbar with probably useful information - nDPId/nDPIsrvd.h: switched from packet-flow only timestamps (`pkt_*sec`) to a generic flow event timestamp `ts_msec` - nDPId-test: added additional checks - nDPId: increased ICMP flow timeout - nDPId: using event based i/o if capturing packets from a device - nDPIsrvd: fixed memory leak on shutdown if remote descriptors were still connected Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* c-captured: Improved format string in nDPIsrvd_write_flow_info_cb.Toni Uhlig2021-10-08
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Added support/debug function to write flow(-user) related info.Toni Uhlig2021-10-08
| | | | Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Merge commit '1fa53c5bf8d0717f784c79abaa5111f88ab00221'Toni Uhlig2021-09-15
|
* Merge commit '8e096b19c1e0b45ccd43cc89d9d80b59bd783529'Toni Uhlig2021-09-15
|
* Improved nDPIsrvd buffer bloat handling using caching.Toni Uhlig2021-08-04
| | | | | | | * still allow blocking mode (with send timeout) * improved daemon start/stop test script Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
* Build JSMN with support for parent links.Toni Uhlig2021-07-13
| | | | | | | * nDPIsrvd.h: iterate over subtokens * nDPIsrvd-captured: select/ unselect risky flows to capture Signed-off-by: Toni Uhlig <matzeton@googlemail.com>