1*6236dae4SAndroid Build Coastguard Worker<!-- 2*6236dae4SAndroid Build Coastguard WorkerCopyright (C) Daniel Stenberg, <[email protected]>, et al. 3*6236dae4SAndroid Build Coastguard Worker 4*6236dae4SAndroid Build Coastguard WorkerSPDX-License-Identifier: curl 5*6236dae4SAndroid Build Coastguard Worker--> 6*6236dae4SAndroid Build Coastguard Worker 7*6236dae4SAndroid Build Coastguard Worker# The curl bug bounty 8*6236dae4SAndroid Build Coastguard Worker 9*6236dae4SAndroid Build Coastguard WorkerThe curl project runs a bug bounty program in association with 10*6236dae4SAndroid Build Coastguard Worker[HackerOne](https://www.hackerone.com) and the [Internet Bug 11*6236dae4SAndroid Build Coastguard WorkerBounty](https://internetbugbounty.org). 12*6236dae4SAndroid Build Coastguard Worker 13*6236dae4SAndroid Build Coastguard Worker## How does it work? 14*6236dae4SAndroid Build Coastguard Worker 15*6236dae4SAndroid Build Coastguard WorkerStart out by posting your suspected security vulnerability directly to [curl's 16*6236dae4SAndroid Build Coastguard WorkerHackerOne program](https://hackerone.com/curl). 17*6236dae4SAndroid Build Coastguard Worker 18*6236dae4SAndroid Build Coastguard WorkerAfter you have reported a security issue, it has been deemed credible, and a 19*6236dae4SAndroid Build Coastguard Workerpatch and advisory has been made public, you may be eligible for a bounty from 20*6236dae4SAndroid Build Coastguard Workerthis program. See the [Security Process](https://curl.se/dev/secprocess.html) 21*6236dae4SAndroid Build Coastguard Workerdocument for how we work with security issues. 22*6236dae4SAndroid Build Coastguard Worker 23*6236dae4SAndroid Build Coastguard Worker## What are the reward amounts? 24*6236dae4SAndroid Build Coastguard Worker 25*6236dae4SAndroid Build Coastguard WorkerThe curl project offers monetary compensation for reported and published 26*6236dae4SAndroid Build Coastguard Workersecurity vulnerabilities. The amount of money that is rewarded depends on how 27*6236dae4SAndroid Build Coastguard Workerserious the flaw is determined to be. 28*6236dae4SAndroid Build Coastguard Worker 29*6236dae4SAndroid Build Coastguard WorkerSince 2021, the Bug Bounty is managed in association with the Internet Bug 30*6236dae4SAndroid Build Coastguard WorkerBounty and they set the reward amounts. If it would turn out that they set 31*6236dae4SAndroid Build Coastguard Workeramounts that are way lower than we can accept, the curl project intends to 32*6236dae4SAndroid Build Coastguard Worker"top up" rewards. 33*6236dae4SAndroid Build Coastguard Worker 34*6236dae4SAndroid Build Coastguard WorkerIn 2022, typical "Medium" rated vulnerabilities have been rewarded 2,400 USD 35*6236dae4SAndroid Build Coastguard Workereach. 36*6236dae4SAndroid Build Coastguard Worker 37*6236dae4SAndroid Build Coastguard Worker## Who is eligible for a reward? 38*6236dae4SAndroid Build Coastguard Worker 39*6236dae4SAndroid Build Coastguard WorkerEveryone and anyone who reports a security problem in a released curl version 40*6236dae4SAndroid Build Coastguard Workerthat has not already been reported can ask for a bounty. 41*6236dae4SAndroid Build Coastguard Worker 42*6236dae4SAndroid Build Coastguard WorkerDedicated - paid for - security audits that are performed in collaboration 43*6236dae4SAndroid Build Coastguard Workerwith curl developers are not eligible for bounties. 44*6236dae4SAndroid Build Coastguard Worker 45*6236dae4SAndroid Build Coastguard WorkerVulnerabilities in features that are off by default and documented as 46*6236dae4SAndroid Build Coastguard Workerexperimental are not eligible for a reward. 47*6236dae4SAndroid Build Coastguard Worker 48*6236dae4SAndroid Build Coastguard WorkerThe vulnerability has to be fixed and publicly announced (by the curl project) 49*6236dae4SAndroid Build Coastguard Workerbefore a bug bounty is considered. 50*6236dae4SAndroid Build Coastguard Worker 51*6236dae4SAndroid Build Coastguard WorkerOnce the vulnerability has been published by curl, the researcher can request 52*6236dae4SAndroid Build Coastguard Workertheir bounty from the [Internet Bug Bounty](https://hackerone.com/ibb). 53*6236dae4SAndroid Build Coastguard Worker 54*6236dae4SAndroid Build Coastguard WorkerBounties need to be requested within twelve months from the publication of the 55*6236dae4SAndroid Build Coastguard Workervulnerability. 56*6236dae4SAndroid Build Coastguard Worker 57*6236dae4SAndroid Build Coastguard WorkerThe curl security team reserves themselves the right to deny or allow bug 58*6236dae4SAndroid Build Coastguard Workerbounty payouts on its own discretion. There is no appeals process. 59*6236dae4SAndroid Build Coastguard Worker 60*6236dae4SAndroid Build Coastguard Worker## Product vulnerabilities only 61*6236dae4SAndroid Build Coastguard Worker 62*6236dae4SAndroid Build Coastguard WorkerThis bug bounty only concerns the curl and libcurl products and thus their 63*6236dae4SAndroid Build Coastguard Workerrespective source codes - when running on existing hardware. It does not 64*6236dae4SAndroid Build Coastguard Workerinclude curl documentation, curl websites, or other curl related 65*6236dae4SAndroid Build Coastguard Workerinfrastructure. 66*6236dae4SAndroid Build Coastguard Worker 67*6236dae4SAndroid Build Coastguard WorkerThe curl security team is the sole arbiter if a reported flaw is subject to a 68*6236dae4SAndroid Build Coastguard Workerbounty or not. 69*6236dae4SAndroid Build Coastguard Worker 70*6236dae4SAndroid Build Coastguard Worker## Third parties 71*6236dae4SAndroid Build Coastguard Worker 72*6236dae4SAndroid Build Coastguard WorkerThe curl bug bounty does not cover flaws in third party dependencies 73*6236dae4SAndroid Build Coastguard Worker(libraries) used by curl or libcurl. If the bug triggers because of curl 74*6236dae4SAndroid Build Coastguard Workerbehaving wrongly or abusing a third party dependency, the problem is rather in 75*6236dae4SAndroid Build Coastguard Workercurl and not in the dependency and then the bounty might cover the problem. 76*6236dae4SAndroid Build Coastguard Worker 77*6236dae4SAndroid Build Coastguard Worker## How are vulnerabilities graded? 78*6236dae4SAndroid Build Coastguard Worker 79*6236dae4SAndroid Build Coastguard WorkerThe grading of each reported vulnerability that makes a reward claim is 80*6236dae4SAndroid Build Coastguard Workerperformed by the curl security team. The grading is based on the CVSS (Common 81*6236dae4SAndroid Build Coastguard WorkerVulnerability Scoring System) 3.0. 82*6236dae4SAndroid Build Coastguard Worker 83*6236dae4SAndroid Build Coastguard Worker## How are reward amounts determined? 84*6236dae4SAndroid Build Coastguard Worker 85*6236dae4SAndroid Build Coastguard WorkerThe curl security team gives the vulnerability a score or severity level, as 86*6236dae4SAndroid Build Coastguard Workermentioned above. The actual monetary reward amount is decided and paid by the 87*6236dae4SAndroid Build Coastguard WorkerInternet Bug Bounty.. 88*6236dae4SAndroid Build Coastguard Worker 89*6236dae4SAndroid Build Coastguard Worker## Regarding taxes, etc. on the bounties 90*6236dae4SAndroid Build Coastguard Worker 91*6236dae4SAndroid Build Coastguard WorkerIn the event that the individual receiving a bug bounty needs to pay taxes on 92*6236dae4SAndroid Build Coastguard Workerthe reward money, the responsibility lies with the receiver. The curl project 93*6236dae4SAndroid Build Coastguard Workeror its security team never actually receive any of this money, hold the money, 94*6236dae4SAndroid Build Coastguard Workeror pay out the money. 95