Security advisory
In LibTIFF 4.0.8, there is a heap-based buffer overflow in the t2p_write_pdf function in tools/tiff2pdf.c. This heap overflow could lead to different damages. For example, a crafted TIFF document can lead to an out-of-bounds read in TIFFCleanup, an invalid free in TIFFClose or t2p_free, memory corruption in t2p_readwrite_pdf_image, or a double free in t2p_free. Given these possibilities, it probably could cause arbitrary code execution.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2017-9935
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 1 Nov 2026, 05:14 UTC · Revision 1
Source evidence
In LibTIFF 4.0.8, there is a heap-based buffer overflow in the t2p_write_pdf function in tools/tiff2pdf.c. This heap overflow could lead to different damages. For example, a crafted TIFF document can lead to an out-of-bounds read in TIFFCleanup, an invalid free in TIFFClose or t2p_free, memory corruption in t2p_readwrite_pdf_image, or a double free in t2p_free. Given these possibilities, it probably could cause arbitrary code execution.
osv:CVE-2017-9935
Complete source record
{
"id": "805a8efe55be5daf077f87ac93de0bbe5da56889e6007472b4fbdf932f23dc6e",
"url": "https://osv.dev/vulnerability/CVE-2017-9935",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "CVE-2017-9935",
"summary": "In LibTIFF 4.0.8, there is a heap-based buffer overflow in the t2p_write_pdf function in tools/tiff2pdf.c. This heap overflow could lead to different damages. For example, a crafted TIFF document can lead to an out-of-bounds read in TIFFCleanup, an invalid free in TIFFClose or t2p_free, memory corruption in t2p_readwrite_pdf_image, or a double free in t2p_free. Given these possibilities, it probably could cause arbitrary code execution.",
"evidence": "osv:CVE-2017-9935",
"products": [],
"severity": "high",
"structured": {
"id": "CVE-2017-9935",
"aliases": [
"CVE-2017-9935"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/vadz/libtiff",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"last_affected": "4a25fa0efc03a4e71740efc748c24b93152b1807"
}
],
"database_specific": {
"extracted_events": [
{
"cpe": "cpe:2.3:a:libtiff:libtiff:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "0"
},
{
"last_affected": "4.0.8"
}
],
"source": "CPE_RANGE"
}
]
}
}
],
"versions": [
"Release-v4-0-8",
"Release-v4-0-7",
"Release-v4-0-6",
"Release-v4-0-5",
"Release-v4-0-4",
"Release-v4-0-4beta",
"Release-v4-0-3",
"Release-v4-0-2",
"Release-v4-0-1",
"Release-v4-0-0",
"Release-v4-0-0beta7",
"Release-v4-0-0alpha6",
"Release-v4-0-0alpha5",
"Release-v4-0-0alpha4",
"Release-v4-0-0alpha",
"Release-v3-8-2",
"Release-v3-8-1",
"Release-v3-8-0",
"Release-v3-7-4",
"Release-v3-7-3",
"Release-v3-7-2",
"Release-v3-7-1",
"Release-3-7-0",
"Release-v3-7-0beta2",
"Release-v3-7-0beta",
"Release-v3-7-0-alpha",
"Release-v3-6-1",
"Release-v3-6-0",
"Release-v3-6-0beta2",
"Pre360",
"Release-v3-5-7",
"Release-v3-5-5",
"Release-v3-5-4",
"Release-v3-5-",
"Release-"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2017-9935.json"
}
},
{
"ranges": [
{
"repo": "https://gitlab.com/libtiff/libtiff",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"last_affected": "84e1f1b66df4c91951cfc17556d5228d0d3e5c9f"
}
],
"database_specific": {
"extracted_events": [
{
"cpe": "cpe:2.3:a:libtiff:libtiff:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "0"
},
{
"last_affected": "4.0.8"
}
],
"source": "CPE_RANGE"
}
]
}
}
],
"versions": [
"v4.0.8",
"v4.0.7",
"v4.0.6",
"v4.0.5",
"v4.0.4",
"v4.0.4beta",
"v4.0.3",
"v4.0.2",
"v4.0.1",
"v4.0.0",
"v4.0.0beta7",
"v4.0.0alpha6",
"v4.0.0alpha5",
"v4.0.0alpha4",
"v4.0.0alpha",
"v3.8.2",
"v3.8.1",
"v3.8.0",
"v3.7.4",
"v3.7.3",
"v3.7.2",
"v3.7.1",
"v3.7.0",
"v3.7.0beta2",
"v3.7.0beta",
"v3.7.0alpha",
"v3.6.1",
"v3.6.0",
"v3.6.0beta2",
"v3.5.7",
"v3.5.5",
"v3.5.4",
"v3.5.3"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2017-9935.json"
}
}
],
"modified": "2026-10-24T10:30:25.961704804Z",
"provider": "osv",
"references": [
"https://lists.debian.org/debian-lts-announce/2017/12/msg00008.html",
"https://usn.ubuntu.com/3606-1/",
"https://www.debian.org/security/2018/dsa-4100"
],
"provider_metadata": {
"unresolved_ranges": [
{
"cpes": [
"cpe:2.3:o:canonical:ubuntu_linux:14.04:*:*:*:lts:*:*:*",
"cpe:2.3:o:canonical:ubuntu_linux:16.04:*:*:*:lts:*:*:*",
"cpe:2.3:o:canonical:ubuntu_linux:17.10:*:*:*:*:*:*:*"
],
"vendor_product": "canonical:ubuntu_linux",
"extracted_events": [
{
"range": [
{
"introduced": "14.04"
},
{
"last_affected": "14.04"
},
{
"introduced": "16.04"
},
{
"last_affected": "16.04"
},
{
"introduced": "17.10"
},
{
"last_affected": "17.10"
}
],
"source": "CPE_STRING"
}
]
},
{
"cpes": [
"cpe:2.3:o:debian:debian_linux:7.0:*:*:*:*:*:*:*",
"cpe:2.3:o:debian:debian_linux:8.0:*:*:*:*:*:*:*",
"cpe:2.3:o:debian:debian_linux:9.0:*:*:*:*:*:*:*"
],
"vendor_product": "debian:debian_linux",
"extracted_events": [
{
"range": [
{
"introduced": "7.0"
},
{
"last_affected": "7.0"
},
{
"introduced": "8.0"
},
{
"last_affected": "8.0"
},
{
"introduced": "9.0"
},
{
"last_affected": "9.0"
}
],
"source": "CPE_STRING"
}
]
}
]
}
},
"related_cves": [
{
"value": "CVE-2017-9935",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 431498,
"published_at": "2017-06-26T12:29:00.187+00:00"
}