requestMintWeatherNFT
function does not validate the pincode
and isoCode
parameters against the user's actual location. This allows users to provide arbitrary or incorrect values, such as minting an NFT for the USA while being in Pakistan, without any validation.
The vulnerability lies in the requestMintWeatherNFT
function, which does not validate the pincode
and isoCode
parameters:
requestMintWeatherNFT
function does not verify the authenticity of the pincode
and isoCode
provided by the user.Initial State: A user calls the requestMintWeatherNFT
function with arbitrary pincode
and isoCode
values.
Step 1: The user provides a pincode
and isoCode
that do not correspond to their actual location.
Step 2: The contract accepts these values without validation and mints an NFT with incorrect metadata.
Outcome: The NFT metadata is misleading, and the system's integrity is compromised.
Implications: This undermines the trustworthiness of the NFT collection and allows users to mint NFTs for locations they are not associated with.
pincode
and isoCode
against the user's actual location. This can be achieved by using an external oracle or API to validate the location data.This is informational. It is user's responsibility to provide correct input arguments. If the user provides incorrect arguments, it will lead to incorrect results, lost funds or failed transaction.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.