hats-finance/HATs-Arbitration-Contracts-0x79a618f675857b45934ca1c413fd5f409cf89735

No validation on _descriptionHash. Could approve a claim with malformed data

Opened this issue · 1 comments

Github username: @ololade97
Submission hash (on-chain): 0xcf7c99704584dad86c967a69c95ec1e90a4e2aa502d0a03f2f2d501634f238bd
Severity: medium

Description:
Descritpion
The _descriptionHash parameter in the approveSubmitClaimRequest function is used to provide a description of the claim being submitted.
The code currently does not validate or check the _descriptionHash value in any way before passing it to the _vault.submitClaim call.
Without validating the _descriptionHash, the contract has no way to ensure it is actually receiving a valid claim description.

Attack Scenario
The _descriptionHash could be empty or a malformed hash that does not actually describe the claim

Attachment
https://github.com/hats-finance/hats-contracts/blob/0d6ebbde912bc272d9b310140d434ee2aacd36d3/contracts/HATArbitrator.sol#L431C4-L474C1

PoC
https://github.com/hats-finance/hats-contracts/blob/0d6ebbde912bc272d9b310140d434ee2aacd36d3/contracts/HATArbitrator.sol#L431C4-L474C1

no attack is described in this issue.