IOP | CircuitDAO-logo

IOP | CircuitDAO

|

Circuit is a DeFi protocol built on the Chia blockchain.

Specifically, Circuit is a collateralized debt position (CDP) protocol that allows users to borrow Bytecash (BYC), a USD stablecoin issued by the protocol, against XCH, the native token of Chia.

For more information about CircuiDAo, please visit https://docs.circuitdao.com/.

Circuit rewards are denominated in USD and distributed in USDC on Ethereum

Live

4d: 23h remaining
Reward Pool
$10,000
Start Date
09 April 2025
End Date
24 April 2025
Rewards Token
USDC
Lines of Code
6,750
  • Triaged by Immunefi

  • Step-by-step PoC Required

  • KYC required

Select the category you'd like to explore

Assets in Scope

This is an invite-only audit competition. Therefore, in-scope assets are not publicly available.

Impacts in Scope

Where might Security Researchers confuse out-of-scope code to be in-scope?

N/A. There shouldn’t be any confusion.

Is this an upgrade of an existing system? If so, which? And what are the main differences?

No. As a CDP protocol, we have taken some inspiration from MakerDAO, both the initial single-collateral DAI system as well as some innovations of the multi-collateral version such as Dutch liquidation auctions. However, the implementation is completely different due to Chia’s coinset (UTXO) model and Chialisp as smart contract language.

Where do you suspect there may be bugs and/or what attack vectors are you most concerned about?

See the list of in-scope bugs below. The higher the severity, the more concerned we are about the respective exploit.

What ERC20 / ERC721 / ERC777 / ERC1155 token standards are supported?

The protocol makes use of Chia Asset Token (CAT) standard (https://chialisp.com/cats/), singletons (https://chialisp.com/singletons/) and various custom coin types. An overview can be found here: https://docs.circuitdao.com/technical-manual/overview#list-of-protocol-coins

What emergency actions may you want to use as a reason to downgrade an otherwise valid bug report?

Mitigation measures that can be taken by governance. As an (out-of-scope) example, if Announcers collude to manipulate the Oracle price, governance can swap out the Oracle by updating the ORACLE_LAUNCHER_ID Statute within STATUTES_PRICE_DELAY.

What addresses would you consider any bug report requiring their involvement to be out of scope, as long as they operate within the privileges attributed to them?

None

What addresses would you consider any bug report requiring their involvement be out of scope, even if they exceed the privileges attributed to them?

None

Which chains and/or networks will the code in scope be deployed to?

The project will eventually be deployed on Chia (mainnet and testnet11).

What external dependencies are there?

See the pyproject.toml files in ‘puzzles’ and ‘circuit’ Github repos. In terms of security context, the Chialisp code from ‘puzzles’ repos will get deployed on Chia mainnet. We will run a Chia fullnode service to connect the dapp backend to the blockchain.

Are there any unusual points about your protocol that may confuse Security Researchers?

The protocol differs from many other DeFi projects is that governance is done completely on-chain by governance token (CRT) holders. Governance proposals are created, vetoed on, and implemented (“enacted”) on-chain. There is no governance multi-sig (controlled by a foundation or otherwise).

The protocol is largely immutable, with governance being limited to changing the value of certain parameters (“Statutes”) or outputting custom conditions. The one exception to this is the Oracle singleton, which governance can replace entirely (by changing the value of the Oracle launcher ID at Statutes index 0)

What are the most valuable educational resources already available? (Ie. Documentation, Explainer videos or articles, etc)

Documentation for Circuit protocol can be found at: https://docs.circuitdao.com/ Note that the documentation is not up-to-date with the latest commit and contains inaccurate descriptions in several places. However, the docs should work well as an introduction to and general overview of the protocol.

SRs may also be interested in the audit report by Zellic:

Chialisp-related documentation can be found at: https://chialisp.com/

The protocol makes use of modern chialisp features: https://chialisp.com/modern-chialisp/

Severity
Critical
Title

Permanent freezing of funds

Severity
Critical
Title

Predictable or manipulable RNG that results in abuse of the principal or NFT

Severity
Critical
Title

Protocol insolvency

Severity
Critical
Title

Manipulation of governance voting result deviating from voted outcome and resulting in a direct change from intended effect of original results

Severity
Critical
Title

Direct theft of any user funds, whether at-rest or in-motion, other than unclaimed yield

Severity
Critical
Title

Direct theft of any user NFTs, whether at-rest or in-motion, other than unclaimed royalties

Severity
Critical
Title

Permanent significant depeg of stablecoin (BYC), e.g. by forcing undercollateralization

Severity
Critical
Title

Oracle price manipulation without assuming data providers are untrustworthy or can be attacked off-chain

Severity
Critical
Title

Theft of funds from protocol treasury

Severity
High
Title

Temporary freezing of funds for at least 24 hours

Severity
High
Title

Theft of unclaimed yield

Severity
High
Title

Permanent freezing of unclaimed yield

Out of scope

Program's Out of Scope information
  • Impacts that come up when several announcers or data providers work together in dishonest or unfair ways.
  • Economic attacks that rely on borrowing/shorting of governance tokens other than by flash loan