Scoold is a Q&A and a knowledge sharing platform for teams. Prior to 1.69.0, users with personal API tokens can retrieve replies from questions in private spaces they cannot access because src/main/java/com/erudika/scoold/api/ApiController.java in ApiController.getPostReplies() does not apply canAccessSpace before returning data from GET /api/posts/{id}/answers. The issue is reachable when scoold.api_user_access_enabled and scoold.api_enabled are true and a token holder knows or enumerates a private question identifier. Under those conditions, the question endpoint can deny access while the answers endpoint returns the private reply bodies, exposing confidential team or project discussions. This issue is fixed in version 1.69.0.
{
"cna_assigner": "GitHub_M",
"cwe_ids": [
"CWE-862"
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54676.json"
}{
"extracted_events": [
{
"range": [
{
"introduced": "0"
},
{
"fixed": "1.69.0"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"fixed": "6976afb931d025cf0a35b11d6dff4f699dc87981"
}
],
"source": "REFERENCES_COMMIT"
},
{
"original_tag": "1.69.0",
"range": [
{
"fixed": "0a7e70a0b27bb69e982b23b85c3912079f8e2d6c"
}
],
"source": "REFERENCES_TAG"
}
]
}
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-54676.json"
[
{
"deprecated": false,
"digest": {
"line_hashes": [
"214140389431454320069094030877316714223",
"12751878573676001547197416990738175394",
"152861252330903965055728983293499228807",
"20405540369825142401175680085816172771",
"288870548894507329218208679061226920547",
"294879886540187065442309103362586705715",
"4593311669918234589066803275526290163",
"18850034403895829146662855712690930897"
],
"threshold": 0.9
},
"id": "CVE-2026-54676-1c54c36e",
"signature_type": "Line",
"signature_version": "v1",
"source": "https://github.com/erudika/scoold/commit/6976afb931d025cf0a35b11d6dff4f699dc87981",
"target": {
"file": "src/main/java/com/erudika/scoold/api/ApiController.java"
}
},
{
"deprecated": false,
"digest": {
"function_hash": "165481369812329301252854396164116765279",
"length": 840
},
"id": "CVE-2026-54676-281755f2",
"signature_type": "Function",
"signature_version": "v1",
"source": "https://github.com/erudika/scoold/commit/6976afb931d025cf0a35b11d6dff4f699dc87981",
"target": {
"file": "src/main/java/com/erudika/scoold/api/ApiController.java",
"function": "createComment"
}
},
{
"deprecated": false,
"digest": {
"function_hash": "43190817914938110234329890356548032510",
"length": 2076
},
"id": "CVE-2026-54676-4cecd476",
"signature_type": "Function",
"signature_version": "v1",
"source": "https://github.com/erudika/scoold/commit/6976afb931d025cf0a35b11d6dff4f699dc87981",
"target": {
"file": "src/main/java/com/erudika/scoold/controllers/QuestionController.java",
"function": "reply"
}
},
{
"deprecated": false,
"digest": {
"line_hashes": [
"17550532948198692495221905628059498934",
"11464370595746900391358888767880882617",
"90690254895923334610480098428829575490",
"3177402345970019484793057667001249734",
"69394473345130869121946493590238775840",
"126580902929930006157658488451411727587",
"282568049417125734116103822244709636327",
"315674784866505436641364522565594728715",
"58965679373450222669459491006643862839",
"188664710374987703780811828237980724869",
"321670819365365144693855987595054655641",
"183705008748981372196449485641431321972",
"41587435076670278801016405252995639322",
"307577228727934346349517374418785743400",
"22866988693520550182989813480540446786",
"258880338931032624351228864596153687776",
"47674073291652508213672842705123291091"
],
"threshold": 0.9
},
"id": "CVE-2026-54676-5fb6538f",
"signature_type": "Line",
"signature_version": "v1",
"source": "https://github.com/erudika/scoold/commit/6976afb931d025cf0a35b11d6dff4f699dc87981",
"target": {
"file": "src/main/java/com/erudika/scoold/controllers/CommentController.java"
}
},
{
"deprecated": false,
"digest": {
"function_hash": "335848912731711551739255629772413606198",
"length": 514
},
"id": "CVE-2026-54676-65388d55",
"signature_type": "Function",
"signature_version": "v1",
"source": "https://github.com/erudika/scoold/commit/6976afb931d025cf0a35b11d6dff4f699dc87981",
"target": {
"file": "src/main/java/com/erudika/scoold/controllers/CommentController.java",
"function": "getAjax"
}
},
{
"deprecated": false,
"digest": {
"line_hashes": [
"215034228214247430921819603147615511563",
"214843655377646048164978011536923029765",
"141626938874582925316662978423306831340",
"272992723082754313239247746073517217104"
],
"threshold": 0.9
},
"id": "CVE-2026-54676-9e58b8db",
"signature_type": "Line",
"signature_version": "v1",
"source": "https://github.com/erudika/scoold/commit/6976afb931d025cf0a35b11d6dff4f699dc87981",
"target": {
"file": "src/main/java/com/erudika/scoold/controllers/QuestionController.java"
}
},
{
"deprecated": false,
"digest": {
"function_hash": "182241001225813342877959525579162436715",
"length": 353
},
"id": "CVE-2026-54676-b3ca302e",
"signature_type": "Function",
"signature_version": "v1",
"source": "https://github.com/erudika/scoold/commit/6976afb931d025cf0a35b11d6dff4f699dc87981",
"target": {
"file": "src/main/java/com/erudika/scoold/api/ApiController.java",
"function": "getPostReplies"
}
},
{
"deprecated": false,
"digest": {
"function_hash": "194385450352719297558837378803343391825",
"length": 405
},
"id": "CVE-2026-54676-d4574bc7",
"signature_type": "Function",
"signature_version": "v1",
"source": "https://github.com/erudika/scoold/commit/6976afb931d025cf0a35b11d6dff4f699dc87981",
"target": {
"file": "src/main/java/com/erudika/scoold/controllers/CommentController.java",
"function": "get"
}
},
{
"deprecated": false,
"digest": {
"function_hash": "270551519006884896435842814601648634026",
"length": 1004
},
"id": "CVE-2026-54676-e3f731c7",
"signature_type": "Function",
"signature_version": "v1",
"source": "https://github.com/erudika/scoold/commit/6976afb931d025cf0a35b11d6dff4f699dc87981",
"target": {
"file": "src/main/java/com/erudika/scoold/controllers/CommentController.java",
"function": "createAjax"
}
}
]
"2026-10-28T11:14:42Z"