diff options
author | Léo Le Bouter <lle-bout@zaclys.net> | 2021-03-06 04:47:10 +0100 |
---|---|---|
committer | Léo Le Bouter <lle-bout@zaclys.net> | 2021-03-06 04:47:10 +0100 |
commit | 090456dacb76160280a630d53f4f47b421281c66 (patch) | |
tree | d8cc08872be57764e5b60891413e16def072a278 /gnu/packages/patches/ytnef-CVE-2021-3404.patch | |
parent | 6f873731a030dd7ecbd8a5e756b38b26306f6966 (diff) |
gnu: ytnef: Fix CVE-2021-3403 and CVE-2021-3404.
* gnu/packages/patches/ytnef-CVE-2021-3403.patch,
gnu/packages/patches/ytnef-CVE-2021-3404.patch: New patches.
* gnu/local.mk (dist_patch_DATA): Register them.
* gnu/packages/mail.scm (ytnef): Apply them.
Diffstat (limited to 'gnu/packages/patches/ytnef-CVE-2021-3404.patch')
-rw-r--r-- | gnu/packages/patches/ytnef-CVE-2021-3404.patch | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/gnu/packages/patches/ytnef-CVE-2021-3404.patch b/gnu/packages/patches/ytnef-CVE-2021-3404.patch new file mode 100644 index 0000000000..e991d6aff1 --- /dev/null +++ b/gnu/packages/patches/ytnef-CVE-2021-3404.patch @@ -0,0 +1,30 @@ +From f9ff4a203b8c155d51a208cadadb62f224fba715 Mon Sep 17 00:00:00 2001 +From: Oliver Giles <ohw.giles@gmail.com> +Date: Mon, 1 Feb 2021 10:18:17 +1300 +Subject: [PATCH] Ensure the size of the version field is 4 bytes + +A corrupted version field size can cause TNEFVersion to access outside +of allocated memory. Check the version is the expected size and raise +an error if not. + +Resolves: #86 +Reported-by: jasperla +--- + lib/ytnef.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/lib/ytnef.c b/lib/ytnef.c +index b148719..ffede44 100644 +--- a/lib/ytnef.c ++++ b/lib/ytnef.c +@@ -335,6 +335,10 @@ int TNEFRendData STD_ARGLIST { + int TNEFVersion STD_ARGLIST { + WORD major; + WORD minor; ++ if (size != 2 * sizeof(WORD)) { ++ printf("Incorrect size of version field, suspected corruption\n"); ++ return -1; ++ } + minor = SwapWord((BYTE*)data, size); + major = SwapWord((BYTE*)data + 2, size - 2); + |