ClamAV 0.101.2 is a patch release to address a handful of security related bugs.
This patch release is being released alongside the 0.100.3 patch so that users
who are unable to upgrade to 0.101 due to libclamav API changes are protected.
This release includes 3 extra security related bug fixes that do not apply to
prior versions. In addition, it includes a number of minor bug fixes and
- Fixes for the following vulnerabilities affecting 0.101.1 and prior:
An out-of-bounds heap read condition may occur when scanning PDF
documents. The defect is a failure to correctly keep track of the number
of bytes remaining in a buffer when indexing file data.
An out-of-bounds heap read condition may occur when scanning PE files
(i.e. Windows EXE and DLL files) that have been packed using Aspack as a
result of inadequate bound-checking.
An out-of-bounds heap write condition may occur when scanning OLE2 files
such as Microsoft Office 97-2003 documents. The invalid write happens when
an invalid pointer is mistakenly used to initialize a 32bit integer to
zero. This is likely to crash the application.
- Fixes for the following vulnerabilities affecting 0.101.1 and 0.101.0 only:
An out-of-bounds heap read condition may occur when scanning malformed PDF
documents as a result of improper bounds-checking.
A path-traversal write condition may occur as a result of improper input
validation when scanning RAR archives. Issue reported by aCaB.
A use-after-free condition may occur as a result of improper error
handling when scanning nested RAR archives. Issue reported by David L.
- Fixes for the following assorted bugs:
- Added checks to prevent shifts from causing undefined behavior in HTML
normalizer, UPX unpacker, ARJ extractor, CPIO extractor, OLE2 parser,
LZW decompressor used in the PDF parser, Xz decompressor, and UTF-16 to
- Added checks to prevent integer overflow in UPX unpacker.
- Fix for minor memory leak in OLE2 parser.
- Fix to speed up PDF parser when handling truncated (or malformed) PDFs.
- Fix for memory leak in ARJ decoder failure condition.
- Fix for potential memory and file descriptor leak in HTML normalization code.
- Removed use of problematic feature that converted file descriptors to
file paths. The feature was intended to improve performance when scanning
file types, notably RAR archives, for which the API requires a file path.
This feature caused issues in environments where the ClamAV engine is run
in a low-permissions or sandboxed process. RAR archives are still supported
with this change, but performance may suffer slightly if the file path is not
provided in calls to `cl_scandesc_callback()`.
- Added filename and tempfile names to scandesc calls in clamd.
- Added general scan option `CL_SCAN_GENERAL_UNPRIVILEGED` to treat the scan
engine as unprivileged, meaning that the scan engine will not have read
access to the file. Provided file paths are for logging purposes only.
- Added ability to create a temp file when scanning RAR archives when the
process does not have read access to the file path provided (i.e.
unprivileged is set, or an access check fails).
Maintainer(s), please advise if you are ready for stabilization or call for stabilization yourself.
In Tree. please advise when ready to stabilize. This is a B2 (10 Day).
@whissy: thanks for the quick action. I was too busy to notice this until earlier today.
I just did a few tests myself and so far it seems to work just fine.
So I think stabilization should be ok, but please advise arch teams to maybe do a few extra test runs just in case since I did not have time to test a lot myself yet.
@security: i would appreciate if you could do me the favour of adding the STABLEREQ this time as I am quite busy right now
@arches, please stabilize.
@maintainer(s), please drop vulnerable.
This issue was resolved and addressed in
GLSA 201904-12 at https://security.gentoo.org/glsa/201904-12
by GLSA coordinator Aaron Bauman (b-man).
re-opened to track alpha...
@alpha, can this be keyworded and stabled?