mirror of https://github.com/ConsenSys/mythril
blockchainethereumsmart-contractssoliditysecurityprogram-analysissecurity-analysissymbolic-execution
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
105 lines
5.5 KiB
105 lines
5.5 KiB
{
|
|
"success": true,
|
|
"error": null,
|
|
"issues": [
|
|
{
|
|
"title": "Ether send",
|
|
"description": "In the function `'_function_0x4229616d'` a non-zero amount of Ether is sent to an address taken from storage slot 5.\nThere is a check on storage index 5. This storage slot can be written to by calling the function '_function_0x67f809e9'.\n\nThere is a check on storage index 5. This storage slot can be written to by calling the function '_function_0x67f809e9'.\nThere is a check on storage index 1. This storage slot can be written to by calling the function 'fallback'.",
|
|
"function": "_function_0x4229616d",
|
|
"type": "Warning",
|
|
"address": 1599,
|
|
"debug": "<DEBUG-DATA>",
|
|
"filename": "<TESTDATA>/inputs/rubixi.sol",
|
|
"lineno": 93,
|
|
"code": "creator.send(feesToCollect)"
|
|
},
|
|
{
|
|
"title": "Ether send",
|
|
"description": "In the function `'_function_0x686f2c90'` a non-zero amount of Ether is sent to an address taken from storage slot 5.\nThere is a check on storage index 5. This storage slot can be written to by calling the function '_function_0x67f809e9'.\n\nThere is a check on storage index 5. This storage slot can be written to by calling the function '_function_0x67f809e9'.\nThere is a check on storage index 1. This storage slot can be written to by calling the function 'fallback'.",
|
|
"function": "_function_0x686f2c90",
|
|
"type": "Warning",
|
|
"address": 1940,
|
|
"debug": "<DEBUG-DATA>",
|
|
"filename": "<TESTDATA>/inputs/rubixi.sol",
|
|
"lineno": 75,
|
|
"code": "creator.send(collectedFees)"
|
|
},
|
|
{
|
|
"title": "Exception state",
|
|
"description": "A reachable exception (opcode 0xfe) has been detected. This can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. This is acceptable in most situations. Note however that assert() should only be used to check invariants. Use require() for regular input checking. ",
|
|
"function": "_function_0x57d4021b",
|
|
"type": "Informational",
|
|
"address": 1653,
|
|
"debug": "<DEBUG-DATA>",
|
|
"filename": "<TESTDATA>/inputs/rubixi.sol",
|
|
"lineno": 131,
|
|
"code": "participants[payoutOrder]"
|
|
},
|
|
{
|
|
"title": "Exception state",
|
|
"description": "A reachable exception (opcode 0xfe) has been detected. This can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. This is acceptable in most situations. Note however that assert() should only be used to check invariants. Use require() for regular input checking. ",
|
|
"function": "_function_0x9dbc4f9b",
|
|
"type": "Informational",
|
|
"address": 2085,
|
|
"debug": "<DEBUG-DATA>",
|
|
"filename": "<TESTDATA>/inputs/rubixi.sol",
|
|
"lineno": 148,
|
|
"code": "participants[orderInPyramid]"
|
|
},
|
|
{
|
|
"title": "Integer Overflow ",
|
|
"description": "A possible integer overflow exists in the function `_function_0xfae14192`.\nThe addition may result in a value higher than the maximum representable integer.",
|
|
"function": "_function_0xfae14192",
|
|
"type": "Warning",
|
|
"address": 1223,
|
|
"debug": "<DEBUG-DATA>",
|
|
"filename": "<TESTDATA>/inputs/rubixi.sol",
|
|
"lineno": 37,
|
|
"code": "collectedFees += msg.value"
|
|
},
|
|
{
|
|
"title": "Integer Underflow",
|
|
"description": "A possible integer underflow exists in the function `_function_0xd11f13df`.\nThe subtraction may result in a value < 0.",
|
|
"function": "_function_0xd11f13df",
|
|
"type": "Warning",
|
|
"address": 2743,
|
|
"debug": "<DEBUG-DATA>",
|
|
"filename": "<TESTDATA>/inputs/rubixi.sol",
|
|
"lineno": 143,
|
|
"code": "participants.length - payoutOrder"
|
|
},
|
|
{
|
|
"title": "Unchecked CALL return value",
|
|
"description": "The return value of an external call is not checked. Note that execution continue even if the called contract throws.",
|
|
"function": "_function_0x4229616d",
|
|
"type": "Informational",
|
|
"address": 1599,
|
|
"debug": "<DEBUG-DATA>",
|
|
"filename": "<TESTDATA>/inputs/rubixi.sol",
|
|
"lineno": 93,
|
|
"code": "creator.send(feesToCollect)"
|
|
},
|
|
{
|
|
"title": "Unchecked CALL return value",
|
|
"description": "The return value of an external call is not checked. Note that execution continue even if the called contract throws.",
|
|
"function": "_function_0xb4022950",
|
|
"type": "Informational",
|
|
"address": 1940,
|
|
"debug": "<DEBUG-DATA>",
|
|
"filename": "<TESTDATA>/inputs/rubixi.sol",
|
|
"lineno": 75,
|
|
"code": "creator.send(collectedFees)"
|
|
},
|
|
{
|
|
"title": "Unchecked CALL return value",
|
|
"description": "The return value of an external call is not checked. Note that execution continue even if the called contract throws.",
|
|
"function": "_function_0xb4022950",
|
|
"type": "Informational",
|
|
"address": 2582,
|
|
"debug": "<DEBUG-DATA>",
|
|
"filename": "<TESTDATA>/inputs/rubixi.sol",
|
|
"lineno": 85,
|
|
"code": "creator.send(_amt)"
|
|
}
|
|
]
|
|
} |