diff options
author | Philippe Antoine <contact@catenacyber.fr> | 2020-03-12 14:13:04 +0100 |
---|---|---|
committer | Philippe Antoine <contact@catenacyber.fr> | 2020-03-12 14:13:04 +0100 |
commit | fe513014a8f5156b243ec2eb5e6862a0506c6632 (patch) | |
tree | f64a4337fe0cd41e6f184a7ee2ccedb35f531720 /src | |
parent | 3c05d4551dfb1181770416c4301a4f92415e41af (diff) |
Fix buffer over read in dns
Diffstat (limited to 'src')
-rw-r--r-- | src/lib/protocols/dns.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/lib/protocols/dns.c b/src/lib/protocols/dns.c index 2f8fd5612..8290ca9dc 100644 --- a/src/lib/protocols/dns.c +++ b/src/lib/protocols/dns.c @@ -113,7 +113,7 @@ static int search_valid_dns(struct ndpi_detection_module_struct *ndpi_struct, && (((dns_header->flags & 0x2800) == 0x2800 /* Dynamic DNS Update */) || ((dns_header->num_answers == 0) && (dns_header->authority_rrs == 0)))) { /* This is a good query */ - while(x < flow->packet.payload_packet_len) { + while(x+2 < flow->packet.payload_packet_len) { if(flow->packet.payload[x] == '\0') { x++; flow->protos.dns.query_type = get16(&x, flow->packet.payload); |