From dda17ff212a01c5a8cb3276f872bb207ff242b97 Mon Sep 17 00:00:00 2001 From: Fabrice Fontaine Date: Thu, 19 Jun 2025 21:43:10 +0200 Subject: [PATCH] feat(checker): add libhtp checker Signed-off-by: Fabrice Fontaine --- cve_bin_tool/checkers/__init__.py | 1 + cve_bin_tool/checkers/libhtp.py | 20 +++++++++++++ .../libhtp-0.5.25-r0.apk.tar.gz | Bin 0 -> 7143 bytes .../libhtp2-0.5.49-1.4.aarch64.rpm.tar.gz | Bin 0 -> 8238 bytes .../libhtp2_0.5.30-1_amd64.deb.tar.gz | Bin 0 -> 7356 bytes test/test_data/libhtp.py | 27 ++++++++++++++++++ test/test_data/suricata.py | 7 +++-- 7 files changed, 52 insertions(+), 3 deletions(-) create mode 100644 cve_bin_tool/checkers/libhtp.py create mode 100644 test/condensed-downloads/libhtp-0.5.25-r0.apk.tar.gz create mode 100644 test/condensed-downloads/libhtp2-0.5.49-1.4.aarch64.rpm.tar.gz create mode 100644 test/condensed-downloads/libhtp2_0.5.30-1_amd64.deb.tar.gz create mode 100644 test/test_data/libhtp.py diff --git a/cve_bin_tool/checkers/__init__.py b/cve_bin_tool/checkers/__init__.py index 293baa18f4..971bdbfa52 100644 --- a/cve_bin_tool/checkers/__init__.py +++ b/cve_bin_tool/checkers/__init__.py @@ -196,6 +196,7 @@ "libgd", "libgit2", "libheif", + "libhtp", "libical", "libidn2", "libinput", diff --git a/cve_bin_tool/checkers/libhtp.py b/cve_bin_tool/checkers/libhtp.py new file mode 100644 index 0000000000..0d86aaa580 --- /dev/null +++ b/cve_bin_tool/checkers/libhtp.py @@ -0,0 +1,20 @@ +# Copyright (C) 2025 Orange +# SPDX-License-Identifier: GPL-3.0-or-later + + +""" +CVE checker for libhtp + +https://www.cvedetails.com/product/52627/Oisf-Libhtp.html?vendor_id=17892 + +""" +from __future__ import annotations + +from cve_bin_tool.checkers import Checker + + +class LibhtpChecker(Checker): + CONTAINS_PATTERNS: list[str] = [] + FILENAME_PATTERNS: list[str] = [] + VERSION_PATTERNS = [r"LibHTP v([0-9]+\.[0-9]+\.[0-9]+)"] + VENDOR_PRODUCT = [("oisf", "libhtp")] diff --git a/test/condensed-downloads/libhtp-0.5.25-r0.apk.tar.gz b/test/condensed-downloads/libhtp-0.5.25-r0.apk.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..738c453738b69c35ee8bc601a1930640f00f0eec GIT binary patch literal 7143 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 R{`o*SzksrLI4?N3{{b<%%r^i4 literal 0 HcmV?d00001 diff --git a/test/condensed-downloads/libhtp2-0.5.49-1.4.aarch64.rpm.tar.gz b/test/condensed-downloads/libhtp2-0.5.49-1.4.aarch64.rpm.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..f5d3bd3bcf355ecadb35f1e03724f6001f4483a9 GIT binary patch literal 8238 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
  • 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 literal 0 HcmV?d00001 diff --git a/test/condensed-downloads/libhtp2_0.5.30-1_amd64.deb.tar.gz b/test/condensed-downloads/libhtp2_0.5.30-1_amd64.deb.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..d536ce7e239fb2b5348f0fe7881c72435bfb7346 GIT binary patch literal 7356 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