[Wrapping] Security Analysis

Tracks tasks associated with identifying security considerations for the wrapping component.

Security Considerations

Component

Vulnerability

Description

Implications

Next steps / Status

Component

Vulnerability

Description

Implications

Next steps / Status

fio.erc20

fio.erc721

General solidity vulnerabilities

The following site lists several solidity hacks/vulnerabilities that should be reviewed and considered.

https://medium.com/hackernoon/hackpedia-16-solidity-hacks-vulnerabilities-their-fixes-and-real-world-examples-f3210eba5148

Solidity hacks could result in minting of WFIO without wrapping.

Complete

fio.oracle

Compromised keys

Outside of the general risks to the erc20 and erc721 contracts, the main risk for Oracles is that their signing keys somehow compromised and can be used to send approvals to the FIO and Solidity contracts.

The fio.oracle javascript code has not been audited. This code should only be run in a protected environment on Oracle servers. The keys are held in environment variables that, if compromised, would allow a hacker to approve illegitimate transactions

Could result in unauthorized minting and wrapping.

  • Story to review security considerations for Oracle servers. Need to define what that should look like in coordination with the BPs:

  • Included notes in the anomaly detection story (BD-3892). This service should report all wraps/unwraps to a monitored Discord channel.

  • Created story to track the risks and costs associated with performing an audit of the fio.oracle code: