summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta-oe/recipes-graphics/fontforge/fontforge/CVE-2025-15270.patch44
-rw-r--r--meta-oe/recipes-graphics/fontforge/fontforge_20230101.bb1
2 files changed, 45 insertions, 0 deletions
diff --git a/meta-oe/recipes-graphics/fontforge/fontforge/CVE-2025-15270.patch b/meta-oe/recipes-graphics/fontforge/fontforge/CVE-2025-15270.patch
new file mode 100644
index 0000000000..335aa3f9a2
--- /dev/null
+++ b/meta-oe/recipes-graphics/fontforge/fontforge/CVE-2025-15270.patch
@@ -0,0 +1,44 @@
1From 647e17c1313b0be5159616e4345e6007e1f377a5 Mon Sep 17 00:00:00 2001
2From: Ahmet Furkan Kavraz
3 <55850855+ahmetfurkankavraz@users.noreply.github.com>
4Date: Sat, 31 Jan 2026 21:23:41 +0100
5Subject: [PATCH] Fix CVE-2025-15270: Heap buffer overflow in SFD kern class
6 parsing (#5743)
7
8Fixes: CVE-2025-15270 | ZDI-25-1194 | ZDI-CAN-28563
9
10Co-authored-by: Ahmet Furkan Kavraz <kavraz@amazon.com>
11
12CVE: CVE-2025-15270
13Upstream-Status: Backport [https://github.com/fontforge/fontforge/commit/d01333a5bfa2ac4ed698c24b323d02107deacad7]
14Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
15---
16 fontforge/sfd.c | 8 ++++++++
17 1 file changed, 8 insertions(+)
18
19diff --git a/fontforge/sfd.c b/fontforge/sfd.c
20index 894176254..3692973fe 100644
21--- a/fontforge/sfd.c
22+++ b/fontforge/sfd.c
23@@ -8286,6 +8286,10 @@ bool SFD_GetFontMetaData( FILE *sfd,
24 for ( i=classstart; i<kc->first_cnt; ++i ) {
25 if (kernclassversion < 3) {
26 getint(sfd,&temp);
27+ if (temp < 0) {
28+ LogError(_("Corrupted SFD file: Invalid kern class name length %d. Aborting load."), temp);
29+ return false;
30+ }
31 kc->firsts[i] = malloc(temp+1); kc->firsts[i][temp] = '\0';
32 nlgetc(sfd); /* skip space */
33 fread(kc->firsts[i],1,temp,sfd);
34@@ -8303,6 +8307,10 @@ bool SFD_GetFontMetaData( FILE *sfd,
35 for ( i=1; i<kc->second_cnt; ++i ) {
36 if (kernclassversion < 3) {
37 getint(sfd,&temp);
38+ if (temp < 0) {
39+ LogError(_("Corrupted SFD file: Invalid kern class name length %d. Aborting load."), temp);
40+ return false;
41+ }
42 kc->seconds[i] = malloc(temp+1); kc->seconds[i][temp] = '\0';
43 nlgetc(sfd); /* skip space */
44 fread(kc->seconds[i],1,temp,sfd);
diff --git a/meta-oe/recipes-graphics/fontforge/fontforge_20230101.bb b/meta-oe/recipes-graphics/fontforge/fontforge_20230101.bb
index 7db8a66654..72d233fe0c 100644
--- a/meta-oe/recipes-graphics/fontforge/fontforge_20230101.bb
+++ b/meta-oe/recipes-graphics/fontforge/fontforge_20230101.bb
@@ -25,6 +25,7 @@ SRC_URI = "git://github.com/${BPN}/${BPN}.git;branch=master;protocol=https \
25 file://CVE-2025-15279-2.patch \ 25 file://CVE-2025-15279-2.patch \
26 file://CVE-2025-15275.patch \ 26 file://CVE-2025-15275.patch \
27 file://CVE-2025-15269.patch \ 27 file://CVE-2025-15269.patch \
28 file://CVE-2025-15270.patch \
28 " 29 "
29 30
30EXTRA_OECMAKE = "-DENABLE_DOCS=OFF" 31EXTRA_OECMAKE = "-DENABLE_DOCS=OFF"