FlagForge Allows Unauthenticated Badge Template API Access
Flag Forge is a Capture The Flag (CTF) platform. Starting in version 2.0.0 and prior to version 2.3.2, the `/api/admin/badge-templates` (GET) and `/api/admin/badge-templates/create` (POST) endpoints previously allowed access without authentication or authorization. This could have enabled unauthorized users to retrieve all badge templates and sensitive metadata (createdBy, createdAt, updatedAt) and/or create arbitrary badge templates in the database. This could lead to data exposure, database pollution, or abuse of the badge system. The issue has been fixed in FlagForge v2.3.2. GET, POST, UPDATE, and DELETE endpoints now require authentication. Authorization checks ensure only admins can access and modify badge templates. No reliable workarounds are available.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2025-61777
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 3 Nov 2026, 18:42 UTC · Revision 1
Source evidence
FlagForge Allows Unauthenticated Badge Template API Access
core-osv · Original sourcePublished 6 Oct 2025, 16:44 UTC
Flag Forge is a Capture The Flag (CTF) platform. Starting in version 2.0.0 and prior to version 2.3.2, the `/api/admin/badge-templates` (GET) and `/api/admin/badge-templates/create` (POST) endpoints previously allowed access without authentication or authorization. This could have enabled unauthorized users to retrieve all badge templates and sensitive metadata (createdBy, createdAt, updatedAt) and/or create arbitrary badge templates in the database. This could lead to data exposure, database pollution, or abuse of the badge system. The issue has been fixed in FlagForge v2.3.2. GET, POST, UPDATE, and DELETE endpoints now require authentication. Authorization checks ensure only admins can access and modify badge templates. No reliable workarounds are available.
osv:CVE-2025-61777
Complete source record
{
"id": "cfea0596e783da9ed313b6a8ac299c6f0eeb04849c9dfea2e0517a900a19b6d0",
"url": "https://osv.dev/vulnerability/CVE-2025-61777",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "FlagForge Allows Unauthenticated Badge Template API Access",
"summary": "Flag Forge is a Capture The Flag (CTF) platform. Starting in version 2.0.0 and prior to version 2.3.2, the `/api/admin/badge-templates` (GET) and `/api/admin/badge-templates/create` (POST) endpoints previously allowed access without authentication or authorization. This could have enabled unauthorized users to retrieve all badge templates and sensitive metadata (createdBy, createdAt, updatedAt) and/or create arbitrary badge templates in the database. This could lead to data exposure, database pollution, or abuse of the badge system. The issue has been fixed in FlagForge v2.3.2. GET, POST, UPDATE, and DELETE endpoints now require authentication. Authorization checks ensure only admins can access and modify badge templates. No reliable workarounds are available.",
"evidence": "osv:CVE-2025-61777",
"products": [],
"severity": "critical",
"structured": {
"id": "CVE-2025-61777",
"aliases": [
"CVE-2025-61777",
"GHSA-26rx-c53q-rjf9"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:L"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/flagforgectf/flagforge",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "e2121c5fb7a512a49dcd875812c944265fb1a846"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"introduced": "2.0.0"
},
{
"fixed": "2.3.2"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"fixed": "e2121c5fb7a512a49dcd875812c944265fb1a846"
}
],
"source": "REFERENCES_COMMIT"
},
{
"cpe": "cpe:2.3:a:flagforge:flagforge:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "2.0"
},
{
"fixed": "2.3.2"
}
],
"source": "CPE_RANGE"
}
]
}
}
],
"versions": [
"v2.3.1",
"v2.3",
"v2.2",
"v2",
"ctf"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2025-61777.json"
}
}
],
"modified": "2026-10-28T02:30:31.494746593Z",
"provider": "osv",
"references": [
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/61xxx/CVE-2025-61777.json",
"https://github.com/FlagForgeCTF/flagForge/security/advisories/GHSA-26rx-c53q-rjf9",
"https://nvd.nist.gov/vuln/detail/CVE-2025-61777",
"https://github.com/FlagForgeCTF/flagForge/commit/e2121c5fb7a512a49dcd875812c944265fb1a846"
],
"provider_metadata": {
"cwe_ids": [
"CWE-200",
"CWE-284",
"CWE-306"
],
"cna_assigner": "GitHub_M",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/61xxx/CVE-2025-61777.json"
}
},
"related_cves": [
{
"value": "CVE-2025-61777",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 498525,
"published_at": "2025-10-06T16:44:27.713+00:00"
}