Search

Find a vulnerability

Search criteria

    2 vulnerabilities by theotherphil

    CVE-2026-70378 (GCVE-0-2026-70378)

    Vulnerability from cvelistv5 – Published: 2026-08-05 06:58 – Updated: 2026-08-05 06:58
    VLAI
    Title
    imagecli: Negative carve Ratio Bypasses Bounds Check and Crashes Process via Reachable Panic
    Summary
    imagecli's `carve <ratio>` pipeline operation (Carve::apply() in src/image_ops.rs) only asserts `ratio <= 1.0`, never validating that the ratio is positive. A negative ratio (e.g. -5) causes the computed target width to saturate to 0 via Rust's defined float-to-uint cast, which is then passed to imageproc::seam_carving::shrink_width — a function that panics when given a width below 2, crashing the process. This shares the same missing-input-validation root cause as the sibling `scale` finding in the same file but is an independently fixable, distinct code path.
    CWE
    • CWE-1284 - Improper Validation of Specified Quantity in Input
    Assigner
    References
    Impacted products
    Vendor Product Version
    theotherphil imagecli Affected: 0 , ≤ 0.2.1 (custom)
    Create a notification for this product.
    Credits
    agrresore
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unknown",
              "product": "imagecli",
              "programFiles": [
                "src/image_ops.rs"
              ],
              "vendor": "theotherphil",
              "versions": [
                {
                  "lessThanOrEqual": "0.2.1",
                  "status": "affected",
                  "version": "0",
                  "versionType": "custom"
                }
              ]
            }
          ],
          "credits": [
            {
              "lang": "en",
              "type": "finder",
              "value": "agrresore"
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "imagecli\u0027s `carve \u003cratio\u003e` pipeline operation (Carve::apply() in src/image_ops.rs) only asserts `ratio \u003c= 1.0`, never validating that the ratio is positive. A negative ratio (e.g. -5) causes the computed target width to saturate to 0 via Rust\u0027s defined float-to-uint cast, which is then passed to imageproc::seam_carving::shrink_width \u2014 a function that panics when given a width below 2, crashing the process. This shares the same missing-input-validation root cause as the sibling `scale` finding in the same file but is an independently fixable, distinct code path."
            }
          ],
          "metrics": [
            {
              "other": {
                "content": {
                  "value": "HIGH"
                },
                "type": "CVSS_3.1_severity"
              }
            },
            {
              "cvssV3_1": {
                "baseScore": 7.5,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
                "version": "3.1"
              }
            }
          ],
          "problemTypes": [
            {
              "descriptions": [
                {
                  "cweId": "CWE-1284",
                  "description": "CWE-1284 Improper Validation of Specified Quantity in Input",
                  "lang": "en",
                  "type": "CWE"
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-05T06:58:50.621Z",
            "orgId": "309f9ea4-e3e9-4c6c-b79d-e8eb01244f2c",
            "shortName": "TuranSec"
          },
          "references": [
            {
              "url": "https://github.com/theotherphil/imagecli/issues/67"
            }
          ],
          "title": "imagecli: Negative carve Ratio Bypasses Bounds Check and Crashes Process via Reachable Panic"
        }
      },
      "cveMetadata": {
        "assignerOrgId": "309f9ea4-e3e9-4c6c-b79d-e8eb01244f2c",
        "assignerShortName": "TuranSec",
        "cveId": "CVE-2026-70378",
        "datePublished": "2026-08-05T06:58:50.621Z",
        "dateReserved": "2026-08-04T07:13:07.993Z",
        "dateUpdated": "2026-08-05T06:58:50.621Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-70377 (GCVE-0-2026-70377)

    Vulnerability from cvelistv5 – Published: 2026-08-05 06:58 – Updated: 2026-08-05 06:58
    VLAI
    Title
    imagecli: Uncontrolled Memory Allocation via Unbounded scale Ratio Causes Denial of Service
    Summary
    imagecli's `scale <ratio>` pipeline operation (Scale::apply() in src/image_ops.rs) computes output width/height as (dimension as f32 * ratio) as u32 with no upper-bound validation on the CLI-supplied ratio, which is parsed via nom::number::complete::float with no range check. A large ratio (e.g. 100000) causes an attempted allocation of hundreds of terabytes, aborting the process. Any application embedding imagecli as a library and accepting user-controlled pipeline strings is remotely crashable with a single request.
    CWE
    • CWE-789 - Uncontrolled Memory Allocation
    Assigner
    References
    Impacted products
    Vendor Product Version
    theotherphil imagecli Affected: 0 , ≤ 0.2.1 (custom)
    Create a notification for this product.
    Credits
    agrresore
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unknown",
              "product": "imagecli",
              "programFiles": [
                "src/image_ops.rs"
              ],
              "vendor": "theotherphil",
              "versions": [
                {
                  "lessThanOrEqual": "0.2.1",
                  "status": "affected",
                  "version": "0",
                  "versionType": "custom"
                }
              ]
            }
          ],
          "credits": [
            {
              "lang": "en",
              "type": "finder",
              "value": "agrresore"
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "imagecli\u0027s `scale \u003cratio\u003e` pipeline operation (Scale::apply() in src/image_ops.rs) computes output width/height as (dimension as f32 * ratio) as u32 with no upper-bound validation on the CLI-supplied ratio, which is parsed via nom::number::complete::float with no range check. A large ratio (e.g. 100000) causes an attempted allocation of hundreds of terabytes, aborting the process. Any application embedding imagecli as a library and accepting user-controlled pipeline strings is remotely crashable with a single request."
            }
          ],
          "metrics": [
            {
              "other": {
                "content": {
                  "value": "HIGH"
                },
                "type": "CVSS_3.1_severity"
              }
            },
            {
              "cvssV3_1": {
                "baseScore": 7.5,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
                "version": "3.1"
              }
            }
          ],
          "problemTypes": [
            {
              "descriptions": [
                {
                  "cweId": "CWE-789",
                  "description": "CWE-789 Uncontrolled Memory Allocation",
                  "lang": "en",
                  "type": "CWE"
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-05T06:58:47.554Z",
            "orgId": "309f9ea4-e3e9-4c6c-b79d-e8eb01244f2c",
            "shortName": "TuranSec"
          },
          "references": [
            {
              "url": "https://github.com/theotherphil/imagecli/issues/66"
            }
          ],
          "title": "imagecli: Uncontrolled Memory Allocation via Unbounded scale Ratio Causes Denial of Service"
        }
      },
      "cveMetadata": {
        "assignerOrgId": "309f9ea4-e3e9-4c6c-b79d-e8eb01244f2c",
        "assignerShortName": "TuranSec",
        "cveId": "CVE-2026-70377",
        "datePublished": "2026-08-05T06:58:47.554Z",
        "dateReserved": "2026-08-04T07:13:07.993Z",
        "dateUpdated": "2026-08-05T06:58:47.554Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }