{"answers":{"affected":"2 open source packages ship an affected version, including org.apache.druid:druid-core. It affects 1 product.","exploited":"It is not confirmed as exploited in the wild, but public exploit code for CVE-2021-36749 exists.","fix":"Upgrade org.apache.druid:druid-core to 0.22.0 or later.","what":"CVE-2021-36749 is a medium-severity server-side request forgery vulnerability in Apache Druid, published on 24 Sep 2021. Any signed-in user can exploit it over the network, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2021-36749 and fix it if it is affected.\n\nWhat it is: CVE-2021-36749 is a medium-severity server-side request forgery vulnerability in Apache Druid, published on 24 Sep 2021. Any signed-in user can exploit it over the network, with no action from the victim.\nExploitation: It is not confirmed as exploited in the wild, but public exploit code for CVE-2021-36749 exists.\n\nAffected packages and fixed versions:\n- org.apache.druid:druid-core (Maven): affected all versions; fixed in 0.22.0\n- org.apache.druid:druid-core (Maven): affected all versions; fixed in 0.22.0\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2021-36749/ (Markdown: https://insights.sbomify.com/CVE-2021-36749/index.md)","id":"CVE-2021-36749","markdown":"https://insights.sbomify.com/CVE-2021-36749/index.md","name":"CVE-2021-36749","record":{"aliases":["GHSA-9p5g-vg43-mj5r"],"analysis":{"component_type":"server_software","fix_type":"patch","impacts":["data_read","security_bypass"],"network_reachable":"yes","non_default_config":false,"product_category":"Apache Druid","requires_auth":"low_privilege","summary":"Authenticated users can bypass application restrictions to read local files via HTTP input source, exposing sensitive data.","user_interaction":"not_required","vuln_class":"ssrf"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"apache","cpe":[{"product":"druid","vendor":"apache"}],"cvss":{"score":6.5,"severity":"medium","source":"nvd","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N","version":"3.1"},"cwes":[{"id":"CWE-863","name":"Incorrect Authorization"}],"description":"In the Druid ingestion system, the InputSource is used for reading data from a certain data source. However, the HTTP InputSource allows authenticated users to read data from other sources than intended, such as the local file system, with the privileges of the Druid server process. This is not an elevation of privilege when users access Druid directly, since Druid also provides the Local InputSource, which allows the same level of access. But it is problematic when users interact with Druid indirectly through an application that allows users to specify the HTTP InputSource, but not the Local InputSource. In this case, users could bypass the application-level restriction by passing a file URL to the HTTP InputSource. This issue was previously mentioned as being fixed in 0.21.0 as per CVE-2021-26920 but was not fixed in 0.21.0 or 0.21.1.","ecosystems":["Maven"],"exploits":{"exploitdb":0,"first_seen":"2021-05-22","github_poc":4,"max_poc_stars":178,"metasploit":0,"nuclei":1,"refs":[{"date":"2021-05-22T05:06:33Z","kind":"github_poc","ref":"https://github.com/sma11new/PocList","stars":178,"title":"漏洞POC、EXP合集，持续更新。Apache Druid-任意文件读取（CVE-2021-36749）、ConfluenceRCE（CVE-2021-26084）、ZeroShell防火墙RCE（CVE-2019-12725）、ApacheSolr任意文件读取、蓝凌OA任意文件读取、phpStudyRCE、ShowDoc任意文件上传、原创先锋后台未授权、Kyan账号密码泄露、TerraMasterTos任意文件读取、TamronOS-IPTV系统RCE、Wayos防火墙账号密码泄露"},{"date":"2021-10-14T03:47:02Z","kind":"github_poc","ref":"https://github.com/BrucessKING/CVE-2021-36749","stars":33,"title":"Apache Druid 任意文件读取"},{"date":"2021-11-21T03:23:00Z","kind":"github_poc","ref":"https://github.com/zwlsix/apache_druid_CVE-2021-36749","stars":1,"title":"CVE-2021-36749     Docker      漏洞复现"},{"date":"2021-12-12T15:50:02Z","kind":"github_poc","ref":"https://github.com/Jun-5heng/CVE-2021-36749","stars":0,"title":"Apache Druid LoadData 任意文件读取漏洞 / Code By:Jun_sheng"},{"date":null,"kind":"nuclei","ref":"http/cves/2021/CVE-2021-36749.yaml","stars":null,"title":"Apache Druid - Local File Inclusion"}],"tier":"weaponised"},"has_fix":true,"headline":"Druid ingestion system Authenticated users can read data from other sources than intended","id":"CVE-2021-36749","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"Maven","product":null,"products":[],"type":"ssrf","year":"2021"},"n_packages":2,"n_references":2,"next":{"headline":"Weak cryptography in n/a","id":"CVE-2021-36750"},"packages":[{"ecosystem":"Maven","fixed":["0.22.0"],"introduced":["0"],"last_affected":[],"package":"org.apache.druid:druid-core","purl":null,"source":"GHSA-9p5g-vg43-mj5r"},{"ecosystem":"Maven","fixed":["0.22.0"],"introduced":["0"],"last_affected":[],"package":"org.apache.druid:druid-core","purl":"pkg:maven/org.apache.druid/druid-core","source":"GHSA-9p5g-vg43-mj5r"}],"prev":{"headline":"SQL injection in n/a","id":"CVE-2021-36748"},"products":["Apache Druid"],"published":"2021-09-24","related":[{"cvss_score":9.8,"headline":"Apache Druid: Authentication Bypass via LDAP Anonymous Bind","id":"CVE-2026-23906","kev_date_added":null,"published":"2026-02-10"},{"cvss_score":9.8,"headline":"Apache Druid: Kerberos authenticaton chooses a cryptographically unsecure secret if not configured explicitly.","id":"CVE-2025-59390","kev_date_added":null,"published":"2025-11-26"},{"cvss_score":8.8,"headline":"Apache Druid Authenticated users can execute arbitrary code from malicious MySQL database systems.","id":"CVE-2021-26919","kev_date_added":null,"published":"2021-03-30"},{"cvss_score":8.8,"headline":"Authenticated users can override system configurations in their requests which allows them to execute arbitrary code.","id":"CVE-2021-25646","kev_date_added":null,"published":"2021-01-29"},{"cvss_score":6.5,"headline":"Apache Druid: Users can provide MySQL JDBC properties not on allow list","id":"CVE-2024-45537","kev_date_added":null,"published":"2024-09-17"},{"cvss_score":6.5,"headline":"Apache Druid: The HTTP inputSource allows authenticated users to read data from other sources than intended","id":"CVE-2021-26920","kev_date_added":null,"published":"2021-07-02"}],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"CC BY 4.0","name":"GitHub Advisory Database","prefix":"GHSA"},{"class":"attribution","licence":"US public information, NVD API terms","name":"NVD"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"},{"class":"attribution","licence":"MIT","name":"Nuclei templates"},{"class":"open","licence":"CC0","name":"PoC-in-GitHub"}],"ssvc":{"automatable":null,"exploitation":null,"technical_impact":null},"state":"PUBLISHED","updated":"2024-08-04","vendors":["Apache Software Foundation"]},"summary":"Authenticated users can bypass application restrictions to read local files via HTTP input source, exposing sensitive data.","url":"https://insights.sbomify.com/CVE-2021-36749/"}