lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date: Fri, 09 Dec 2011 13:32:33 -0500 (EST)
From: Ramon de C Valle <rcvalle@...hat.com>
To: full-disclosure@...ts.grok.org.uk
Cc: isowarez.isowarez.isowarez@...glemail.com
Subject: Re: VSFTPD Remote Heap Overrun (low severity)

> This is afaik a patched CVE in Linux glibc [1] which can be triggered through
> the very secure ftp daemon [2] so it will only work on older linux distros.
> Be aware that vsftpd has privilege seperation built in so this bug
> will not yield a root shell.
> It could yield root only in junction with a linux kernel vulnerability
> because the attacker
> will not be able to break the chroot without being root.
> This bug has a low severity because it's hard to exploit.
> Linux systems without patched glibc are vulnerable even if the latest
> version vsftpd-2.3.4 is installed.
> The bug is in the glibc timezone code. vsftpd loads timezone files
> from /usr [3]. If the attacker is inside a chroot
> he can easily create this directory and the timezone file and trigger
> the heap overrun.
>
> A Debugging Session illustrating the bug can be found on youtube:
> http://www.youtube.com/watch?v=KRCuozBM_dQ
I did a brief analysis of this issue. And it seems vsftpd does not add anything to this as an attack vector. Althought we can control the size of the chunk to be allocated (i.e. transitions), and can arbitrarily allocate this chunk from fast bins, the main arena, or eventually, a new mmap()'ed heap. We do not have any control over when its adjacent chunks are allocated, freed, the type of their contents, when they will be used, how they will be used, and if they will be used and useful at all. In addition, the data used to overflow (i.e. transition times) are read and decoded as 4-byte integers in network (big-endian) byte order, which increases the difficulty in faking any structure, such as the adjacent allocated chunk to, at least, get outside of glibc scope after the overflow--since all return paths from __tzfile_read frees our controlled previously allocated chunk.

Do you or anyone know a way to potentially exploit this vulnerability?

>
> Cheers!
Thanks,

>
>[1] http://dividead.wordpress.com/tag/heap-overflow/
>[2] https://security.appspot.com/vsftpd.html
>[3] For example /usr/share/zoneinfo/UTC-01:00
>
>/Kingcope


-- 
Ramon de C Valle / Red Hat Security Response Team

_______________________________________________
Full-Disclosure - We believe in it.
Charter: http://lists.grok.org.uk/full-disclosure-charter.html
Hosted and sponsored by Secunia - http://secunia.com/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ