Michael Ficarra's Avatar

Michael Ficarra

@michael.ficarra.me

Kind of a big deal.

250
Followers
46
Following
11
Posts
14.06.2023
Joined
Posts Following

Latest posts by Michael Ficarra @michael.ficarra.me

what a cool feature! πŸ™‚

05.03.2026 19:06 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
The end of the curl bug-bounty tldr: an attempt to reduce the _terror reporting_. **There is no longer a curl bug-bounty program.** It officially stops on January 31, 2026. After having had a few half-baked previous takes, in April 2019 we kicked off the first real curl bug-bounty with the help of Hackerone, and while it stumbled a bit at first it has been quite successful I think. We attracted skilled researchers who reported plenty of actual vulnerabilities for which we paid fine monetary rewards. We have certainly made curl better as a direct result of this: **87 confirmed vulnerabilities and over 100,000 USD** paid as rewards to researchers. I’m quite happy and proud of this accomplishment. I would like to especially highlight the awesome Internet Bug Bounty project, which has paid the bounties for us for many years. We could not have done this without them. Also of course Hackerone, who has graciously hosted us and been our partner through these years. Thanks! ## How we got here Looking back, I think we can say that the downfall of the bug-bounty program started slowly in the second half of 2024 but accelerated badly in 2025. We saw an explosion in AI slop reports combined with a lower quality even in the reports that were not obvious slop – presumably because they too were actually misled by AI but with that fact just hidden better. Maybe the first five years made it possible for researchers to find and report the low hanging fruit. Previous years we have had a rate of somewhere north of 15% of the submissions ending up confirmed vulnerabilities. Starting 2025, the confirmed-rate plummeted to below 5%. Not even one in twenty was _real_. The never-ending slop submissions take a serious mental toll to manage and sometimes also a long time to debunk. Time and energy that is completely wasted while also hampering our will to live. I have also started to get the feeling that a lot of the security reporters submit reports with a _bad faith attitude._ These β€œhelpers” try too hard to twist whatever they find into something horribly bad and a critical vulnerability, but they rarely actively contribute to actually _improve_ curl. They can go to extreme efforts to argue and insist on their specific current finding, but not to write a fix or work with the team on improving curl long-term etc. I don’t think we need more of that. There are these three bad trends combined that makes us take this step: the mind-numbing AI slop, humans doing worse than ever and the apparent will to poke holes rather than to help. ## Actions In an attempt to do something about the sorry state of curl security reports, this is what we do: * We no longer offer any monetary rewards for security reports – no matter which severity. In an attempt to remove the incentives for submitting made up lies. * We stop using Hackerone as the recommended channel to report security problems. To make the change immediately obvious and because without a bug-bounty program we don’t need it. * We refer everyone to submit suspected curl security problems on GitHub using their _Private vulnerability reporting_ feature. * We continue to immediately _ban and publicly_ _ridicule_ everyone who submits AI slop to the project. ## Maintain curl security We believe that we can maintain and continue to evolve curl security in spite of this change. Maybe even improve thanks to this, as hopefully this step helps prevent more people pouring sand into the machine. Ideally we reduce the amount of wasted time and effort. I believe the best and our most valued security reporters still will tell us when they find security vulnerabilities. ## Instead If you suspect a security problem in curl going forward, we advise you to head over to GitHub and submit them there. Alternatively, you send an email with the full report to `security @ curl.se`. In both cases, the report is received and handled privately by the curl security team. But with _no monetary reward offered_. ## Leaving Hackerone Hackerone was good to us and they have graciously allowed us to run our program on their platform for free for many years. We thank them for that service. As we now drop the rewards, we feel it makes a clear cut and displays a clearer message to everyone involved by also moving away from Hackerone as a platform for vulnerability reporting. It makes the change more visible. ## Future disclosures It is probably going to be harder for us to publicly disclose every incoming security report in the same way we have done it on Hackerone for the last year. We need to work out something to make sure that we can keep doing it at least imperfectly, because I believe in the goodness of such transparency. ## We stay on GitHub Let me emphasize that this change does not impact our presence and mode of operation with the curl repository and its hosting on GitHub. We hear about projects having problems with low-quality AI slop submissions on GitHub as well, in the form of issues and pull-requests, but for curl we have not (yet) seen this – and frankly I don’t think switching to a GitHub alternative saves us from that. ## Other projects do better Compared to others, we seem to be affected by the sloppy security reports to a higher degree than the average Open Source project. With the help of Hackerone, we got numbers of how the curl bug-bounty has compared with other programs over the last year. It turns out curl’s program has seen more volume and noise than other public open source bug bounty programs in the same cohort. Over the past four quarters, curl’s inbound report volume has risen sharply, while other bounty-paying open source programs in the cohort, such as Ruby, Node, and Rails, have not seen a meaningful increase and have remained mostly flat or declined slightly. In the chart, the pink line represents curl’s report volume, and the gray line reflects the broader cohort. Inbound Report Volume on Hackerone: curl compared to OSS peers We suspect the idea of getting money for it is a big part of the explanation. It brings in real reports, but makes it too easy to be annoying with little to no penalty to the user. The reputation system and available program settings were not sufficient for us to prevent sand from getting into the machine. The exact reason why we suffer more of this abuse than others remains a subject for further speculation and research. ## If the volume keeps up There is a non-zero risk that our guesses are wrong and that the volume and security report frequency will keep up even after these changes go into effect. If that happens, we will deal with it then and take further appropriate steps. I prefer not to overdo things or _overplan_ already now for something that ideally does not happen. ## We won’t charge People keep suggesting that one way to deal with the report tsunami is to _charge_ security researchers a small amount of money for the privilege of submitting a vulnerability report to us. A _curl reporters security club_ with an entrance fee. I think that is a less good solution than just dropping the bounty. Some of the reasons include: * Charging people money in an International context is complicated and a maintenance burden. * Dealing with charge-backs, returns and other complaints and friction add work. * It would limit who could or would submit issues. Even some who actually find legitimate issues. Maybe we need to do this later anyway, but we stay away from it for now. ## Pull requests are less of a problem We have seen other projects and repositories see similar AI-induced problems for pull requests, but this has not been a problem for the curl project. I believe for PRs we have better much means to sort out the weed with automatic means, since we have tools, tests and scanners to verify such contributions. We don’t need to waste any human time on pull requests until the quality is good enough to get green check-marks from 200 CI jobs. ## Related I will do a talk at FOSDEM 2026 titled Open Source Security in spite of AI that of course will touch on this subject. ## Future We never say never. This is now and we might have reasons to reconsider and make a different decision in the future. If we do, we will let you know. These changes are applied now with the hope that they will have a positive effect for the project and its maintainers. If that turns out to not be the outcome, we will of course continue and apply further changes later. ## Media Since I created the pull request for updating the bug-bounty information for curl on January 14, almost two weeks before we merged it, various media picked up the news and published articles. Long before I posted this blog post. * The Register: Curl shutters bug bounty program to remove incentive for submitting AI slop * Elektroniktidningen: cURL removes bug bounties * Heise online: curl: Projekt beendet Bug-Bounty-Programm * Neowin: Beloved tool, cURL is shutting down its bug bounty over AI slop reports * Golem: Curl-Entwickler dreht dem β€œKI-Schrott” den Geldhahn zu * Linux Easy: cURL chiude il programma bug bounty: troppi report generati dall’AI * Bleeping Computer: Curl ending bug bounty program after flood of AI slop reports * The New Stack: Drowning in AI slop, cURL ends bug bounties * Ars Technica: Overrun with AI slop, cURL scraps bug bounties to ensure β€œintact mental health” * PressMind Labs: cURL ko?czy program bug bounty – czy to koniec jako?ci zg?osze?? * Socket: curl Shuts Down Bug Bounty Program After Flood of AI Slop Reports Also discussed (indirectly) on Hacker News.

The end of the #curl bug-bounty

https://daniel.haxx.se/blog/2026/01/26/the-end-of-the-curl-bug-bounty/

26.01.2026 07:25 πŸ‘ 65 πŸ” 80 πŸ’¬ 5 πŸ“Œ 4
Preview
Commission wants to commercialise open source for sovereignty | Euractiv An incoming strategy looks set to target support at European open source projects to scale into commercial alternatives to US tech

The @ec.europa.eu will soon present β€œa combination of funding and policy measures” to support European open source projects in becoming commercially viable alternatives to proprietary US tech.

Read my article at @euractiv.com:

www.euractiv.com/news/commiss...

07.01.2026 12:41 πŸ‘ 83 πŸ” 39 πŸ’¬ 2 πŸ“Œ 7
How to compile JavaScript to C with Static Hermes Lately, I've been working on porting more of Parcel to Rust, and investigating ways to embed JS-based plugins. This post describes how I used Static Hermes to compile Less.js to a native C library tha...

Facebook's Static Hermes is kind of incredible. It can compile JavaScript into C, which is then optimized into native machine code.

I just compiled the Less.js source code into a C library. Then I called it from Rust as a native Parcel plugin (no Node). Wild. πŸ‘¨β€πŸ”¬

devongovett.me/blog/static-...

29.12.2025 22:30 πŸ‘ 167 πŸ” 23 πŸ’¬ 7 πŸ“Œ 2

Yeah sometimes I get the feeling that I'm the only one using some less-used web features because surely someone else would've run into these bugs before me.

08.12.2025 16:08 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Standards Queues The hardest part of web standards isn’t even the technology β€” it’s the queues. And that’s the real problem I keep coming back to.

Hot off the blog press: Standards Queues

Definitely the hardest part right now, imho.

bkardell.com/blog/Queues....

04.12.2025 20:12 πŸ‘ 11 πŸ” 7 πŸ’¬ 2 πŸ“Œ 1
Preview
GitHub - WebAssembly/jit-interface: WebAssembly specification, reference interpreter, and test suite for the jit-interfaces proposal. WebAssembly specification, reference interpreter, and test suite for the jit-interfaces proposal. - WebAssembly/jit-interface

Today I presented to the Wasm CG a proposal for fine-grained dynamic code generation as a core WebAssembly feature. The proposal is now at phase 1!

github.com/WebAssembly/...

Also immortalized in song: suno.com/song/19e0679...

29.10.2025 21:49 πŸ‘ 32 πŸ” 11 πŸ’¬ 3 πŸ“Œ 1

Mississippi Rock, welcome to @thewaroncars.bsky.social

14.08.2025 13:11 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

One thing I cannot emphasize enough in these benighted times is that NO ONE who is not a US Citizen should be crossing the US Border in either direction unless they have no other choice.

It's immensely unsafe.

31.07.2025 11:58 πŸ‘ 972 πŸ” 276 πŸ’¬ 26 πŸ“Œ 11
GitHub - tc39/proposal-concurrency-control: interfaces and data structures for concurrency control and integration into async iterator helpers interfaces and data structures for concurrency control and integration into async iterator helpers - tc39/proposal-concurrency-control

in the future, this may just be `new CountingGovernor(1)` github.com/tc39/proposa...

30.07.2025 13:28 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
feat(es/ast): Support import phase (#8279) Β· swc-project/swc@72048ae **Description:** - https://github.com/tc39/proposal-source-phase-imports

I think the declaration form you've shown here has been available since January 2024. See github.com/swc-project/.... The thing that just shipped is the dynamic form: import.defer(...).

17.07.2025 11:04 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
a man in a suit and tie is saying he a little confused but he got the spirit . Alt: a man in a suit and tie is saying he a little confused but he got the spirit
09.03.2025 10:42 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

the last one is when I finally get all my Rust type errors worked out and the borrow checker kicks in with a million new errors

13.02.2025 15:21 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Lean Game Server You need to enable JavaScript to use the Lean Game Server, as it is built using React.

went through the entire Natural Number Game today! (well, except for the Fermat level πŸ˜›)

it’s very well-made, definitely one of the best learning/onboarding experiences i remember

adam.math.hhu.de#/g/leanprove...

01.02.2025 19:31 πŸ‘ 168 πŸ” 15 πŸ’¬ 7 πŸ“Œ 1

a.co/d/hyZOVg1

25.01.2025 16:23 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
a hinge popper

a hinge popper

just stick one of these in the drawer and you'll never be stuck

25.01.2025 16:20 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

you're still on covid? I'm already on bird flu my dude

21.12.2024 22:38 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Preview
a man wearing a nike shirt is talking to another man in a blue hat ALT: a man wearing a nike shirt is talking to another man in a blue hat
14.12.2024 15:25 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0