Search
Find a vulnerability
Search criteria
ⓘ
Use this form to refine search results.
Full-text search supports keyword queries with ranking and filtering.
You can combine vendor, product, and sources to narrow results.
Enable “Apply ordering” to sort by date instead of relevance.
4 vulnerabilities by Soft-Machine-io
CVE-2026-55176 (GCVE-0-2026-55176)
Vulnerability from nvd – Published: 2026-09-30 16:30 – Updated: 2026-09-30 16:30
VLAI
EPSS
VEX
Title
Soft Machine: Cross-tenant workspace API auth bypass via shared `CONTAINER_SHARED_SECRET` bearer token
Summary
Soft Machine is a Virtual Machine–based agentic development environment / Cloud OS. In versions 0.2.247 and prior, two authentication helpers in /app/server.js — verifyContainerAuth() and authenticateWorkspaceHttp() — accept the global CONTAINER_SHARED_SECRET as a bearer token without verifying which workspace the caller belongs to. Because that secret is set identically on every container in the Fly app and is reachable from the user-facing process environment inside each workspace, any tenant can use it to authenticate to any other tenant's workspace API. The result is cross-workspace read, write, and destructive-restore primitives reachable from any paying customer's shell. The existing per-workspace token check (workspaceTokenMatches) protects the user-facing per-workspace token path, but the shared-secret bearer path bypasses it entirely. At time of publication, there are no publicly known patches.
Severity
9 (Critical)
CWE
- CWE-863 - Incorrect Authorization
Assigner
References
1 reference
| URL | Tags |
|---|---|
| https://github.com/Soft-Machine-io/security/secur… | x_refsource_CONFIRM |
Impacted products
1 product
| Vendor | Product | Version | |
|---|---|---|---|
| Soft-Machine-io | security |
Affected:
<= 0.2.247
|
{
"containers": {
"cna": {
"affected": [
{
"product": "security",
"vendor": "Soft-Machine-io",
"versions": [
{
"status": "affected",
"version": "\u003c= 0.2.247"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "Soft Machine is a Virtual Machine\u2013based agentic development environment / Cloud OS. In versions 0.2.247 and prior, two authentication helpers in /app/server.js \u2014 verifyContainerAuth() and authenticateWorkspaceHttp() \u2014 accept the global CONTAINER_SHARED_SECRET as a bearer token without verifying which workspace the caller belongs to. Because that secret is set identically on every container in the Fly app and is reachable from the user-facing process environment inside each workspace, any tenant can use it to authenticate to any other tenant\u0027s workspace API. The result is cross-workspace read, write, and destructive-restore primitives reachable from any paying customer\u0027s shell. The existing per-workspace token check (workspaceTokenMatches) protects the user-facing per-workspace token path, but the shared-secret bearer path bypasses it entirely. At time of publication, there are no publicly known patches."
}
],
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "ADJACENT_NETWORK",
"availabilityImpact": "HIGH",
"baseScore": 9,
"baseSeverity": "CRITICAL",
"confidentialityImpact": "HIGH",
"integrityImpact": "HIGH",
"privilegesRequired": "LOW",
"scope": "CHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:A/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H",
"version": "3.1"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-863",
"description": "CWE-863: Incorrect Authorization",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-30T16:30:42.729Z",
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M"
},
"references": [
{
"name": "https://github.com/Soft-Machine-io/security/security/advisories/GHSA-63gh-vp9f-vxhj",
"tags": [
"x_refsource_CONFIRM"
],
"url": "https://github.com/Soft-Machine-io/security/security/advisories/GHSA-63gh-vp9f-vxhj"
}
],
"source": {
"advisory": "GHSA-63gh-vp9f-vxhj",
"discovery": "UNKNOWN"
},
"title": "Soft Machine: Cross-tenant workspace API auth bypass via shared `CONTAINER_SHARED_SECRET` bearer token"
}
},
"cveMetadata": {
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"cveId": "CVE-2026-55176",
"datePublished": "2026-09-30T16:30:42.729Z",
"dateReserved": "2026-06-16T15:20:43.085Z",
"dateUpdated": "2026-09-30T16:30:42.729Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-46711 (GCVE-0-2026-46711)
Vulnerability from nvd – Published: 2026-09-30 16:30 – Updated: 2026-09-30 17:02
VLAI
EPSS
VEX
Title
Soft Machine: Unauthenticated workspace API exposes arbitrary file read & directory exfiltration to any peer on the Fly private network
Summary
Soft Machine is a Virtual Machine–based agentic development environment / Cloud OS. In versions 0.2.247 and prior, the workspace HTTP service that listens on 0.0.0.0:8080 inside each sm-ws-* Fly Machine exposes endpoints (/health, /file/<path>, /archive/<dir>) without any authentication or origin check. Any host that can reach TCP/8080 on a workspace can read arbitrary files under that workspace's /workspace root and download whole project trees as tar archives. Because every workspace shares the same Fly private 6PN and resolves all peer addresses via the unauthenticated _instances.internal TXT record, every other sm-ws-* machine on the same Fly app/org is a reachable, unauthenticated attacker — the trust boundary (workspace owner ↔ everyone-else) is missing. At time of publication, there are no publicly known patches.
Severity
8.3 (High)
SSVC
Exploitation: poc
Automatable: no
Technical Impact: total
CISA Coordinator · CISA-ADP (v2.0.3)
Decision recorded 2026-09-30 17:01 UTC
CWE
- CWE-306 - Missing Authentication for Critical Function
Assigner
References
1 reference
| URL | Tags |
|---|---|
| https://github.com/Soft-Machine-io/security/secur… | x_refsource_CONFIRM |
Impacted products
1 product
| Vendor | Product | Version | |
|---|---|---|---|
| Soft-Machine-io | security |
Affected:
<= 0.2.247
|
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-46711",
"options": [
{
"Exploitation": "poc"
},
{
"Automatable": "no"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-09-30T17:01:41.415498Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-09-30T17:02:21.234Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"references": [
{
"tags": [
"exploit"
],
"url": "https://github.com/Soft-Machine-io/security/security/advisories/GHSA-h6g6-qr45-qmrr"
}
],
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"product": "security",
"vendor": "Soft-Machine-io",
"versions": [
{
"status": "affected",
"version": "\u003c= 0.2.247"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "Soft Machine is a Virtual Machine\u2013based agentic development environment / Cloud OS. In versions 0.2.247 and prior, the workspace HTTP service that listens on 0.0.0.0:8080 inside each sm-ws-* Fly Machine exposes endpoints (/health, /file/\u003cpath\u003e, /archive/\u003cdir\u003e) without any authentication or origin check. Any host that can reach TCP/8080 on a workspace can read arbitrary files under that workspace\u0027s /workspace root and download whole project trees as tar archives. Because every workspace shares the same Fly private 6PN and resolves all peer addresses via the unauthenticated _instances.internal TXT record, every other sm-ws-* machine on the same Fly app/org is a reachable, unauthenticated attacker \u2014 the trust boundary (workspace owner \u2194 everyone-else) is missing. At time of publication, there are no publicly known patches."
}
],
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "ADJACENT_NETWORK",
"availabilityImpact": "LOW",
"baseScore": 8.3,
"baseSeverity": "HIGH",
"confidentialityImpact": "HIGH",
"integrityImpact": "HIGH",
"privilegesRequired": "HIGH",
"scope": "CHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:A/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:L",
"version": "3.1"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-306",
"description": "CWE-306: Missing Authentication for Critical Function",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-30T16:30:02.745Z",
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M"
},
"references": [
{
"name": "https://github.com/Soft-Machine-io/security/security/advisories/GHSA-h6g6-qr45-qmrr",
"tags": [
"x_refsource_CONFIRM"
],
"url": "https://github.com/Soft-Machine-io/security/security/advisories/GHSA-h6g6-qr45-qmrr"
}
],
"source": {
"advisory": "GHSA-h6g6-qr45-qmrr",
"discovery": "UNKNOWN"
},
"title": "Soft Machine: Unauthenticated workspace API exposes arbitrary file read \u0026 directory exfiltration to any peer on the Fly private network"
}
},
"cveMetadata": {
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"cveId": "CVE-2026-46711",
"datePublished": "2026-09-30T16:30:02.745Z",
"dateReserved": "2026-05-15T23:26:58.309Z",
"dateUpdated": "2026-09-30T17:02:21.234Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-55176 (GCVE-0-2026-55176)
Vulnerability from cvelistv5 – Published: 2026-09-30 16:30 – Updated: 2026-09-30 16:30
VLAI
EPSS
VEX
Title
Soft Machine: Cross-tenant workspace API auth bypass via shared `CONTAINER_SHARED_SECRET` bearer token
Summary
Soft Machine is a Virtual Machine–based agentic development environment / Cloud OS. In versions 0.2.247 and prior, two authentication helpers in /app/server.js — verifyContainerAuth() and authenticateWorkspaceHttp() — accept the global CONTAINER_SHARED_SECRET as a bearer token without verifying which workspace the caller belongs to. Because that secret is set identically on every container in the Fly app and is reachable from the user-facing process environment inside each workspace, any tenant can use it to authenticate to any other tenant's workspace API. The result is cross-workspace read, write, and destructive-restore primitives reachable from any paying customer's shell. The existing per-workspace token check (workspaceTokenMatches) protects the user-facing per-workspace token path, but the shared-secret bearer path bypasses it entirely. At time of publication, there are no publicly known patches.
Severity
9 (Critical)
CWE
- CWE-863 - Incorrect Authorization
Assigner
References
1 reference
| URL | Tags |
|---|---|
| https://github.com/Soft-Machine-io/security/secur… | x_refsource_CONFIRM |
Impacted products
1 product
| Vendor | Product | Version | |
|---|---|---|---|
| Soft-Machine-io | security |
Affected:
<= 0.2.247
|
{
"containers": {
"cna": {
"affected": [
{
"product": "security",
"vendor": "Soft-Machine-io",
"versions": [
{
"status": "affected",
"version": "\u003c= 0.2.247"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "Soft Machine is a Virtual Machine\u2013based agentic development environment / Cloud OS. In versions 0.2.247 and prior, two authentication helpers in /app/server.js \u2014 verifyContainerAuth() and authenticateWorkspaceHttp() \u2014 accept the global CONTAINER_SHARED_SECRET as a bearer token without verifying which workspace the caller belongs to. Because that secret is set identically on every container in the Fly app and is reachable from the user-facing process environment inside each workspace, any tenant can use it to authenticate to any other tenant\u0027s workspace API. The result is cross-workspace read, write, and destructive-restore primitives reachable from any paying customer\u0027s shell. The existing per-workspace token check (workspaceTokenMatches) protects the user-facing per-workspace token path, but the shared-secret bearer path bypasses it entirely. At time of publication, there are no publicly known patches."
}
],
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "ADJACENT_NETWORK",
"availabilityImpact": "HIGH",
"baseScore": 9,
"baseSeverity": "CRITICAL",
"confidentialityImpact": "HIGH",
"integrityImpact": "HIGH",
"privilegesRequired": "LOW",
"scope": "CHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:A/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H",
"version": "3.1"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-863",
"description": "CWE-863: Incorrect Authorization",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-30T16:30:42.729Z",
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M"
},
"references": [
{
"name": "https://github.com/Soft-Machine-io/security/security/advisories/GHSA-63gh-vp9f-vxhj",
"tags": [
"x_refsource_CONFIRM"
],
"url": "https://github.com/Soft-Machine-io/security/security/advisories/GHSA-63gh-vp9f-vxhj"
}
],
"source": {
"advisory": "GHSA-63gh-vp9f-vxhj",
"discovery": "UNKNOWN"
},
"title": "Soft Machine: Cross-tenant workspace API auth bypass via shared `CONTAINER_SHARED_SECRET` bearer token"
}
},
"cveMetadata": {
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"cveId": "CVE-2026-55176",
"datePublished": "2026-09-30T16:30:42.729Z",
"dateReserved": "2026-06-16T15:20:43.085Z",
"dateUpdated": "2026-09-30T16:30:42.729Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-46711 (GCVE-0-2026-46711)
Vulnerability from cvelistv5 – Published: 2026-09-30 16:30 – Updated: 2026-09-30 17:02
VLAI
EPSS
VEX
Title
Soft Machine: Unauthenticated workspace API exposes arbitrary file read & directory exfiltration to any peer on the Fly private network
Summary
Soft Machine is a Virtual Machine–based agentic development environment / Cloud OS. In versions 0.2.247 and prior, the workspace HTTP service that listens on 0.0.0.0:8080 inside each sm-ws-* Fly Machine exposes endpoints (/health, /file/<path>, /archive/<dir>) without any authentication or origin check. Any host that can reach TCP/8080 on a workspace can read arbitrary files under that workspace's /workspace root and download whole project trees as tar archives. Because every workspace shares the same Fly private 6PN and resolves all peer addresses via the unauthenticated _instances.internal TXT record, every other sm-ws-* machine on the same Fly app/org is a reachable, unauthenticated attacker — the trust boundary (workspace owner ↔ everyone-else) is missing. At time of publication, there are no publicly known patches.
Severity
8.3 (High)
SSVC
Exploitation: poc
Automatable: no
Technical Impact: total
CISA Coordinator · CISA-ADP (v2.0.3)
Decision recorded 2026-09-30 17:01 UTC
CWE
- CWE-306 - Missing Authentication for Critical Function
Assigner
References
1 reference
| URL | Tags |
|---|---|
| https://github.com/Soft-Machine-io/security/secur… | x_refsource_CONFIRM |
Impacted products
1 product
| Vendor | Product | Version | |
|---|---|---|---|
| Soft-Machine-io | security |
Affected:
<= 0.2.247
|
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-46711",
"options": [
{
"Exploitation": "poc"
},
{
"Automatable": "no"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-09-30T17:01:41.415498Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-09-30T17:02:21.234Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"references": [
{
"tags": [
"exploit"
],
"url": "https://github.com/Soft-Machine-io/security/security/advisories/GHSA-h6g6-qr45-qmrr"
}
],
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"product": "security",
"vendor": "Soft-Machine-io",
"versions": [
{
"status": "affected",
"version": "\u003c= 0.2.247"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "Soft Machine is a Virtual Machine\u2013based agentic development environment / Cloud OS. In versions 0.2.247 and prior, the workspace HTTP service that listens on 0.0.0.0:8080 inside each sm-ws-* Fly Machine exposes endpoints (/health, /file/\u003cpath\u003e, /archive/\u003cdir\u003e) without any authentication or origin check. Any host that can reach TCP/8080 on a workspace can read arbitrary files under that workspace\u0027s /workspace root and download whole project trees as tar archives. Because every workspace shares the same Fly private 6PN and resolves all peer addresses via the unauthenticated _instances.internal TXT record, every other sm-ws-* machine on the same Fly app/org is a reachable, unauthenticated attacker \u2014 the trust boundary (workspace owner \u2194 everyone-else) is missing. At time of publication, there are no publicly known patches."
}
],
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "ADJACENT_NETWORK",
"availabilityImpact": "LOW",
"baseScore": 8.3,
"baseSeverity": "HIGH",
"confidentialityImpact": "HIGH",
"integrityImpact": "HIGH",
"privilegesRequired": "HIGH",
"scope": "CHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:A/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:L",
"version": "3.1"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-306",
"description": "CWE-306: Missing Authentication for Critical Function",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-30T16:30:02.745Z",
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M"
},
"references": [
{
"name": "https://github.com/Soft-Machine-io/security/security/advisories/GHSA-h6g6-qr45-qmrr",
"tags": [
"x_refsource_CONFIRM"
],
"url": "https://github.com/Soft-Machine-io/security/security/advisories/GHSA-h6g6-qr45-qmrr"
}
],
"source": {
"advisory": "GHSA-h6g6-qr45-qmrr",
"discovery": "UNKNOWN"
},
"title": "Soft Machine: Unauthenticated workspace API exposes arbitrary file read \u0026 directory exfiltration to any peer on the Fly private network"
}
},
"cveMetadata": {
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"cveId": "CVE-2026-46711",
"datePublished": "2026-09-30T16:30:02.745Z",
"dateReserved": "2026-05-15T23:26:58.309Z",
"dateUpdated": "2026-09-30T17:02:21.234Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}