1
0
Fork 0
Commit Graph

43 Commits

Author SHA1 Message Date
Romain Vigier 7405955ab5
parsers: Inherit the sandbox option when creating additional parsers 2023-11-13 13:11:35 +01:00
Jason Smalls 1bcb945360 Harden get_meta in archive.py against variants of CVE-2022-35410 2023-07-11 21:31:53 +02:00
jvoisin 1b9608aecf Use proper type annotations instead of comments 2023-05-03 22:28:02 +02:00
jvoisin 2ac8c24dac Make use of is_dir/isdir for archives 2023-05-03 22:19:19 +02:00
jvoisin 3cb3f58084 Another typing pass 2023-01-28 17:22:26 +01:00
jvoisin 39fb254e01 Fix the type annotations 2023-01-28 15:57:20 +00:00
jvoisin 180ea24e5a Remove pyflakes
Isn't borderline useless compared to mypy and pylint
2022-11-21 19:57:38 +01:00
jvoisin 6d93cf9397 Remove deprecated pylint checks 2022-10-09 21:14:20 +02:00
jvoisin cc5be8608b Simplify the typing annotations 2022-08-28 22:29:06 +02:00
jvoisin beebca4bf1 Prevent arbitrary file read via zip archives
A zip file with a file pointing to /etc/passwd would, upon being cleaned by
mat2, produce a file with the filesystem's /etc/passwd file.
2022-07-05 16:27:07 +02:00
jvoisin e2c4dbf721 Show a scary message in case of path traversal attempt 2022-07-05 15:30:10 +02:00
jvoisin 2639713709 Minor cleanup 2022-05-05 22:00:09 +02:00
jvoisin 01b39aa68c Make libmat2 more robust against corrupted zip files 2021-12-13 19:44:44 +01:00
jvoisin 22199df4d0 Please the linters wrt. the previous commit 2021-12-09 16:58:24 +01:00
Denis 'GNUtoo' Carikli 1703ed6ebb
zip archives: keep individual files compression type
While hardcoding the compression to zipfile.ZIP_DEFLATED works for
most use cases of mat, being able to produce cleaned up uncompressed
zip files is useful for content that cannot be compressed more.

In addition it also enables to use mat2 for reproducible builds of
Android bootanimation files file that don't support compression.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2021-12-08 18:36:39 +01:00
jvoisin 1c4e98425a Make the linter happier 2021-11-23 17:34:14 +01:00
jvoisin d7a03d907b Vastly improve ppt compatibility 2020-03-08 14:06:27 +01:00
georg 697cb36b81 This is mat2, not MAT2
Closes #131
2019-11-30 01:14:41 -08:00
jvoisin 12489bb682 Remove a useless `\` 2019-10-12 21:36:28 +02:00
jvoisin 4483c06f19 Replace abstractstaticmethod with abstractmethod
Apparently, abstractstaticmethod is deprecated
since python3.3.
2019-10-12 21:28:27 +02:00
jvoisin 1678d37856 Mark a comment as FP 2019-09-01 19:01:33 +02:00
jvoisin 5c33b290ae Fix mypy 2019-07-20 16:05:55 +02:00
jvoisin bdd5581033 Compress cleaned zip archives by default 2019-07-13 15:04:43 +02:00
jvoisin 9516990693 Add some verification for "dangerous" tarfiles 2019-05-01 17:55:35 +02:00
jvoisin a7ebb587e1 Handle weird permissions in tar archives 2019-04-27 22:48:40 +02:00
jvoisin 14a4cddb8b Improve the display of tarfile's members mtime 2019-04-27 21:15:06 +02:00
jvoisin 8e41b098d6 Add support for compressed tar files 2019-04-27 06:03:09 -07:00
jvoisin 82cc822a1d Add tar archive support 2019-04-27 04:05:36 -07:00
jvoisin eb2e702f37 Document the previous commit 2019-02-25 15:37:44 +01:00
jvoisin 545dccc352 In archive-based formats, the `mimetype` file comes first
This should improve epub compatibility,
along with other formats as a side-effect
2019-02-24 23:32:32 +01:00
jvoisin b9a62d798a Refactor a bit office get_meta handling
This should make easier to get more metadata from
archive-based file formats.
2019-02-04 00:31:26 +01:00
intrigeri e8c1bb0e3c Whenever possible, use bwrap for subprocesses
This should closes  #90
2019-02-03 19:18:41 +01:00
jvoisin 3a070b0ab7 Add support for zip files 2018-10-25 11:56:46 +02:00
jvoisin 283e5e5787 Improve archive-based parser's robustness against corrupted embedded files 2018-10-25 11:56:12 +02:00
jvoisin 513d897ea0 Implement get_meta() for archives 2018-10-25 11:29:50 +02:00
jvoisin 2ba38dd2a1 Bump mypy typing coverage 2018-10-12 14:32:09 +02:00
jvoisin 1b356b8c6f Improve mat2's cli reliability
- Replace some class members by instance members
- Don't thread the cleaning process anymore for now
2018-10-03 15:22:36 +02:00
jvoisin c67bbafb2c Use [Content_Types].xml to improve MS Office coverage 2018-10-02 11:55:42 -07:00
jvoisin 719cdf20fa Second pass of minor formatting 2018-09-24 20:15:07 +02:00
jvoisin 2e243355f5 Fix some minor formatting issues 2018-09-24 19:50:24 +02:00
jvoisin a1a06d023e Insert archive members in lexicographic order 2018-09-18 22:44:21 +02:00
jvoisin 9fe6f1023b Make pylint happy 2018-09-06 11:36:04 +02:00
jvoisin e3d817f57e Split office and archives 2018-09-06 11:34:14 +02:00