diff options
author | Luca Deri <deri@ntop.org> | 2019-05-03 18:08:12 +0200 |
---|---|---|
committer | Luca Deri <deri@ntop.org> | 2019-05-03 18:08:12 +0200 |
commit | e99a0abfba3dff52a00935bed6e08051e2fa4b61 (patch) | |
tree | fcc6abcd922cda1b7446f046e38c783878d3174b /src/lib/ndpi_main.c | |
parent | 361ab030bc59d00cc55ed12b15340ac50473e8cb (diff) |
Hardening fixes for packer parsing
Diffstat (limited to 'src/lib/ndpi_main.c')
-rw-r--r-- | src/lib/ndpi_main.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/lib/ndpi_main.c b/src/lib/ndpi_main.c index a7971837e..4c60ce969 100644 --- a/src/lib/ndpi_main.c +++ b/src/lib/ndpi_main.c @@ -5036,7 +5036,8 @@ void ndpi_parse_packet_line_info(struct ndpi_detection_module_struct *ndpi_struc packet->line[packet->parsed_lines].ptr = packet->payload; packet->line[packet->parsed_lines].len = 0; - for(a = 0; a < packet->payload_packet_len; a++) { + for(a = 0; (a < packet->payload_packet_len) + && (packet->parsed_lines < NDPI_MAX_PARSE_LINES_PER_PACKET); a++) { if((a + 1) == packet->payload_packet_len) return; /* Return if only one byte remains (prevent invalid reads past end-of-buffer) */ |