CVE-2025-8814
BaseFortify
Publication date: 2025-08-10
Last updated on: 2026-04-29
Assigner: VulDB
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| pybbs_project | pybbs | to 6.0.0 (inc) |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-862 | The product does not perform an authorization check when an actor attempts to access a resource or perform an action. |
| CWE-352 | The web application does not, or cannot, sufficiently verify whether a request was intentionally provided by the user who sent the request, which could have originated from an unauthorized actor. |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
CVE-2025-8814 is a Cross-Site Request Forgery (CSRF) vulnerability in PyBBS versions up to 6.0.0. The vulnerability arises because the application lacks CSRF protection mechanisms on administrative endpoints such as `/admin/user/delete` and `/admin/user/edit`. These endpoints allow administrators to delete user accounts or modify user information via HTTP requests without verifying that the requests are intentionally made by the authenticated user. Attackers can exploit this by crafting malicious requests that an administrator's browser executes unknowingly, leading to unauthorized deletion or modification of user accounts. The vulnerability is linked to the `setCookie` function in the `CookieUtil.java` file, which did not set the `SameSite` attribute on cookies, allowing cookies to be sent on cross-site requests and facilitating CSRF attacks. A patch has been released to set the `SameSite` attribute to "Lax" on cookies to mitigate this risk. [1, 2, 3, 5]
How can this vulnerability impact me? :
This vulnerability can impact you by allowing attackers to perform unauthorized actions on your PyBBS installation if you are an administrator. Specifically, attackers can cause an administrator's browser to unknowingly delete user accounts or modify sensitive user information such as passwords, emails, and other profile details without consent. This compromises the integrity of your user data and administrative control, potentially leading to loss of user accounts, unauthorized changes, and disruption of service. Since the attack can be initiated remotely and does not require authentication, it poses a significant risk if the application is not patched. [1, 2, 5]
How can this vulnerability be detected on my network or system? Can you suggest some commands?
This vulnerability can be detected by monitoring for unauthorized or suspicious HTTP requests to the vulnerable endpoints `/admin/user/delete` and `/admin/user/edit` that perform state-changing operations without proper CSRF tokens. Since the endpoints accept GET and POST requests without CSRF protection, you can look for unexpected requests to these URLs, especially those that modify user data or delete accounts. Network traffic inspection tools like Wireshark or HTTP proxy logs can be used to identify such requests. Additionally, you can use curl commands to test the endpoints for CSRF protection by attempting to perform actions without valid CSRF tokens. For example, to test the delete endpoint: `curl -X GET 'https://your-pybbs-site/admin/user/delete?uid=someUserId' -b 'your_session_cookie'` and observe if the action is performed without CSRF validation. Similarly, for the edit endpoint, you can craft a POST request with user parameters and check if it succeeds without CSRF tokens. Monitoring logs for unexpected user modifications or deletions can also help detect exploitation attempts. [1, 2]
What immediate steps should I take to mitigate this vulnerability?
The immediate mitigation step is to apply the available patch identified by commit `8aa2bb1aef3346e49aec6358edf5e47ce905ae7b` which refactors the `setCookie` method to set the SameSite attribute to "Lax" on cookies, thereby reducing CSRF risks. This patch uses Spring Framework's `ResponseCookie` builder to explicitly set `SameSite=Lax`, `httpOnly=true`, and dynamically sets the `secure` flag based on the request. Additionally, avoid using HTTP GET requests for state-changing operations like user deletion and implement proper CSRF protection mechanisms such as anti-CSRF tokens on all administrative endpoints. Until the patch is applied, restrict access to the vulnerable endpoints to trusted networks or users, and monitor for suspicious activity. Updating to a version of PyBBS that includes this patch is strongly recommended. [3]