aboutsummaryrefslogtreecommitdiff
path: root/src/lib/protocols/dns.c
diff options
context:
space:
mode:
authorPhilippe Antoine <contact@catenacyber.fr>2020-02-18 11:50:22 +0100
committerPhilippe Antoine <contact@catenacyber.fr>2020-02-18 11:50:22 +0100
commit3eb9907dd7bfd21be4980632761852eaee5aec81 (patch)
treea2fc0b40d1fa1a67bdfabf2888c5d35b2036ea40 /src/lib/protocols/dns.c
parentfdf8dd724fc86c4d38daa66b62021ae2d34f1432 (diff)
Fix various buffer over reads
Diffstat (limited to 'src/lib/protocols/dns.c')
-rw-r--r--src/lib/protocols/dns.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/lib/protocols/dns.c b/src/lib/protocols/dns.c
index 924e7eb86..2f8fd5612 100644
--- a/src/lib/protocols/dns.c
+++ b/src/lib/protocols/dns.c
@@ -168,6 +168,9 @@ static int search_valid_dns(struct ndpi_detection_module_struct *ndpi_struct,
} else
x += data_len;
+ if((x+2) >= flow->packet.payload_packet_len) {
+ break;
+ }
rsp_type = get16(&x, flow->packet.payload);
flow->protos.dns.rsp_type = rsp_type;