Open hats-bug-reporter[bot] opened 1 month ago
Be aware that while 98 is similar and probaly demostrating the root cause, the fact that he/she is not confirming and demostrating clear impacts (hence why submitted as Low
), I would assume that if my report is confirmed, I should be fully awarded, as the first one to proove the most damaging impact
.
correct me if I'm wrong, but the POC has only one user interacting with the markets, so is he stealing from himself? who lost money in the process? can you show a POC with two users, where one of the users is unable to redeem his shares?
what I see is: both markets share the same "pot" on the Conditional Tokens contract. The user splits on market 1 and then redeems on market 2. The result is the same as spliting on market 1 and then redeeming on market 1, as both markets are interacting with the same questionId / conditionId.
Indeed
, I had an oversight for this, at least now I understand better the system, thanks for clarifying.
Github username: -- Twitter username: -- Submission hash (on-chain): 0xc71a1d98f00c557a83d211a217a5e66cc16d3acb4db412bb0a069c472273587e Severity: high
Description:
Description
Seer app seems to allow to have
multiple markets sharing the same reality question
, but that use case doesn't seem to be working as expected. Seems like this allow for multiple edges cases, the main one being that a certain market cansteal earning
from another market if resolved first, even if there was not split on it.PoC
Add this test in
MainnetRouter.test
and runyarn hardhat test
We can see that here we have 2 market sharing the same reality question. That is confirmed by
marketAddress
being different but not the conditionId, questionId, questionsIds, and even the ERC20 (please see output).One user is splitting against the first market (
market
). Later on,marketA
, which nobody split on it, get the response first and is resolved. Another user can redeem againstmarketA
without any issue and without having invested anything, which is actually stealing from the first user which splitted on the other market which is not yet resolved.OUTPUT