LHa is affected by several vulnerabilities including the remote execution of arbitrary code.
|Package||app-arch/lha on all architectures|
|Affected versions||< 114i-r6|
|Unaffected versions||>= 114i-r6|
LHa is a console-based program for packing and unpacking LHarc archives.
Tavis Ormandy of the Google Security Team discovered several vulnerabilities in the LZH decompression component used by LHa. The make_table function of unlzh.c contains an array index error and a buffer overflow vulnerability. The build_tree function of unpack.c contains a buffer underflow vulnerability. Additionally, unlzh.c contains a code that could run in an infinite loop.
By enticing a user to uncompress a specially crafted archive, a remote attacker could cause a Denial of Service by CPU consumption or execute arbitrary code with the rights of the user running the application.
There is no known workaround at this time.
All LHa users should upgrade to the latest version:
# emerge --sync # emerge --ask --oneshot --verbose ">=app-arch/lha-114i-r6"
November 28, 2006
November 28, 2006: 01