Bountytalk - Forums Advertising & Bounty Hub
Other Bounties => Bug bounty programs => Topic started by: Angelina on April 18, 2023, 06:24:27 pm
-
Submit bug report: https://chain.link/
@chainlink
SmartContract looks forward to working with the security community to find vulnerabilities in order to keep our businesses and customers safe.
Response Targets
SmartContract will make a best effort to meet the following SLAs for participating in our program:
Type of Response SLA in business days
First Response 3 day
Time to Triage 5 days
Time to Bounty 30 days
Time to Resolution depends on severity and complexity
We’ll try to keep you informed about our progress throughout the process.
Information & Resources
The Chainlink node is a part of a decentralized oracle network used to feed data to smart contracts. Job Specifications are added to the node through a REST API so that it knows what tasks to perform. The Chainlink node utilizes a websocket connection (for pubsub) to an Ethereum client (Geth or Parity) in order to watch for new blocks containing specific event logs. Once the external data is retrieved, the Chainlink node will sign the transaction, and broadcast it through the Ethereum client (the wallet is stored on the Chainlink node, not the Ethereum client). An overview of the architecture is available here.
Scope
Core Node: github.com/smartcontractkit/chainlink/core
The Chainlink node and its smart contracts are the core focus of this program. Issues related to a loss of funds for the node operator or requester will take the highest bounty reward. There are a few areas of this code base that are out of scope, see the Scope section at the bottom of this page for details.
We also have a project tracker where existing bugs are kept. Be sure to check there for issues that we already know about.
Solidity Smart Contracts: github.com/smartcontractkit/chainlink/tree/master/contracts
The smart contracts residing on the Github repository are in scope and will be awarded with bonuses if a vulnerability is found through creating Chainlink requests.
Also the contracts for Staking are in scope.
LINK Testnet Faucets: ropsten.chain.link, rinkeby.chain.link, & kovan.chain.link
The faucets provide users with the ability to receive test LINK on test networks. Since they are test networks, we are more concerned with vulnerabilities that would cause a loss of service.
Explorers: explorer.chain.link, rinkeby.explorer.chain.link, kovan.explorer.chain.link
Chainlink Explorer allows requesters to view information about their request without requiring access to the Chainlink node themselves.
Feeds UI: feeds.chain.link (github.com/smartcontractkit/chainlink/feeds)
The application and source code driving the Decentralized Price Reference Data page.
Installation & Setup
We have guides available for how to get a Chainlink node running locally. See the links below for step-by-step walk-throughs. Feel free to reach out on our Discord for help.
The Complete Setup Guide for a Chainlink Development Environment
Running a Chainlink Node
Fulfilling Requests
Testnet Chainlink Nodes
Use our Decentralized Oracles on Testnet documentation page for existing Chainlink nodes running on the Ethereum test networks. Vulnerabilities found with the official Chainlink nodes (noted by being ran by Chainlink) on this page are considered in scope.
Disclosure Policy
Please do not discuss this program or any vulnerabilities (even resolved ones) outside of the program without express consent from the organization.
Program Rules
Please provide detailed reports with reproducible steps. If the report is not detailed enough to reproduce the issue, the issue will not be eligible for a reward.
Submit one vulnerability per report, unless you need to chain vulnerabilities to provide impact.
When duplicates occur, we only award the first report that was received (provided that it can be fully reproduced).
Multiple vulnerabilities caused by one underlying issue will be awarded one bounty.
Social engineering (e.g. phishing, vishing, smishing) is prohibited.
Make a good faith effort to avoid privacy violations, destruction of data, and interruption or degradation of our service. Only interact with accounts you own or with explicit permission of the account holder.
Out of scope vulnerabilities
When reporting vulnerabilities, please consider (1) attack scenario / exploitability, and (2) security impact of the bug. The following issues are considered out of scope:
- Mentions of secrets, access tokens, API keys, private keys, etc. in Github, will be considered out of scope without proof that they are in-use in production
create.smartcontract.com and testnet.smartcontract.com
Any subdomain of *.smartcontract.com
Any repository outside the smartcontractkit Github organization
Intercom add-on on any asset (the in-browser chat application)
SGX-related issues or vulnerabilities
Issues/bugs/vulnerabilities specific to the given Ethereum client (Geth or Parity)
OS-related vulnerabilities
Clickjacking on pages with no sensitive actions.
Unauthenticated/logout/login CSRF.
Attacks requiring MITM or physical access to a user's device.
Previously known vulnerable libraries without a working Proof of Concept.
Comma Separated Values (CSV) injection without demonstrating a vulnerability.
Missing best practices in SSL/TLS configuration.
Email or DNS configurations
Site or domain configuration
Any activity that could lead to the disruption of our service (DoS; please set up POCs on a private chain).
Executing brute force attempts to perform actions beyond a proof of concept
Content spoofing and text injection issues without showing an attack vector/without
Safe Harbor
Any activities conducted in a manner consistent with this policy will be considered authorized conduct and we will not initiate legal action against you. If legal action is initiated by a third party against you in connection with activities conducted under this policy, we will take steps to make it known that your actions were conducted in compliance with this policy.
Thank you for helping keep Chainlink and our users safe!