Commit graph

23 commits

Author SHA1 Message Date
Val Snyder
7ff29b8c37
Bump copyright dates for 2025 2025-02-14 10:24:30 -05:00
Micah Snyder
9cb28e51e6 Bump copyright dates for 2024 2024-01-22 11:27:17 -05:00
Micah Snyder
6eebecc303 Bump copyright for 2023 2023-02-12 11:20:22 -08:00
micasnyd
140c88aa4e Bump copyright for 2022
Includes minor format corrections.
2022-01-09 14:23:25 -07:00
Micah Snyder
90e4d66f7c OLE2 / XLS document image extraction
Added a feature to extract images from OLE2 BIFF streams.
This work was derived from InQuests blog post about extracting XLM and
images from XLS files:
https://inquest.net/blog/2019/01/29/Carving-Sneaky-XLM-Files

Assorted ole2 parser code cleanup and massive error handling cleanup.

Also fixed the following:

- The XLS parser may fail to process all BIFF records if some of the
records contain unexpected data or is otherwise malformed. Because the
record size is already known, we can skip over the "malformed" record
and continue with the rest.

- Fixed an issue where the ole2 header size was improperly calculated,
failing to account for the new "has_xlm" boolean added for context.
2021-07-17 10:39:27 -07:00
Micah Snyder (micasnyd)
b9ca6ea103 Update copyright dates for 2021
Also fixes up clang-format.
2021-03-19 15:12:26 -07:00
Micah Snyder
e2f59af30a Clang-format touchup 2020-07-24 16:37:25 -07:00
Jonas Zaddach (jzaddach)
d5a733ef90 XLM (Excel 4.0) macro detection and extraction
XLM is a macro language in Excel that was used before VBA (before
1996). It is still parsed and executed by modern Excel and is gaining
popularity with malware authors.

This patch adds rudimentary support for detecting and extracting
Excel 4.0 (XLM) macros.

The code is based on Didier Steven's plugin_biff for oletools.py.
2020-04-29 14:19:41 -07:00
Jonas Zaddach (jzaddach)
b7f8440965 Modernize VBA code extraction from Microsoft Office files
- Existing VBA extraction code uses undocumented cache structures.
  This code uses the documented way of accessing VBA projects.
- Adds additional detail to the dumped information:
  Project name, Project doc string, ...
  All VBA projects are dumped into a single file.
- Malware authors are currently evading detection by spreading
  malicious code over several projects. It is hard to write
  signatures if only part of the malicious code is visible.
2020-04-28 13:32:07 -07:00
Micah Snyder
206dbaefe8 Update copyright dates for 2020 2020-01-03 15:44:07 -05:00
Micah Snyder
52cddcbcfd Updating and cleaning up copyright notices. 2019-10-02 16:08:18 -04:00
Micah Snyder
6289eda8e0 Eliminating AUTHORS file, and moving acknowledgements for various source code contributions to the file comment blocks for the individual files, as appropriate. 2018-03-06 17:44:05 -05:00
Kevin Lin
033145cc9b removed redundant declaration of cli_ole2_summary_json 2015-12-09 10:41:52 -05:00
Mickey Sola
46a35abe56 mass update of copyright headers 2015-09-17 13:41:26 -04:00
Kevin Lin
4c37996842 doc/ppt: moved information stream parsing from vba source to ole2 source 2014-04-21 18:30:28 -04:00
Kevin Lin
1cfd469ffe fix for win32 build and style edits 2013-11-25 14:28:56 -05:00
Kevin Lin
18d6c388c7 bb#9558: limited number of stack frames used in ole2 tree walking 2013-11-25 13:32:36 -05:00
aCaB
034c02fd9e ole2 to fmap 2009-08-31 07:07:32 +02:00
aCaB
937ade082c fix collisions in ole2/vba
git-svn: trunk@4068
2008-08-03 14:30:33 +00:00
Tomasz Kojm
72ce4b70eb improve handling of PDF, CAB, RTF, OLE2 and HTML files (sync with branch/0.93)
git-svn: trunk@3862
2008-05-27 16:30:47 +00:00
Tomasz Kojm
2023340a41 update copyrights and stick more files to GPLv2; move and add more credits to the AUTHORS file; add COPYING.BSD
git-svn: trunk@3749
2008-04-02 15:24:51 +00:00
aCaB
bbd6ca3fbb more limits and ole2 collision fixup
git-svn-id: file:///var/lib/svn/clamav-devel/branches/newlimits@3608 77e5149b-7576-45b1-b177-96237e5ba77b
2008-02-11 13:18:41 +00:00
Sven Strickroth
a99111f050 remove old CVS-stuff and make the repository look more like SVN
git-svn: trunk@2755
2007-02-17 19:02:20 +00:00
Renamed from clamav-devel/libclamav/ole2_extract.h (Browse further)