Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Wed, 6 Aug 2008 00:38:25 +0200
From: Nico Golde <oss-security+ml@...lde.de>
To: oss-security@...ts.openwall.com
Subject: Re: CVE id request: openttd

Hi Robert,
here we go...
* Robert Buchholz <rbu@...too.org> [2008-08-05 06:29]:
> On Monday 04 August 2008, Nico Golde wrote:
> > "OpenTTD servers of version 0.6.1 and below are susceptible to a
> > remotely exploitable buffer overflow when the server is filled with
> > companies and clients with names that are (near) the maximum allowed
> > length for names. In the worst case OpenTTD will write the following
> > (mostly remotely changable bytes) into 1460 bytes of malloc-ed
> > memory:
> > up to 11 times (amount of players) 118 bytes
> > up to 8 times (amount of companies) 124 bytes
> > and 7 "header" bytes
> > Resulting in up to 2297 bytes being written in 1460 bytes of
> > malloc-ed memory. This makes it possible to remotely crash the game
> > or change the gamestate into an unrecoverable state.  "
> >
> > This is Debian bug #493714.
> >
> > I didn't yet have the time to check the diff between the versions.
> 
> Secunia interpreted [1] the "remotely exploitable buffer overflows" 
> mentioned in the changelog [2] to be a "boundary error within 
> the "TruncateString()" function in src/gfx.cpp". This would be the 
> following patch [3].

This is only used when drawing the data but not for 
communicatin between server and clients.

> However, this would overwrite the buffer by max. 2 
> bytes, and does not match your bug description too well. Is this maybe 
> r13712 [4] ?

Not exactly, this is the length enforcement on the client 
side. The fix on the server side is
svn diff -c 13713 svn://svn.openttd.org/trunk.
However the problem with this is that it does break network 
compatibility between different versions so it might be a 
bad idea to backport this. This way you can only proceed 
playing with people who also use this backported fix :/

Kind regards
Nico

-- 
Nico Golde - http://www.ngolde.de - nion@...ber.ccc.de - GPG: 0x73647CFF
For security reasons, all text in this mail is double-rot13 encrypted.

Content of type "application/pgp-signature" skipped

Powered by blists - more mailing lists

Please check out the Open Source Software Security Wiki, which is counterpart to this mailing list.

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.