Custom Field Template <= 2.7.8 - Authenticated (Contributor+) Insecure Direct Object Reference to Arbitrary Media File Deletion via 'file_field' Parameter
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: none
- Automatable: no
- Technical impact: partial
Summary
The Custom Field Template plugin for WordPress is vulnerable to Insecure Direct Object Reference in all versions up to, and including, 2.7.8 via the edit_meta_value due to missing validation on a user controlled key. This makes it possible for authenticated attackers, with contributor-level access and above, to delete arbitrary media attachments site-wide by supplying any numeric attachment ID in the file-field parameter alongside the corresponding delete flag, causing content loss and broken pages. Exploitation requires that the attacker's post is governed by a Custom Field Template containing at least one file-type field with the mediaRemove option not enabled, which is the default configuration for file fields.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: no · Technical impact: partial
- Record last updated
Affected versions
- hiroaki-miyashita Custom Field Template
through 2.7.8
References 8
plugins.trac.wordpress.org
- browser/custom-field-template/tags/2.7.8/custom-field-template.php#L3500
- browser/custom-field-template/tags/2.7.8/custom-field-template.php#L3462
- browser/custom-field-template/tags/2.7.8/custom-field-template.php#L105
- browser/custom-field-template/tags/2.7.7/custom-field-template.php#L3500
- browser/custom-field-template/tags/2.7.7/custom-field-template.php#L3462
- browser/custom-field-template/tags/2.7.7/custom-field-template.php#L105
- changeset?reponame=&old=3589466%40custom-field-template&new=3589466%40custom-field-template