Socket unreachable in GNUnet rev 2780 May 12 2006 09:28PM
Luigi Auriemma (aluigi autistici org)

#######################################################################

Luigi Auriemma

Application: GNUnet
http://www.gnunet.org
Versions: <= 0.7.0d and revision 2780
Platforms: Windows, *nix, *BSD, Mac and more
Bug: UDP socket unreachable
Exploitation: remote
Date: 12 May 2006
Author: Luigi Auriemma
e-mail: aluigi (at) autistici (dot) org [email concealed]
web: aluigi.org

#######################################################################

1) Introduction
2) Bug
3) The Code
4) Fix

#######################################################################

===============
1) Introduction
===============

From the website:
"GNUnet is a framework for secure peer-to-peer networking that does not
use any centralized or otherwise trusted services. A first service
implemented on top of the networking layer allows anonymous
censorship-resistant file-sharing."

#######################################################################

======
2) Bug
======

The asynchronous mode used for the UDP socket is handled through
FIONREAD.
If an empty UDP packet (zero bytes) is received the program enters in
an endless loop where other UDP packets cannot handled and the CPU
reaches the 100% of usage.

More info about this specific bug are available here:

http://aluigi.org/adv/socket_unreachable_info.txt

#######################################################################

===========
3) The Code
===========

http://aluigi.org/testz/udpsz.zip

udpsz 127.0.0.1 2068 0

#######################################################################

======
4) Fix
======

SVN revision 2781.

#######################################################################

---
Luigi Auriemma
http://aluigi.org
http://mirror.aluigi.org

[ reply ]


 

Privacy Statement
Copyright 2010, SecurityFocus