{"api_version":"1","generated_at":"2026-10-15T22:34:16+00:00","cve":"CVE-2026-55840","urls":{"html":"https://cve.report/CVE-2026-55840","api":"https://cve.report/api/cve/CVE-2026-55840.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-55840","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-55840"},"summary":{"title":"Scoold: Open Redirect in getBackToUrl() allows phishing via domain-prefix startsWith bypass","description":"Scoold is a Q&A and a knowledge sharing platform for teams. Prior to 1.69.1, the getBackToUrl() method in src/main/java/com/erudika/scoold/utils/HttpUtils.java validates the backto and returnto parameters with Strings.CI.startsWith against the configured server URL. An attacker can supply an absolute URL whose hostname begins with the legitimate hostname, causing URI.resolve() to retain the attacker URL and the prefix check to accept it. A victim who follows the crafted sign-in link can be redirected to an attacker-controlled domain after authentication, enabling phishing and possible credential or token theft. This issue is fixed in version 1.69.1.","state":"PUBLISHED","assigner":"GitHub_M","published_at":"2026-10-15 19:17:40","updated_at":"2026-10-15 21:17:13"},"problem_types":["CWE-601","CWE-601 CWE-601: URL Redirection to Untrusted Site ('Open Redirect')"],"metrics":[{"version":"3.1","source":"security-advisories@github.com","type":"Secondary","score":"5.4","severity":"MEDIUM","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N","data":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N","baseScore":5.4,"baseSeverity":"MEDIUM","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"REQUIRED","scope":"UNCHANGED","confidentialityImpact":"LOW","integrityImpact":"LOW","availabilityImpact":"NONE"}},{"version":"3.1","source":"CNA","type":"DECLARED","score":"5.4","severity":"MEDIUM","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N","data":{"attackComplexity":"LOW","attackVector":"NETWORK","availabilityImpact":"NONE","baseScore":5.4,"baseSeverity":"MEDIUM","confidentialityImpact":"LOW","integrityImpact":"LOW","privilegesRequired":"NONE","scope":"UNCHANGED","userInteraction":"REQUIRED","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N","version":"3.1"}}],"references":[{"url":"https://github.com/Erudika/scoold/releases/tag/1.69.1","name":"https://github.com/Erudika/scoold/releases/tag/1.69.1","refsource":"security-advisories@github.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/Erudika/scoold/security/advisories/GHSA-85fm-6f2v-74pq","name":"https://github.com/Erudika/scoold/security/advisories/GHSA-85fm-6f2v-74pq","refsource":"134c704f-9b21-4f2e-91b3-4a467353bcc0","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/Erudika/scoold/commit/9d61f6fe15d4f9f6262812ba7fea43be8d5bb745","name":"https://github.com/Erudika/scoold/commit/9d61f6fe15d4f9f6262812ba7fea43be8d5bb745","refsource":"security-advisories@github.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-55840","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-55840","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"Erudika","product":"scoold","version":"affected < 1.69.1","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"adp":[{"metrics":[{"other":{"content":{"id":"CVE-2026-55840","options":[{"Exploitation":"poc"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","timestamp":"2026-10-15T20:15:05.964680Z","version":"2.0.3"},"type":"ssvc"}}],"providerMetadata":{"dateUpdated":"2026-10-15T20:16:08.554Z","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","shortName":"CISA-ADP"},"references":[{"tags":["exploit"],"url":"https://github.com/Erudika/scoold/security/advisories/GHSA-85fm-6f2v-74pq"}],"title":"CISA ADP Vulnrichment"}],"cna":{"affected":[{"product":"scoold","vendor":"Erudika","versions":[{"status":"affected","version":"< 1.69.1"}]}],"descriptions":[{"lang":"en","value":"Scoold is a Q&A and a knowledge sharing platform for teams. Prior to 1.69.1, the getBackToUrl() method in src/main/java/com/erudika/scoold/utils/HttpUtils.java validates the backto and returnto parameters with Strings.CI.startsWith against the configured server URL. An attacker can supply an absolute URL whose hostname begins with the legitimate hostname, causing URI.resolve() to retain the attacker URL and the prefix check to accept it. A victim who follows the crafted sign-in link can be redirected to an attacker-controlled domain after authentication, enabling phishing and possible credential or token theft. This issue is fixed in version 1.69.1."}],"metrics":[{"cvssV3_1":{"attackComplexity":"LOW","attackVector":"NETWORK","availabilityImpact":"NONE","baseScore":5.4,"baseSeverity":"MEDIUM","confidentialityImpact":"LOW","integrityImpact":"LOW","privilegesRequired":"NONE","scope":"UNCHANGED","userInteraction":"REQUIRED","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N","version":"3.1"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-601","description":"CWE-601: URL Redirection to Untrusted Site ('Open Redirect')","lang":"en","type":"CWE"}]}],"providerMetadata":{"dateUpdated":"2026-10-15T18:31:57.916Z","orgId":"a0819718-46f1-4df5-94e2-005712e83aaa","shortName":"GitHub_M"},"references":[{"name":"https://github.com/Erudika/scoold/security/advisories/GHSA-85fm-6f2v-74pq","tags":["x_refsource_CONFIRM"],"url":"https://github.com/Erudika/scoold/security/advisories/GHSA-85fm-6f2v-74pq"},{"name":"https://github.com/Erudika/scoold/commit/9d61f6fe15d4f9f6262812ba7fea43be8d5bb745","tags":["x_refsource_MISC"],"url":"https://github.com/Erudika/scoold/commit/9d61f6fe15d4f9f6262812ba7fea43be8d5bb745"},{"name":"https://github.com/Erudika/scoold/releases/tag/1.69.1","tags":["x_refsource_MISC"],"url":"https://github.com/Erudika/scoold/releases/tag/1.69.1"}],"source":{"advisory":"GHSA-85fm-6f2v-74pq","discovery":"UNKNOWN"},"title":"Scoold: Open Redirect in getBackToUrl() allows phishing via domain-prefix startsWith bypass"}},"cveMetadata":{"assignerOrgId":"a0819718-46f1-4df5-94e2-005712e83aaa","assignerShortName":"GitHub_M","cveId":"CVE-2026-55840","datePublished":"2026-10-15T18:31:57.916Z","dateReserved":"2026-06-17T16:29:38.865Z","dateUpdated":"2026-10-15T20:16:08.554Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-10-15 19:17:40","lastModifiedDate":"2026-10-15 21:17:13","problem_types":["CWE-601","CWE-601 CWE-601: URL Redirection to Untrusted Site ('Open Redirect')"],"metrics":{"cvssMetricV31":[{"source":"security-advisories@github.com","type":"Secondary","cvssData":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N","baseScore":5.4,"baseSeverity":"MEDIUM","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"REQUIRED","scope":"UNCHANGED","confidentialityImpact":"LOW","integrityImpact":"LOW","availabilityImpact":"NONE"},"exploitabilityScore":2.8,"impactScore":2.5}],"ssvcV203":[{"source":"134c704f-9b21-4f2e-91b3-4a467353bcc0","ssvcData":{"timestamp":"2026-10-15T20:15:05.964680Z","id":"CVE-2026-55840","options":[{"exploitation":"poc"},{"automatable":"no"},{"technicalImpact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}]},"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"55840","Ordinal":"1","Title":"Scoold: Open Redirect in getBackToUrl() allows phishing via doma","CVE":"CVE-2026-55840","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"55840","Ordinal":"1","NoteData":"Scoold is a Q&A and a knowledge sharing platform for teams. Prior to 1.69.1, the getBackToUrl() method in src/main/java/com/erudika/scoold/utils/HttpUtils.java validates the backto and returnto parameters with Strings.CI.startsWith against the configured server URL. An attacker can supply an absolute URL whose hostname begins with the legitimate hostname, causing URI.resolve() to retain the attacker URL and the prefix check to accept it. A victim who follows the crafted sign-in link can be redirected to an attacker-controlled domain after authentication, enabling phishing and possible credential or token theft. This issue is fixed in version 1.69.1.","Type":"Description","Title":"Scoold: Open Redirect in getBackToUrl() allows phishing via doma"}]}}}