{"api_version":"1","generated_at":"2026-10-12T14:26:41+00:00","cve":"CVE-2026-107785","urls":{"html":"https://cve.report/CVE-2026-107785","api":"https://cve.report/api/cve/CVE-2026-107785.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-107785","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-107785"},"summary":{"title":"Crux Agent silently fails SKA preshared key rotation when SHA-512 peering is negotiated","description":"Crux Agent from 1.9.0 before 2.0.3 uses the full SKA bilocation key as the WireGuard preshared key. When a peering session negotiates use of SHA-512, the key produced is 64 bytes instead of the 32 bytes WireGuard requires. The agent does not validate this size; instead it attempts to use the `wg set` command to update the live tunnel, and write the invalid key to the WireGuard configuration file. The update fails, so the live tunnel keeps using its previous preshared key until the tunnel is shut down. The tunnel will fail to start when restarted.\n\n\n\nFor a peer which has never successfully negotiated a 32-byte bilocation key in a Crux C2 organization which has the \"Enforce SKA Use\" setting turned off, no preshared key will be set for the tunnel. Therefore, an attacker who is able to intercept and store the peer's traffic, and has access (or will have access) to a cryptographically relevant quantum computer, will be able to decrypt the tunnel.","state":"PUBLISHED","assigner":"sirius","published_at":"2026-10-09 14:17:19","updated_at":"2026-10-09 17:16:45"},"problem_types":["CWE-252","CWE-325","CWE-394","CWE-394 CWE-394: Unexpected Status Code or Return Value","CWE-252 CWE-252: Unchecked Return Value","CWE-325 CWE-325: Missing Cryptographic Step"],"metrics":[{"version":"4.0","source":"d0a6edd6-4b7d-45f2-a6f9-9b944f7b6132","type":"Secondary","score":"6.3","severity":"MEDIUM","vector":"CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:H/SI:N/SA:N/E:U/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:N/AU:Y/R:A/V:C/RE:L/U:Amber","data":{"version":"4.0","vectorString":"CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:H/SI:N/SA:N/E:U/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:N/AU:Y/R:A/V:C/RE:L/U:Amber","baseScore":6.3,"baseSeverity":"MEDIUM","attackVector":"NETWORK","attackComplexity":"HIGH","attackRequirements":"PRESENT","privilegesRequired":"NONE","userInteraction":"NONE","vulnConfidentialityImpact":"HIGH","vulnIntegrityImpact":"NONE","vulnAvailabilityImpact":"NONE","subConfidentialityImpact":"HIGH","subIntegrityImpact":"NONE","subAvailabilityImpact":"NONE","exploitMaturity":"UNREPORTED","confidentialityRequirement":"NOT_DEFINED","integrityRequirement":"NOT_DEFINED","availabilityRequirement":"NOT_DEFINED","modifiedAttackVector":"NOT_DEFINED","modifiedAttackComplexity":"NOT_DEFINED","modifiedAttackRequirements":"NOT_DEFINED","modifiedPrivilegesRequired":"NOT_DEFINED","modifiedUserInteraction":"NOT_DEFINED","modifiedVulnConfidentialityImpact":"NOT_DEFINED","modifiedVulnIntegrityImpact":"NOT_DEFINED","modifiedVulnAvailabilityImpact":"NOT_DEFINED","modifiedSubConfidentialityImpact":"NOT_DEFINED","modifiedSubIntegrityImpact":"NOT_DEFINED","modifiedSubAvailabilityImpact":"NOT_DEFINED","Safety":"NEGLIGIBLE","Automatable":"YES","Recovery":"AUTOMATIC","valueDensity":"CONCENTRATED","vulnerabilityResponseEffort":"LOW","providerUrgency":"AMBER"}},{"version":"4.0","source":"CNA","type":"CVSS","score":"6.3","severity":"MEDIUM","vector":"CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:H/SI:N/SA:N/E:U/S:N/AU:Y/R:A/V:C/RE:L/U:Amber","data":{"Automatable":"YES","Recovery":"AUTOMATIC","Safety":"NEGLIGIBLE","attackComplexity":"HIGH","attackRequirements":"PRESENT","attackVector":"NETWORK","baseScore":6.3,"baseSeverity":"MEDIUM","exploitMaturity":"UNREPORTED","privilegesRequired":"NONE","providerUrgency":"AMBER","subAvailabilityImpact":"NONE","subConfidentialityImpact":"HIGH","subIntegrityImpact":"NONE","userInteraction":"NONE","valueDensity":"CONCENTRATED","vectorString":"CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:H/SI:N/SA:N/E:U/S:N/AU:Y/R:A/V:C/RE:L/U:Amber","version":"4.0","vulnAvailabilityImpact":"NONE","vulnConfidentialityImpact":"HIGH","vulnIntegrityImpact":"NONE","vulnerabilityResponseEffort":"LOW"}}],"references":[{"url":"https://sirius.computer/security-disclosure-policy/","name":"https://sirius.computer/security-disclosure-policy/","refsource":"d0a6edd6-4b7d-45f2-a6f9-9b944f7b6132","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-107785","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-107785","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"Sirius Computer, Inc.","product":"Crux Agent","version":"affected 1.9.0 2.0.3 semver","platforms":[]}],"timeline":[],"solutions":[{"source":"CNA","title":"","value":"Upgrade to Crux Agent 2.0.3 or later, which truncates the SKA key to the 32 bytes WireGuard requires. As a workaround, remove any custom settings for \"Hash Function\" in the agent's configuration (so as to use the default SHA-256 hash function).","time":"","lang":"en"}],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":{"cve_year":"2026","cve_id":"107785","cve":"CVE-2026-107785","epss":"0.001380000","percentile":"0.027360000","score_date":"2026-10-11","updated_at":"2026-10-12 00:13:21"},"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"adp":[{"metrics":[{"other":{"content":{"id":"CVE-2026-107785","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","timestamp":"2026-10-09T16:15:28.101092Z","version":"2.0.3"},"type":"ssvc"}}],"providerMetadata":{"dateUpdated":"2026-10-09T16:46:40.880Z","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","shortName":"CISA-ADP"},"title":"CISA ADP Vulnrichment"}],"cna":{"affected":[{"defaultStatus":"unaffected","product":"Crux Agent","vendor":"Sirius Computer, Inc.","versions":[{"lessThan":"2.0.3","status":"affected","version":"1.9.0","versionType":"semver"}]}],"descriptions":[{"lang":"en","supportingMedia":[{"base64":false,"type":"text/html","value":"<p>Crux Agent from 1.9.0 before 2.0.3 uses the full SKA bilocation key as the WireGuard preshared key. When a peering session negotiates use of SHA-512, the key produced is 64 bytes instead of the 32 bytes WireGuard requires. The agent does not validate this size; instead it attempts to use the `wg set` command to update the live tunnel, and write the invalid key to the WireGuard configuration file. The update fails, so the live tunnel keeps using its previous preshared key until the tunnel is shut down. The tunnel will fail to start when restarted.</p><p>For a peer which has never successfully negotiated a 32-byte bilocation key in a Crux C2 organization which has the \"Enforce SKA Use\" setting turned off, no preshared key will be set for the tunnel. Therefore, an attacker who is able to intercept and store the peer's traffic, and has access (or will have access) to a cryptographically relevant quantum computer, will be able to decrypt the tunnel.</p>"}],"value":"Crux Agent from 1.9.0 before 2.0.3 uses the full SKA bilocation key as the WireGuard preshared key. When a peering session negotiates use of SHA-512, the key produced is 64 bytes instead of the 32 bytes WireGuard requires. The agent does not validate this size; instead it attempts to use the `wg set` command to update the live tunnel, and write the invalid key to the WireGuard configuration file. The update fails, so the live tunnel keeps using its previous preshared key until the tunnel is shut down. The tunnel will fail to start when restarted.\n\n\n\nFor a peer which has never successfully negotiated a 32-byte bilocation key in a Crux C2 organization which has the \"Enforce SKA Use\" setting turned off, no preshared key will be set for the tunnel. Therefore, an attacker who is able to intercept and store the peer's traffic, and has access (or will have access) to a cryptographically relevant quantum computer, will be able to decrypt the tunnel."}],"impacts":[{"capecId":"CAPEC-97","descriptions":[{"lang":"en","value":"CAPEC-97: Cryptanalysis"}]}],"metrics":[{"cvssV4_0":{"Automatable":"YES","Recovery":"AUTOMATIC","Safety":"NEGLIGIBLE","attackComplexity":"HIGH","attackRequirements":"PRESENT","attackVector":"NETWORK","baseScore":6.3,"baseSeverity":"MEDIUM","exploitMaturity":"UNREPORTED","privilegesRequired":"NONE","providerUrgency":"AMBER","subAvailabilityImpact":"NONE","subConfidentialityImpact":"HIGH","subIntegrityImpact":"NONE","userInteraction":"NONE","valueDensity":"CONCENTRATED","vectorString":"CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:H/SI:N/SA:N/E:U/S:N/AU:Y/R:A/V:C/RE:L/U:Amber","version":"4.0","vulnAvailabilityImpact":"NONE","vulnConfidentialityImpact":"HIGH","vulnIntegrityImpact":"NONE","vulnerabilityResponseEffort":"LOW"},"format":"CVSS","scenarios":[{"lang":"en","value":"GENERAL"}]}],"problemTypes":[{"descriptions":[{"cweId":"CWE-394","description":"CWE-394: Unexpected Status Code or Return Value","lang":"en","type":"CWE"}]},{"descriptions":[{"cweId":"CWE-252","description":"CWE-252: Unchecked Return Value","lang":"en","type":"CWE"}]},{"descriptions":[{"cweId":"CWE-325","description":"CWE-325: Missing Cryptographic Step","lang":"en","type":"CWE"}]}],"providerMetadata":{"dateUpdated":"2026-10-09T13:15:57.779Z","orgId":"d0a6edd6-4b7d-45f2-a6f9-9b944f7b6132","shortName":"sirius"},"references":[{"tags":["vendor-advisory"],"url":"https://sirius.computer/security-disclosure-policy/"}],"solutions":[{"lang":"en","supportingMedia":[{"base64":false,"type":"text/html","value":"<p>Upgrade to Crux Agent 2.0.3 or later, which truncates the SKA key to the 32 bytes WireGuard requires. As a workaround, remove any custom settings for \"Hash Function\" in the agent's configuration (so as to use the default SHA-256 hash function).</p>"}],"value":"Upgrade to Crux Agent 2.0.3 or later, which truncates the SKA key to the 32 bytes WireGuard requires. As a workaround, remove any custom settings for \"Hash Function\" in the agent's configuration (so as to use the default SHA-256 hash function)."}],"source":{"discovery":"UNKNOWN"},"title":"Crux Agent silently fails SKA preshared key rotation when SHA-512 peering is negotiated","x_generator":{"engine":"Vulnogram 1.0.5"}}},"cveMetadata":{"assignerOrgId":"d0a6edd6-4b7d-45f2-a6f9-9b944f7b6132","assignerShortName":"sirius","cveId":"CVE-2026-107785","datePublished":"2026-10-09T13:15:57.779Z","dateReserved":"2026-10-08T20:13:33.223Z","dateUpdated":"2026-10-09T16:46:40.880Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-10-09 14:17:19","lastModifiedDate":"2026-10-09 17:16:45","problem_types":["CWE-252","CWE-325","CWE-394","CWE-394 CWE-394: Unexpected Status Code or Return Value","CWE-252 CWE-252: Unchecked Return Value","CWE-325 CWE-325: Missing Cryptographic Step"],"metrics":{"cvssMetricV40":[{"source":"d0a6edd6-4b7d-45f2-a6f9-9b944f7b6132","type":"Secondary","cvssData":{"version":"4.0","vectorString":"CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:H/SI:N/SA:N/E:U/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:N/AU:Y/R:A/V:C/RE:L/U:Amber","baseScore":6.3,"baseSeverity":"MEDIUM","attackVector":"NETWORK","attackComplexity":"HIGH","attackRequirements":"PRESENT","privilegesRequired":"NONE","userInteraction":"NONE","vulnConfidentialityImpact":"HIGH","vulnIntegrityImpact":"NONE","vulnAvailabilityImpact":"NONE","subConfidentialityImpact":"HIGH","subIntegrityImpact":"NONE","subAvailabilityImpact":"NONE","exploitMaturity":"UNREPORTED","confidentialityRequirement":"NOT_DEFINED","integrityRequirement":"NOT_DEFINED","availabilityRequirement":"NOT_DEFINED","modifiedAttackVector":"NOT_DEFINED","modifiedAttackComplexity":"NOT_DEFINED","modifiedAttackRequirements":"NOT_DEFINED","modifiedPrivilegesRequired":"NOT_DEFINED","modifiedUserInteraction":"NOT_DEFINED","modifiedVulnConfidentialityImpact":"NOT_DEFINED","modifiedVulnIntegrityImpact":"NOT_DEFINED","modifiedVulnAvailabilityImpact":"NOT_DEFINED","modifiedSubConfidentialityImpact":"NOT_DEFINED","modifiedSubIntegrityImpact":"NOT_DEFINED","modifiedSubAvailabilityImpact":"NOT_DEFINED","Safety":"NEGLIGIBLE","Automatable":"YES","Recovery":"AUTOMATIC","valueDensity":"CONCENTRATED","vulnerabilityResponseEffort":"LOW","providerUrgency":"AMBER"}}],"ssvcV203":[{"source":"134c704f-9b21-4f2e-91b3-4a467353bcc0","ssvcData":{"timestamp":"2026-10-09T16:15:28.101092Z","id":"CVE-2026-107785","options":[{"exploitation":"none"},{"automatable":"no"},{"technicalImpact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}]},"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"107785","Ordinal":"1","Title":"Crux Agent silently fails SKA preshared key rotation when SHA-51","CVE":"CVE-2026-107785","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"107785","Ordinal":"1","NoteData":"Crux Agent from 1.9.0 before 2.0.3 uses the full SKA bilocation key as the WireGuard preshared key. When a peering session negotiates use of SHA-512, the key produced is 64 bytes instead of the 32 bytes WireGuard requires. The agent does not validate this size; instead it attempts to use the `wg set` command to update the live tunnel, and write the invalid key to the WireGuard configuration file. The update fails, so the live tunnel keeps using its previous preshared key until the tunnel is shut down. The tunnel will fail to start when restarted.\n\n\n\nFor a peer which has never successfully negotiated a 32-byte bilocation key in a Crux C2 organization which has the \"Enforce SKA Use\" setting turned off, no preshared key will be set for the tunnel. Therefore, an attacker who is able to intercept and store the peer's traffic, and has access (or will have access) to a cryptographically relevant quantum computer, will be able to decrypt the tunnel.","Type":"Description","Title":"Crux Agent silently fails SKA preshared key rotation when SHA-51"}]}}}