> ## Documentation Index
> Fetch the complete documentation index at: https://docs.codeant.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Security

<AccordionGroup>
  <Accordion title="erc20-public-transfer">
    Custom ERC20 implementation exposes \_transfer() as public<br />**Likelihood**: HIGH<br />**Confidence**: LOW<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 2
    <br />- 8
    <br />- 4
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- A
    <br />- c
    <br />- c
    <br />- e
    <br />- s
    <br />- s
    <br />-\
    <br />- C
    <br />- o
    <br />- n
    <br />- t
    <br />- r
    <br />- o
    <br />- l
  </Accordion>

  <Accordion title="compound-sweeptoken-not-restricted">
    Function sweepToken is allowed to be called by anyone<br />**Likelihood**: LOW<br />**Confidence**: MEDIUM<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 2
    <br />- 8
    <br />- 4
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- A
    <br />- c
    <br />- c
    <br />- e
    <br />- s
    <br />- s
    <br />-\
    <br />- C
    <br />- o
    <br />- n
    <br />- t
    <br />- r
    <br />- o
    <br />- l
  </Accordion>

  <Accordion title="arbitrary-send-erc20">
    msg.sender is not being used when calling erc20.transferFrom. Example - Alice approves this contract to spend her ERC20 tokens. Bob can call function 'a' and specify Alice's address as the from parameter in transferFrom, allowing him to transfer Alice's tokens to himself.<br />**Likelihood**: LOW<br />**Confidence**: LOW<br />**CWE**: <br />- CWE-285: Improper Authorization
    <br />**OWASP**: <br />- A01:2021 - Broken Access Control
  </Accordion>

  <Accordion title="no-bidi-characters">
    The code must not contain any of Unicode Direction Control Characters<br />**Likelihood**: LOW<br />**Confidence**: HIGH<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 8
    <br />- 3
    <br />- 7
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- E
    <br />- n
    <br />- f
    <br />- o
    <br />- r
    <br />- c
    <br />- e
    <br />- m
    <br />- e
    <br />- n
    <br />- t
    <br />-\
    <br />- o
    <br />- f
    <br />-\
    <br />- a
    <br />-\
    <br />- S
    <br />- i
    <br />- n
    <br />- g
    <br />- l
    <br />- e
    <br />- ,
    <br />-\
    <br />- U
    <br />- n
    <br />- i
    <br />- q
    <br />- u
    <br />- e
    <br />-\
    <br />- A
    <br />- c
    <br />- t
    <br />- i
    <br />- o
    <br />- n
  </Accordion>

  <Accordion title="erc721-reentrancy">
    ERC721 onERC721Received() reentrancy<br />**Likelihood**: LOW<br />**Confidence**: HIGH<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 8
    <br />- 4
    <br />- 1
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- E
    <br />- n
    <br />- f
    <br />- o
    <br />- r
    <br />- c
    <br />- e
    <br />- m
    <br />- e
    <br />- n
    <br />- t
    <br />-\
    <br />- o
    <br />- f
    <br />-\
    <br />- B
    <br />- e
    <br />- h
    <br />- a
    <br />- v
    <br />- i
    <br />- o
    <br />- r
    <br />- a
    <br />- l
    <br />-\
    <br />- W
    <br />- o
    <br />- r
    <br />- k
    <br />- f
    <br />- l
    <br />- o
    <br />- w
  </Accordion>

  <Accordion title="erc20-public-burn">
    Anyone can burn tokens of other accounts<br />**Likelihood**: HIGH<br />**Confidence**: LOW<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 2
    <br />- 8
    <br />- 4
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- A
    <br />- c
    <br />- c
    <br />- e
    <br />- s
    <br />- s
    <br />-\
    <br />- C
    <br />- o
    <br />- n
    <br />- t
    <br />- r
    <br />- o
    <br />- l
  </Accordion>

  <Accordion title="sense-missing-oracle-access-control">
    Oracle update is not restricted in \$F()<br />**Likelihood**: HIGH<br />**Confidence**: MEDIUM<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 2
    <br />- 8
    <br />- 4
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- A
    <br />- c
    <br />- c
    <br />- e
    <br />- s
    <br />- s
    <br />-\
    <br />- C
    <br />- o
    <br />- n
    <br />- t
    <br />- r
    <br />- o
    <br />- l
  </Accordion>

  <Accordion title="erc777-reentrancy">
    ERC777 tokensReceived() reentrancy<br />**Likelihood**: LOW<br />**Confidence**: HIGH<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 8
    <br />- 4
    <br />- 1
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- E
    <br />- n
    <br />- f
    <br />- o
    <br />- r
    <br />- c
    <br />- e
    <br />- m
    <br />- e
    <br />- n
    <br />- t
    <br />-\
    <br />- o
    <br />- f
    <br />-\
    <br />- B
    <br />- e
    <br />- h
    <br />- a
    <br />- v
    <br />- i
    <br />- o
    <br />- r
    <br />- a
    <br />- l
    <br />-\
    <br />- W
    <br />- o
    <br />- r
    <br />- k
    <br />- f
    <br />- l
    <br />- o
    <br />- w
  </Accordion>

  <Accordion title="unrestricted-transferownership">
    Unrestricted transferOwnership<br />**Likelihood**: HIGH<br />**Confidence**: LOW<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 2
    <br />- 8
    <br />- 4
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- A
    <br />- c
    <br />- c
    <br />- e
    <br />- s
    <br />- s
    <br />-\
    <br />- C
    <br />- o
    <br />- n
    <br />- t
    <br />- r
    <br />- o
    <br />- l
  </Accordion>

  <Accordion title="curve-readonly-reentrancy">
    \$POOL.get\_virtual\_price() call on a Curve pool is not protected from the read-only reentrancy.<br />**Likelihood**: MEDIUM<br />**Confidence**: HIGH<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 8
    <br />- 4
    <br />- 1
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- E
    <br />- n
    <br />- f
    <br />- o
    <br />- r
    <br />- c
    <br />- e
    <br />- m
    <br />- e
    <br />- n
    <br />- t
    <br />-\
    <br />- o
    <br />- f
    <br />-\
    <br />- B
    <br />- e
    <br />- h
    <br />- a
    <br />- v
    <br />- i
    <br />- o
    <br />- r
    <br />- a
    <br />- l
    <br />-\
    <br />- W
    <br />- o
    <br />- r
    <br />- k
    <br />- f
    <br />- l
    <br />- o
    <br />- w
  </Accordion>

  <Accordion title="redacted-cartel-custom-approval-bug">
    transferFrom() can steal allowance of other accounts<br />**Likelihood**: HIGH<br />**Confidence**: HIGH<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 6
    <br />- 8
    <br />- 8
    <br />- :
    <br />-\
    <br />- F
    <br />- u
    <br />- n
    <br />- c
    <br />- t
    <br />- i
    <br />- o
    <br />- n
    <br />-\
    <br />- C
    <br />- a
    <br />- l
    <br />- l
    <br />-\
    <br />- W
    <br />- i
    <br />- t
    <br />- h
    <br />-\
    <br />- I
    <br />- n
    <br />- c
    <br />- o
    <br />- r
    <br />- r
    <br />- e
    <br />- c
    <br />- t
    <br />-\
    <br />- V
    <br />- a
    <br />- r
    <br />- i
    <br />- a
    <br />- b
    <br />- l
    <br />- e
    <br />-\
    <br />- o
    <br />- r
    <br />-\
    <br />- R
    <br />- e
    <br />- f
    <br />- e
    <br />- r
    <br />- e
    <br />- n
    <br />- c
    <br />- e
    <br />-\
    <br />- a
    <br />- s
    <br />-\
    <br />- A
    <br />- r
    <br />- g
    <br />- u
    <br />- m
    <br />- e
    <br />- n
    <br />- t
  </Accordion>

  <Accordion title="proxy-storage-collision">
    Proxy declares a state var that may override a storage slot of the implementation<br />**Likelihood**: MEDIUM<br />**Confidence**: HIGH<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 7
    <br />- 8
    <br />- 7
    <br />- :
    <br />-\
    <br />- O
    <br />- u
    <br />- t
    <br />- -
    <br />- o
    <br />- f
    <br />- -
    <br />- b
    <br />- o
    <br />- u
    <br />- n
    <br />- d
    <br />- s
    <br />-\
    <br />- W
    <br />- r
    <br />- i
    <br />- t
    <br />- e
  </Accordion>

  <Accordion title="incorrect-use-of-blockhash">
    blockhash(block.number) and blockhash(block.number + N) always returns 0.<br />**Likelihood**: LOW<br />**Confidence**: HIGH<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 3
    <br />- 4
    <br />- 1
    <br />- :
    <br />-\
    <br />- P
    <br />- r
    <br />- e
    <br />- d
    <br />- i
    <br />- c
    <br />- t
    <br />- a
    <br />- b
    <br />- l
    <br />- e
    <br />-\
    <br />- f
    <br />- r
    <br />- o
    <br />- m
    <br />-\
    <br />- O
    <br />- b
    <br />- s
    <br />- e
    <br />- r
    <br />- v
    <br />- a
    <br />- b
    <br />- l
    <br />- e
    <br />-\
    <br />- S
    <br />- t
    <br />- a
    <br />- t
    <br />- e
  </Accordion>

  <Accordion title="erc721-arbitrary-transferfrom">
    Custom ERC721 implementation lacks access control checks in \_transfer()<br />**Likelihood**: HIGH<br />**Confidence**: MEDIUM<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 2
    <br />- 8
    <br />- 4
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- A
    <br />- c
    <br />- c
    <br />- e
    <br />- s
    <br />- s
    <br />-\
    <br />- C
    <br />- o
    <br />- n
    <br />- t
    <br />- r
    <br />- o
    <br />- l
  </Accordion>

  <Accordion title="compound-borrowfresh-reentrancy">
    Function borrowFresh() in Compound performs state update after doTransferOut()<br />**Likelihood**: LOW<br />**Confidence**: HIGH<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 8
    <br />- 4
    <br />- 1
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- E
    <br />- n
    <br />- f
    <br />- o
    <br />- r
    <br />- c
    <br />- e
    <br />- m
    <br />- e
    <br />- n
    <br />- t
    <br />-\
    <br />- o
    <br />- f
    <br />-\
    <br />- B
    <br />- e
    <br />- h
    <br />- a
    <br />- v
    <br />- i
    <br />- o
    <br />- r
    <br />- a
    <br />- l
    <br />-\
    <br />- W
    <br />- o
    <br />- r
    <br />- k
    <br />- f
    <br />- l
    <br />- o
    <br />- w
  </Accordion>

  <Accordion title="no-slippage-check">
    No slippage check in a Uniswap v2/v3 trade<br />**Likelihood**: HIGH<br />**Confidence**: MEDIUM<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 6
    <br />- 8
    <br />- 2
    <br />- :
    <br />-\
    <br />- I
    <br />- n
    <br />- c
    <br />- o
    <br />- r
    <br />- r
    <br />- e
    <br />- c
    <br />- t
    <br />-\
    <br />- C
    <br />- a
    <br />- l
    <br />- c
    <br />- u
    <br />- l
    <br />- a
    <br />- t
    <br />- i
    <br />- o
    <br />- n
  </Accordion>

  <Accordion title="rigoblock-missing-access-control">
    setMultipleAllowances() is missing onlyOwner modifier<br />**Likelihood**: HIGH<br />**Confidence**: HIGH<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 2
    <br />- 8
    <br />- 4
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- A
    <br />- c
    <br />- c
    <br />- e
    <br />- s
    <br />- s
    <br />-\
    <br />- C
    <br />- o
    <br />- n
    <br />- t
    <br />- r
    <br />- o
    <br />- l
  </Accordion>

  <Accordion title="accessible-selfdestruct">
    Contract can be destructed by anyone in \$FUNC<br />**Likelihood**: HIGH<br />**Confidence**: LOW<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 2
    <br />- 8
    <br />- 4
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- A
    <br />- c
    <br />- c
    <br />- e
    <br />- s
    <br />- s
    <br />-\
    <br />- C
    <br />- o
    <br />- n
    <br />- t
    <br />- r
    <br />- o
    <br />- l
  </Accordion>

  <Accordion title="gearbox-tokens-path-confusion">
    UniswapV3 adapter implemented incorrect extraction of path parameters<br />**Likelihood**: LOW<br />**Confidence**: LOW<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 1
    <br />- 2
    <br />- 8
    <br />- 5
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- V
    <br />- a
    <br />- l
    <br />- i
    <br />- d
    <br />- a
    <br />- t
    <br />- i
    <br />- o
    <br />- n
    <br />-\
    <br />- o
    <br />- f
    <br />-\
    <br />- S
    <br />- p
    <br />- e
    <br />- c
    <br />- i
    <br />- f
    <br />- i
    <br />- e
    <br />- d
    <br />-\
    <br />- I
    <br />- n
    <br />- d
    <br />- e
    <br />- x
    <br />- ,
    <br />-\
    <br />- P
    <br />- o
    <br />- s
    <br />- i
    <br />- t
    <br />- i
    <br />- o
    <br />- n
    <br />- ,
    <br />-\
    <br />- o
    <br />- r
    <br />-\
    <br />- O
    <br />- f
    <br />- f
    <br />- s
    <br />- e
    <br />- t
    <br />-\
    <br />- i
    <br />- n
    <br />-\
    <br />- I
    <br />- n
    <br />- p
    <br />- u
    <br />- t
  </Accordion>

  <Accordion title="basic-oracle-manipulation">
    Price oracle can be manipulated via flashloan<br />**Likelihood**: MEDIUM<br />**Confidence**: LOW<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 6
    <br />- 8
    <br />- 2
    <br />- :
    <br />-\
    <br />- I
    <br />- n
    <br />- c
    <br />- o
    <br />- r
    <br />- r
    <br />- e
    <br />- c
    <br />- t
    <br />-\
    <br />- C
    <br />- a
    <br />- l
    <br />- c
    <br />- u
    <br />- l
    <br />- a
    <br />- t
    <br />- i
    <br />- o
    <br />- n
  </Accordion>

  <Accordion title="basic-arithmetic-underflow">
    Possible arithmetic underflow<br />**Likelihood**: MEDIUM<br />**Confidence**: LOW<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 1
    <br />- 9
    <br />- 1
    <br />- :
    <br />-\
    <br />- I
    <br />- n
    <br />- t
    <br />- e
    <br />- g
    <br />- e
    <br />- r
    <br />-\
    <br />- U
    <br />- n
    <br />- d
    <br />- e
    <br />- r
    <br />- f
    <br />- l
    <br />- o
    <br />- w
    <br />-\
    <br />- (
    <br />- W
    <br />- r
    <br />- a
    <br />- p
    <br />-\
    <br />- o
    <br />- r
    <br />-\
    <br />- W
    <br />- r
    <br />- a
    <br />- p
    <br />- a
    <br />- r
    <br />- o
    <br />- u
    <br />- n
    <br />- d
    <br />- )
  </Accordion>

  <Accordion title="delegatecall-to-arbitrary-address">
    An attacker may perform delegatecall() to an arbitrary address.<br />**Likelihood**: HIGH<br />**Confidence**: LOW<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 2
    <br />- 0
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- I
    <br />- n
    <br />- p
    <br />- u
    <br />- t
    <br />-\
    <br />- V
    <br />- a
    <br />- l
    <br />- i
    <br />- d
    <br />- a
    <br />- t
    <br />- i
    <br />- o
    <br />- n
  </Accordion>

  <Accordion title="keeper-network-oracle-manipulation">
    Keep3rV2.current() call has high data freshness, but it has low security,  an exploiter simply needs to manipulate 2 data points to be able to impact the feed.<br />**Likelihood**: LOW<br />**Confidence**: HIGH<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 6
    <br />- 8
    <br />- 2
    <br />- :
    <br />-\
    <br />- I
    <br />- n
    <br />- c
    <br />- o
    <br />- r
    <br />- r
    <br />- e
    <br />- c
    <br />- t
    <br />-\
    <br />- C
    <br />- a
    <br />- l
    <br />- c
    <br />- u
    <br />- l
    <br />- a
    <br />- t
    <br />- i
    <br />- o
    <br />- n
  </Accordion>

  <Accordion title="arbitrary-low-level-call">
    An attacker may perform call() to an arbitrary address with controlled calldata<br />**Likelihood**: HIGH<br />**Confidence**: LOW<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 2
    <br />- 0
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- I
    <br />- n
    <br />- p
    <br />- u
    <br />- t
    <br />-\
    <br />- V
    <br />- a
    <br />- l
    <br />- i
    <br />- d
    <br />- a
    <br />- t
    <br />- i
    <br />- o
    <br />- n
  </Accordion>

  <Accordion title="balancer-readonly-reentrancy-getpooltokens">
    \$VAULT.getPoolTokens() call on a Balancer pool is not protected from the read-only reentrancy.<br />**Likelihood**: MEDIUM<br />**Confidence**: HIGH<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 8
    <br />- 4
    <br />- 1
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- E
    <br />- n
    <br />- f
    <br />- o
    <br />- r
    <br />- c
    <br />- e
    <br />- m
    <br />- e
    <br />- n
    <br />- t
    <br />-\
    <br />- o
    <br />- f
    <br />-\
    <br />- B
    <br />- e
    <br />- h
    <br />- a
    <br />- v
    <br />- i
    <br />- o
    <br />- r
    <br />- a
    <br />- l
    <br />-\
    <br />- W
    <br />- o
    <br />- r
    <br />- k
    <br />- f
    <br />- l
    <br />- o
    <br />- w
  </Accordion>

  <Accordion title="tecra-coin-burnfrom-bug">
    Parameter "from" is checked at incorrect position in "\_allowances" mapping<br />**Likelihood**: HIGH<br />**Confidence**: MEDIUM<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 6
    <br />- 8
    <br />- 8
    <br />- :
    <br />-\
    <br />- F
    <br />- u
    <br />- n
    <br />- c
    <br />- t
    <br />- i
    <br />- o
    <br />- n
    <br />-\
    <br />- C
    <br />- a
    <br />- l
    <br />- l
    <br />-\
    <br />- W
    <br />- i
    <br />- t
    <br />- h
    <br />-\
    <br />- I
    <br />- n
    <br />- c
    <br />- o
    <br />- r
    <br />- r
    <br />- e
    <br />- c
    <br />- t
    <br />-\
    <br />- V
    <br />- a
    <br />- r
    <br />- i
    <br />- a
    <br />- b
    <br />- l
    <br />- e
    <br />-\
    <br />- o
    <br />- r
    <br />-\
    <br />- R
    <br />- e
    <br />- f
    <br />- e
    <br />- r
    <br />- e
    <br />- n
    <br />- c
    <br />- e
    <br />-\
    <br />- a
    <br />- s
    <br />-\
    <br />- A
    <br />- r
    <br />- g
    <br />- u
    <br />- m
    <br />- e
    <br />- n
    <br />- t
  </Accordion>

  <Accordion title="openzeppelin-ecdsa-recover-malleable">
    Potential signature malleability in \$F<br />**Likelihood**: MEDIUM<br />**Confidence**: LOW<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 3
    <br />- 4
    <br />- 7
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- V
    <br />- e
    <br />- r
    <br />- i
    <br />- f
    <br />- i
    <br />- c
    <br />- a
    <br />- t
    <br />- i
    <br />- o
    <br />- n
    <br />-\
    <br />- o
    <br />- f
    <br />-\
    <br />- C
    <br />- r
    <br />- y
    <br />- p
    <br />- t
    <br />- o
    <br />- g
    <br />- r
    <br />- a
    <br />- p
    <br />- h
    <br />- i
    <br />- c
    <br />-\
    <br />- S
    <br />- i
    <br />- g
    <br />- n
    <br />- a
    <br />- t
    <br />- u
    <br />- r
    <br />- e
  </Accordion>

  <Accordion title="balancer-readonly-reentrancy-getrate">
    \$VAR.getRate() call on a Balancer pool is not protected from the read-only reentrancy.<br />**Likelihood**: MEDIUM<br />**Confidence**: HIGH<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 8
    <br />- 4
    <br />- 1
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- E
    <br />- n
    <br />- f
    <br />- o
    <br />- r
    <br />- c
    <br />- e
    <br />- m
    <br />- e
    <br />- n
    <br />- t
    <br />-\
    <br />- o
    <br />- f
    <br />-\
    <br />- B
    <br />- e
    <br />- h
    <br />- a
    <br />- v
    <br />- i
    <br />- o
    <br />- r
    <br />- a
    <br />- l
    <br />-\
    <br />- W
    <br />- o
    <br />- r
    <br />- k
    <br />- f
    <br />- l
    <br />- o
    <br />- w
  </Accordion>

  <Accordion title="uniswap-callback-not-protected">
    Uniswap callback is not protected<br />**Likelihood**: MEDIUM<br />**Confidence**: LOW<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 2
    <br />- 8
    <br />- 4
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- A
    <br />- c
    <br />- c
    <br />- e
    <br />- s
    <br />- s
    <br />-\
    <br />- C
    <br />- o
    <br />- n
    <br />- t
    <br />- r
    <br />- o
    <br />- l
  </Accordion>

  <Accordion title="erc677-reentrancy">
    ERC677 callAfterTransfer() reentrancy<br />**Likelihood**: MEDIUM<br />**Confidence**: HIGH<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 8
    <br />- 4
    <br />- 1
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- E
    <br />- n
    <br />- f
    <br />- o
    <br />- r
    <br />- c
    <br />- e
    <br />- m
    <br />- e
    <br />- n
    <br />- t
    <br />-\
    <br />- o
    <br />- f
    <br />-\
    <br />- B
    <br />- e
    <br />- h
    <br />- a
    <br />- v
    <br />- i
    <br />- o
    <br />- r
    <br />- a
    <br />- l
    <br />-\
    <br />- W
    <br />- o
    <br />- r
    <br />- k
    <br />- f
    <br />- l
    <br />- o
    <br />- w
  </Accordion>

  <Accordion title="msg-value-multicall">
    \$F with constant msg.value can be called multiple times<br />**Likelihood**: MEDIUM<br />**Confidence**: LOW<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 8
    <br />- 3
    <br />- 7
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- E
    <br />- n
    <br />- f
    <br />- o
    <br />- r
    <br />- c
    <br />- e
    <br />- m
    <br />- e
    <br />- n
    <br />- t
    <br />-\
    <br />- o
    <br />- f
    <br />-\
    <br />- a
    <br />-\
    <br />- S
    <br />- i
    <br />- n
    <br />- g
    <br />- l
    <br />- e
    <br />- ,
    <br />-\
    <br />- U
    <br />- n
    <br />- i
    <br />- q
    <br />- u
    <br />- e
    <br />-\
    <br />- A
    <br />- c
    <br />- t
    <br />- i
    <br />- o
    <br />- n
  </Accordion>

  <Accordion title="encode-packed-collision">
    abi.encodePacked hash collision with variable length arguments in \$F()<br />**Likelihood**: MEDIUM<br />**Confidence**: HIGH<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 2
    <br />- 0
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- I
    <br />- n
    <br />- p
    <br />- u
    <br />- t
    <br />-\
    <br />- V
    <br />- a
    <br />- l
    <br />- i
    <br />- d
    <br />- a
    <br />- t
    <br />- i
    <br />- o
    <br />- n
  </Accordion>

  <Accordion title="superfluid-ctx-injection">
    A specially crafted calldata may be used to impersonate other accounts<br />**Likelihood**: HIGH<br />**Confidence**: HIGH<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 2
    <br />- 0
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- I
    <br />- n
    <br />- p
    <br />- u
    <br />- t
    <br />-\
    <br />- V
    <br />- a
    <br />- l
    <br />- i
    <br />- d
    <br />- a
    <br />- t
    <br />- i
    <br />- o
    <br />- n
  </Accordion>

  <Accordion title="oracle-price-update-not-restricted">
    Oracle price data can be submitted by anyone<br />**Likelihood**: HIGH<br />**Confidence**: LOW<br />**CWE**: <br />- C
    <br />- W
    <br />- E
    <br />- -
    <br />- 2
    <br />- 8
    <br />- 4
    <br />- :
    <br />-\
    <br />- I
    <br />- m
    <br />- p
    <br />- r
    <br />- o
    <br />- p
    <br />- e
    <br />- r
    <br />-\
    <br />- A
    <br />- c
    <br />- c
    <br />- e
    <br />- s
    <br />- s
    <br />-\
    <br />- C
    <br />- o
    <br />- n
    <br />- t
    <br />- r
    <br />- o
    <br />- l
  </Accordion>
</AccordionGroup>
