QA Report #214
Labels
bug
Something isn't working
QA (Quality Assurance)
Assets are not at risk. State handling, function incorrect as to spec, issues with clarity, syntax
1. Unpatched token approval issue in BridgeFacet, open TODOs (low)
Proof of Concept
Race condition issue isn't addressed, open TODO:
https://github.com/code-423n4/2022-06-connext/blob/b4532655071566b33c41eac46e75be29b4a381ed/contracts/contracts/core/connext/facets/BridgeFacet.sol#L1027-L1029
Another TODO comment:
https://github.com/code-423n4/2022-06-connext/blob/b4532655071566b33c41eac46e75be29b4a381ed/contracts/contracts/core/connext/facets/BridgeFacet.sol#L579-L581
Recommended Mitigation Steps
Consider choosing and implementing the method to address the approval issue, i.e. either do two step 0 -> amount approval or try-catch, before release.
It's advised to remove TODO comments in either way from production version of the code.
2. Incomplete description of AssetLogic's _swapAsset function (low)
_swapAsset() function description omits _slippageTol argument:
https://github.com/code-423n4/2022-06-connext/blob/b4532655071566b33c41eac46e75be29b4a381ed/contracts/contracts/core/connext/libraries/AssetLogic.sol#L252-L268
Recommended Mitigation Steps
Add the description, for example:
3. Incomplete description of AssetLogic's _swapAssetOut function (low)
There is a typo and success return value is omitted:
https://github.com/code-423n4/2022-06-connext/blob/b4532655071566b33c41eac46e75be29b4a381ed/contracts/contracts/core/connext/libraries/AssetLogic.sol#L294-L310
Recommended Mitigation Steps
Consider updating to:
4. AssetFacet's events aren't indexed (non-critical)
Filtering on unindexed events is disabled, which makes it harder to programmatically use and analyse the system.
Proof of Concept
AssetFacet's events don't have any indices:
https://github.com/code-423n4/2022-06-connext/blob/b4532655071566b33c41eac46e75be29b4a381ed/contracts/contracts/core/connext/facets/AssetFacet.sol#L21-L62
Recommended Mitigation Steps
Consider adding indexes to ids and addresses in the all important events to improve their usability
The text was updated successfully, but these errors were encountered: