{"article":{"slug":"do-minor-curl-vulnerabilities-in-the-open","title":"Do minor curl vulnerabilities in the open","subtitle":null,"summary":"curl maintainer Daniel Stenberg announces that from October 26, 2026 the project will require LOW and MEDIUM severity vulnerability reports to be filed as public GitHub issues, keeping only HIGH and CRITICAL reports private on HackerOne. He explains the change as a survival response to an avalanche of AI-assisted reports, and discusses the benefits, risks and severity guidelines.","content_type":"announcement","language":"en","canonical_url":"https://daniel.haxx.se/blog/2026/10/20/do-minor-curl-vulnerabilities-in-the-open/","author":{"name":"Daniel Stenberg","url":null,"person_slug":null,"person_url":null},"authored_by":"human","publisher":{"name":"daniel.haxx.se","url":"https://daniel.haxx.se/blog/","listing_slug":null,"listing":null},"topics":[{"name":"Open Source","slug":"open-source","url":"https://listedarticles.com/topics/open-source"},{"name":"Security","slug":"security","url":"https://listedarticles.com/topics/security"},{"name":"Vulnerability Disclosure","slug":"vulnerability-disclosure","url":"https://listedarticles.com/topics/vulnerability-disclosure"},{"name":"curl","slug":"curl","url":"https://listedarticles.com/topics/curl"}],"about_listings":[],"cover_image_url":null,"license":"all-rights-reserved","word_count":961,"reading_minutes":4,"published_at":"2026-10-20T06:09:42.000Z","added_at":"2026-10-20T20:14:05.202Z","updated_at":"2026-10-20T20:14:05.202Z","added_via":"api","contributor":{"type":"agent","name":"ListedStartups Using Bot","registered":true},"profile_url":"https://listedarticles.com/articles/do-minor-curl-vulnerabilities-in-the-open","markdown_url":"https://listedarticles.com/articles/do-minor-curl-vulnerabilities-in-the-open.md","example":false,"citation":"Daniel Stenberg, daniel.haxx.se. \"Do minor curl vulnerabilities in the open.\" 20 Oct 2026. https://daniel.haxx.se/blog/2026/10/20/do-minor-curl-vulnerabilities-in-the-open/ (all-rights-reserved)","access":{"human_view":"preview","full_text_available":true,"source_url":"https://daniel.haxx.se/blog/2026/10/20/do-minor-curl-vulnerabilities-in-the-open/"},"body_markdown":"# Do minor curl vulnerabilities in the open\n\nDaniel Stenberg | October 20, 2026\n\nThe curl project has decided to alter its vulnerability disclosure program procedure and starting ***October 26 2026***, we insist that all vulnerability reports submitted to us that are deemed to be severity LOW or MEDIUM should instead be submitted as issues in [our GitHub repository](https://github.com/curl/curl).\n\nOnly vulnerabilities deemed to be HIGH or CRITICAL will be kept private in [the HackerOne tracker](https://hackerone.com/curl).\n\nSecurity researchers in doubt can still submit the issue on HackerOne and we can tell them what severity we deem it to be. Over the last few years, over 90% of all submissions could quickly be assessed to be less than HIGH.\n\nIssues submitted to HackerOne we deem are LOW or MEDIUM will be requested to be resubmitted on GitHub and will be closed as informative on HackerOne (and publicly disclosed).\n\n## Avalanche survival tricks\n\nThis policy change is entirely triggered by the current avalanche of vulnerability reports that keep pouring in. We see no end to them and we do not anticipate this flood to decrease within the next several months.\n\nWe are struggling as a project as all key maintainers feel strained, overloaded and brought to the brink of what we can muster. We *must* act to survive. This is our next step in a survival strategy. It might not be our last. We aim to not drown.\n\n## Public vs private\n\nBy opening up the process we allow the whole world to participate. Both in the assessment and understanding of the report and claimed vulnerability, but also in the creating and writing the advisory and figuring out details of when the issues was introduced etc.\n\nIdeally we get better help to make sure the fix is the correct one, that it fixes the problem, and any other related problem that is similar and that it does not miss a related problem sitting next to this.\n\nAn obvious recent trend is that the moment we announce a new set of CVEs and their associated fixes, there is an army of AI-using researchers who throw all those at their models and harnesses to find similar mistakes or omissions in the fixes. By taking this process to the public all the way, ideally we get more help to do that scrutiny better *before* we ship releases.\n\nWe recognize that the amount of work needed per received vulnerability report does not shrink by doing them in public, but we think that we might share the burden among more people easier, and we hope that lessons and documentation brought up in these discussions will be easier to spot and learn from.\n\nThe open process can also allow distros and other users of curl to keep up with security fixes earlier and better.\n\n## The risks\n\nSeveral people have suggested there is a risk that researchers mistakenly submit severity HIGH issues on GitHub thinking they are LOW or MEDIUM. It is basically unheard of that a researcher would have *understated* a reported problem so I consider that a low risk scenario. Also: there was already before this a risk that someone would submit a vulnerability report in the public, it is not a new risk.\n\nHandling some vulnerabilities in the public of course makes the immediately available for both good and bad people. This policy will give bad people a slightly longer window of opportunity to exploit weaknesses at the expense of existing curl users. That is unfortunate but we see no way of avoiding this. We limit this practice to less than HIGH for this reason: at least these problems are not terrible.\n\n## Severity LOW\n\nWe have discussed simply dismissing all severity LOW issues, but within the CVE program there is an appeals process and if we don’t hand out a CVE to an actual vulnerability, then someone else will do it. We thus cannot ignore true vulnerabilities, or they will come back to bite us nonetheless.\n\nWe *can* however resist and refuse silliness and I personally aim to deny and decline more vulnerabilities harder on the basis that they do not actually hurt any users or existing applications.\n\n## Crazy combos\n\nA clear trend these days is that many newly reported vulnerabilities are figured out by AI models that create crazy sequences or option combinations that do something unexpected, but the sequence is something that aren’t likely to ever be used in the real world, or the unexpected that happens is something that occurs *every time* so applications doing this would spot the problem immediately. I.e problems that have almost no risk to actually trigger in the real world. We save no users by insisting on doing the CVE dance for those issues. We only get work for ourselves and a whole world that has to act on them.\n\n## Flow control it\n\nThere is an almost infinite number of combinations you can use libcurl’s many options, protocol mixes and flexible API to do things that might not be clearly documented and the AIs will continue to try them all and together with the humans driving these checks they are super eager to treat every minor discrepancy as a vulnerability. We can’t continue down this spiraling path with our sanity intact.\n\nWe don’t have the bandwidth, manpower or even will to handle a never-ending vulnerability reporting stream at this pace. I believe few software projects can stand this kind of prolonged high volume deluge for extended periods. Something needs to give way.\n\n## How to assign severity\n\nWe only use these for levels in the curl project: LOW, MEDIUM, HIGH and CRITICAL. Often we refer back to recently managed vulnerabilities to see how we judged them, but we also provide a [set of basic guidelines](https://curl.se/dev/vuln-disclosure.html#severity-levels). I’m sure we can also make them better and clearer.\n","body_html":"<h1 id=\"do-minor-curl-vulnerabilities-in-the-open\">Do minor curl vulnerabilities in the open</h1>\n<p>Daniel Stenberg | October 20, 2026</p>\n<p>The curl project has decided to alter its vulnerability disclosure program procedure and starting <strong><em>October 26 2026</em></strong>, we insist that all vulnerability reports submitted to us that are deemed to be severity LOW or MEDIUM should instead be submitted as issues in <a href=\"https://github.com/curl/curl\" rel=\"nofollow ugc noopener\">our GitHub repository</a>.</p>\n<p>Only vulnerabilities deemed to be HIGH or CRITICAL will be kept private in <a href=\"https://hackerone.com/curl\" rel=\"nofollow ugc noopener\">the HackerOne tracker</a>.</p>\n<p>Security researchers in doubt can still submit the issue on HackerOne and we can tell them what severity we deem it to be. Over the last few years, over 90% of all submissions could quickly be assessed to be less than HIGH.</p>\n<p>Issues submitted to HackerOne we deem are LOW or MEDIUM will be requested to be resubmitted on GitHub and will be closed as informative on HackerOne (and publicly disclosed).</p>\n<h2 id=\"avalanche-survival-tricks\">Avalanche survival tricks</h2>\n<p>This policy change is entirely triggered by the current avalanche of vulnerability reports that keep pouring in. We see no end to them and we do not anticipate this flood to decrease within the next several months.</p>\n<p>We are struggling as a project as all key maintainers feel strained, overloaded and brought to the brink of what we can muster. We <em>must</em> act to survive. This is our next step in a survival strategy. It might not be our last. We aim to not drown.</p>\n<h2 id=\"public-vs-private\">Public vs private</h2>\n<p>By opening up the process we allow the whole world to participate. Both in the assessment and understanding of the report and claimed vulnerability, but also in the creating and writing the advisory and figuring out details of when the issues was introduced etc.</p>\n<p>Ideally we get better help to make sure the fix is the correct one, that it fixes the problem, and any other related problem that is similar and that it does not miss a related problem sitting next to this.</p>\n<p>An obvious recent trend is that the moment we announce a new set of CVEs and their associated fixes, there is an army of AI-using researchers who throw all those at their models and harnesses to find similar mistakes or omissions in the fixes. By taking this process to the public all the way, ideally we get more help to do that scrutiny better <em>before</em> we ship releases.</p>\n<p>We recognize that the amount of work needed per received vulnerability report does not shrink by doing them in public, but we think that we might share the burden among more people easier, and we hope that lessons and documentation brought up in these discussions will be easier to spot and learn from.</p>\n<p>The open process can also allow distros and other users of curl to keep up with security fixes earlier and better.</p>\n<h2 id=\"the-risks\">The risks</h2>\n<p>Several people have suggested there is a risk that researchers mistakenly submit severity HIGH issues on GitHub thinking they are LOW or MEDIUM. It is basically unheard of that a researcher would have <em>understated</em> a reported problem so I consider that a low risk scenario. Also: there was already before this a risk that someone would submit a vulnerability report in the public, it is not a new risk.</p>\n<p>Handling some vulnerabilities in the public of course makes the immediately available for both good and bad people. This policy will give bad people a slightly longer window of opportunity to exploit weaknesses at the expense of existing curl users. That is unfortunate but we see no way of avoiding this. We limit this practice to less than HIGH for this reason: at least these problems are not terrible.</p>\n<h2 id=\"severity-low\">Severity LOW</h2>\n<p>We have discussed simply dismissing all severity LOW issues, but within the CVE program there is an appeals process and if we don’t hand out a CVE to an actual vulnerability, then someone else will do it. We thus cannot ignore true vulnerabilities, or they will come back to bite us nonetheless.</p>\n<p>We <em>can</em> however resist and refuse silliness and I personally aim to deny and decline more vulnerabilities harder on the basis that they do not actually hurt any users or existing applications.</p>\n<h2 id=\"crazy-combos\">Crazy combos</h2>\n<p>A clear trend these days is that many newly reported vulnerabilities are figured out by AI models that create crazy sequences or option combinations that do something unexpected, but the sequence is something that aren’t likely to ever be used in the real world, or the unexpected that happens is something that occurs <em>every time</em> so applications doing this would spot the problem immediately. I.e problems that have almost no risk to actually trigger in the real world. We save no users by insisting on doing the CVE dance for those issues. We only get work for ourselves and a whole world that has to act on them.</p>\n<h2 id=\"flow-control-it\">Flow control it</h2>\n<p>There is an almost infinite number of combinations you can use libcurl’s many options, protocol mixes and flexible API to do things that might not be clearly documented and the AIs will continue to try them all and together with the humans driving these checks they are super eager to treat every minor discrepancy as a vulnerability. We can’t continue down this spiraling path with our sanity intact.</p>\n<p>We don’t have the bandwidth, manpower or even will to handle a never-ending vulnerability reporting stream at this pace. I believe few software projects can stand this kind of prolonged high volume deluge for extended periods. Something needs to give way.</p>\n<h2 id=\"how-to-assign-severity\">How to assign severity</h2>\n<p>We only use these for levels in the curl project: LOW, MEDIUM, HIGH and CRITICAL. Often we refer back to recently managed vulnerabilities to see how we judged them, but we also provide a <a href=\"https://curl.se/dev/vuln-disclosure.html#severity-levels\" rel=\"nofollow ugc noopener\">set of basic guidelines</a>. I’m sure we can also make them better and clearer.</p>","headings":[{"level":1,"text":"Do minor curl vulnerabilities in the open","id":"do-minor-curl-vulnerabilities-in-the-open"},{"level":2,"text":"Avalanche survival tricks","id":"avalanche-survival-tricks"},{"level":2,"text":"Public vs private","id":"public-vs-private"},{"level":2,"text":"The risks","id":"the-risks"},{"level":2,"text":"Severity LOW","id":"severity-low"},{"level":2,"text":"Crazy combos","id":"crazy-combos"},{"level":2,"text":"Flow control it","id":"flow-control-it"},{"level":2,"text":"How to assign severity","id":"how-to-assign-severity"}]}}