CVE-2021-42669 in the critical feed json
A file upload vulnerability exists in Sourcecodester Engineers Online Portal in PHP via dashboard_teacher.php, which allows changing the av…
published 2021-11-05 5 y ago modified 2026-06-17 4 mo ago also EUVD-2021-29630
- cvss
- 9.8
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 23.3%
- EPSS 23.3% chance of exploitation in 30 days, percentile 97%
- public exploits
- 0
- none known
Summary
A file upload vulnerability exists in Sourcecodester Engineers Online Portal in PHP via dashboard_teacher.php, which allows changing the avatar through teacher_avatar.php. Once an avatar gets uploaded it is getting uploaded to the /admin/uploads/ directory, and is accessible by all users. By uploading a php webshell containing "<?php system($_GET["cmd"]); ?>" the attacker can execute commands on the web server with - /admin/uploads/php-webshell?cmd=id.
Exploit prediction
23.27% chance of exploitation in the next 30 days, higher than 97% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/TheHackingRabbi/CVE-2021-42669 referenced PoC, tagged "exploit" by a source, unverified
- github.com https://github.com/nu11secur1ty/CVE-mitre/tree/main/CVE-2021-42671 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 3.1 | 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| NVD | 2.0 | 10.0 | AV:N/AC:L/Au:N/C:C/I:C/A:C |
Classification
- Weakness
-
- CWE-434 Unrestricted Upload of File with Dangerous Type
References
-
github.com
/TheHackingRabbi/CVE-2021-42669
exploit, third-party-advisory
-
github.com
/nu11secur1ty/CVE-mitre/tree/main/CVE-2021-42671
exploit, third-party-advisory
-
sourcecodester.com
/php/13115/engineers-online-portal-php.html
product, third-party-advisory
Sources
- CVE List CVE-2021-42669
- NVD CVE-2021-42669
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.