Merge and fix more merge conflicts

pull/852/head
Nikhil Parasaram 6 years ago
commit f70121cefa
  1. 8
      mythril/analysis/modules/multiple_sends.py
  2. 8
      mythril/analysis/report.py
  3. 111
      tests/testdata/outputs_expected/calls.sol.o.json
  4. 163
      tests/testdata/outputs_expected/calls.sol.o.jsonv2
  5. 6
      tests/testdata/outputs_expected/ether_send.sol.o.json
  6. 8
      tests/testdata/outputs_expected/ether_send.sol.o.jsonv2
  7. 59
      tests/testdata/outputs_expected/exceptions.sol.o.json
  8. 87
      tests/testdata/outputs_expected/exceptions.sol.o.jsonv2
  9. 72
      tests/testdata/outputs_expected/kinds_of_calls.sol.o.json
  10. 106
      tests/testdata/outputs_expected/kinds_of_calls.sol.o.jsonv2
  11. 6
      tests/testdata/outputs_expected/metacoin.sol.o.json
  12. 8
      tests/testdata/outputs_expected/metacoin.sol.o.jsonv2
  13. 20
      tests/testdata/outputs_expected/multi_contracts.sol.o.json
  14. 30
      tests/testdata/outputs_expected/multi_contracts.sol.o.jsonv2
  15. 6
      tests/testdata/outputs_expected/nonascii.sol.o.json
  16. 8
      tests/testdata/outputs_expected/nonascii.sol.o.jsonv2
  17. 20
      tests/testdata/outputs_expected/origin.sol.o.json
  18. 30
      tests/testdata/outputs_expected/origin.sol.o.jsonv2
  19. 46
      tests/testdata/outputs_expected/returnvalue.sol.o.json
  20. 68
      tests/testdata/outputs_expected/returnvalue.sol.o.jsonv2
  21. 20
      tests/testdata/outputs_expected/suicide.sol.o.json
  22. 30
      tests/testdata/outputs_expected/suicide.sol.o.jsonv2

@ -81,10 +81,10 @@ def _analyze_state(state: GlobalState):
call.state.get_current_instruction()["address"]
)
description_tail = (
"Try to isolate each external call into its own transaction,"
" as external calls can fail accidentally or deliberately.\n"
)
description_tail += (
"Try to isolate each external call into its own transaction,"
" as external calls can fail accidentally or deliberately.\n"
)
issue = Issue(
contract=node.contract_name,

@ -48,8 +48,8 @@ class Issue:
self.contract = contract
self.function = function_name
self.address = address
self.description_head = (description_head,)
self.description_tail = (description_tail,)
self.description_head = description_head
self.description_tail = description_tail
self.description = "%s\n%s" % (description_head, description_tail)
self.severity = severity
self.debug = debug
@ -87,7 +87,7 @@ class Issue:
"debug": self.debug,
"min_gas_used": self.min_gas_used,
"max_gas_used": self.max_gas_used,
"SourceMap": self.source_mapping,
"sourceMap": self.source_mapping,
}
if self.filename and self.lineno:
@ -201,7 +201,7 @@ class Report:
_issues.append(
{
"swcID": issue.swc_id,
"swcID": "SWC-" + issue.swc_id,
"swcTitle": title,
"description": {
"head": issue.description_head,

@ -1,110 +1 @@
{
"success": true,
"error": null,
"issues": [
{
"debug": "<DEBUG-DATA>",
"function": "thisisfine()",
"description": "The contract executes an external message call.\nAn external function call to a fixed contract address is executed. Make sure that the callee contract has been reviewed carefully.",
"title": "External Call To Fixed Address",
"min_gas_used": 643,
"severity": "Low",
"SourceMap": null,
"contract": "Unknown",
"swc-id": "107",
"max_gas_used": 1254,
"address": 661
},
{
"function": "thisisfine()",
"debug": "<DEBUG-DATA>",
"title": "Unchecked Call Return Value",
"description": "The return value of a message call is not checked.\nExternal calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states.",
"SourceMap": null,
"severity": "Low",
"min_gas_used": 1361,
"address": 661,
"max_gas_used": 35972,
"swc-id": "104",
"contract": "Unknown"
},
{
"max_gas_used": 1298,
"address": 779,
"contract": "Unknown",
"swc-id": "107",
"severity": "Low",
"SourceMap": null,
"min_gas_used": 687,
"title": "External Call To Fixed Address",
"description": "The contract executes an external message call.\nAn external function call to a fixed contract address is executed. Make sure that the callee contract has been reviewed carefully.",
"function": "callstoredaddress()",
"debug": "<DEBUG-DATA>"
},
{
"title": "Unchecked Call Return Value",
"description": "The return value of a message call is not checked.\nExternal calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states.",
"function": "callstoredaddress()",
"debug": "<DEBUG-DATA>",
"max_gas_used": 36016,
"address": 779,
"contract": "Unknown",
"swc-id": "104",
"severity": "Low",
"SourceMap": null,
"min_gas_used": 1405
},
{
"contract": "Unknown",
"swc-id": "107",
"max_gas_used": 1320,
"address": 858,
"min_gas_used": 709,
"severity": "Low",
"SourceMap": null,
"description": "The contract executes an external message call.\nAn external function call to a fixed contract address is executed. Make sure that the callee contract has been reviewed carefully.",
"title": "External Call To Fixed Address",
"debug": "<DEBUG-DATA>",
"function": "reentrancy()"
},
{
"description": "The return value of a message call is not checked.\nExternal calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states.",
"title": "Unchecked Call Return Value",
"debug": "<DEBUG-DATA>",
"function": "reentrancy()",
"contract": "Unknown",
"swc-id": "104",
"max_gas_used": 61052,
"address": 858,
"min_gas_used": 6441,
"severity": "Low",
"SourceMap": null
},
{
"severity": "Medium",
"SourceMap": null,
"min_gas_used": 335,
"max_gas_used": 616,
"address": 912,
"contract": "Unknown",
"swc-id": "107",
"function": "calluseraddress(address)",
"debug": "<DEBUG-DATA>",
"title": "External Call To User-Supplied Address",
"description": "A call to a user-supplied address is executed.\nThe callee address of an external message call can be set by the caller. Note that the callee can contain arbitrary code and may re-enter any function in this contract. Review the business logic carefully to prevent averse effects on thecontract state."
},
{
"min_gas_used": 1055,
"SourceMap": null,
"severity": "Low",
"swc-id": "104",
"contract": "Unknown",
"address": 912,
"max_gas_used": 35336,
"debug": "<DEBUG-DATA>",
"function": "calluseraddress(address)",
"description": "The return value of a message call is not checked.\nExternal calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states.",
"title": "Unchecked Call Return Value"
}
]
}
{"error": null, "issues": [{"address": 661, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The contract executes an external message call.\nAn external function call to a fixed contract address is executed. Make sure that the callee contract has been reviewed carefully.", "function": "thisisfine()", "max_gas_used": 1254, "min_gas_used": 643, "severity": "Low", "sourceMap": null, "swc-id": "107", "title": "External Call To Fixed Address"}, {"address": 661, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The return value of a message call is not checked.\nExternal calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states.", "function": "thisisfine()", "max_gas_used": 35972, "min_gas_used": 1361, "severity": "Low", "sourceMap": null, "swc-id": "104", "title": "Unchecked Call Return Value"}, {"address": 779, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The contract executes an external message call.\nAn external function call to a fixed contract address is executed. Make sure that the callee contract has been reviewed carefully.", "function": "callstoredaddress()", "max_gas_used": 1298, "min_gas_used": 687, "severity": "Low", "sourceMap": null, "swc-id": "107", "title": "External Call To Fixed Address"}, {"address": 779, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The return value of a message call is not checked.\nExternal calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states.", "function": "callstoredaddress()", "max_gas_used": 36016, "min_gas_used": 1405, "severity": "Low", "sourceMap": null, "swc-id": "104", "title": "Unchecked Call Return Value"}, {"address": 858, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The contract executes an external message call.\nAn external function call to a fixed contract address is executed. Make sure that the callee contract has been reviewed carefully.", "function": "reentrancy()", "max_gas_used": 1320, "min_gas_used": 709, "severity": "Low", "sourceMap": null, "swc-id": "107", "title": "External Call To Fixed Address"}, {"address": 858, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The return value of a message call is not checked.\nExternal calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states.", "function": "reentrancy()", "max_gas_used": 61052, "min_gas_used": 6441, "severity": "Low", "sourceMap": null, "swc-id": "104", "title": "Unchecked Call Return Value"}, {"address": 912, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "A call to a user-supplied address is executed.\nThe callee address of an external message call can be set by the caller. Note that the callee can contain arbitrary code and may re-enter any function in this contract. Review the business logic carefully to prevent averse effects on thecontract state.", "function": "calluseraddress(address)", "max_gas_used": 616, "min_gas_used": 335, "severity": "Medium", "sourceMap": null, "swc-id": "107", "title": "External Call To User-Supplied Address"}, {"address": 912, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The return value of a message call is not checked.\nExternal calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states.", "function": "calluseraddress(address)", "max_gas_used": 35336, "min_gas_used": 1055, "severity": "Low", "sourceMap": null, "swc-id": "104", "title": "Unchecked Call Return Value"}], "success": true}

@ -1,162 +1 @@
{
"sourceFormat": "evm-byzantium-bytecode",
"issues": [
{
"locations": [
{
"sourceMap": "661:1:0"
}
],
"description": {
"tail": [
"An external function call to a fixed contract address is executed. Make sure that the callee contract has been reviewed carefully."
],
"head": [
"The contract executes an external message call."
]
},
"severity": "Low",
"swcID": "107",
"extra": {},
"swcTitle": "Reentrancy"
},
{
"swcID": "107",
"extra": {},
"swcTitle": "Reentrancy",
"locations": [
{
"sourceMap": "779:1:0"
}
],
"description": {
"tail": [
"An external function call to a fixed contract address is executed. Make sure that the callee contract has been reviewed carefully."
],
"head": [
"The contract executes an external message call."
]
},
"severity": "Low"
},
{
"swcID": "107",
"extra": {},
"swcTitle": "Reentrancy",
"locations": [
{
"sourceMap": "858:1:0"
}
],
"description": {
"head": [
"The contract executes an external message call."
],
"tail": [
"An external function call to a fixed contract address is executed. Make sure that the callee contract has been reviewed carefully."
]
},
"severity": "Low"
},
{
"swcTitle": "Reentrancy",
"extra": {},
"swcID": "107",
"severity": "Medium",
"description": {
"head": [
"A call to a user-supplied address is executed."
],
"tail": [
"The callee address of an external message call can be set by the caller. Note that the callee can contain arbitrary code and may re-enter any function in this contract. Review the business logic carefully to prevent averse effects on thecontract state."
]
},
"locations": [
{
"sourceMap": "912:1:0"
}
]
},
{
"swcTitle": "Unchecked Call Return Value",
"extra": {},
"swcID": "104",
"severity": "Low",
"description": {
"head": [
"The return value of a message call is not checked."
],
"tail": [
"External calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states."
]
},
"locations": [
{
"sourceMap": "661:1:0"
}
]
},
{
"description": {
"head": [
"The return value of a message call is not checked."
],
"tail": [
"External calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states."
]
},
"severity": "Low",
"locations": [
{
"sourceMap": "779:1:0"
}
],
"swcTitle": "Unchecked Call Return Value",
"swcID": "104",
"extra": {}
},
{
"locations": [
{
"sourceMap": "858:1:0"
}
],
"description": {
"head": [
"The return value of a message call is not checked."
],
"tail": [
"External calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states."
]
},
"severity": "Low",
"swcID": "104",
"extra": {},
"swcTitle": "Unchecked Call Return Value"
},
{
"severity": "Low",
"description": {
"tail": [
"External calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states."
],
"head": [
"The return value of a message call is not checked."
]
},
"locations": [
{
"sourceMap": "912:1:0"
}
],
"swcTitle": "Unchecked Call Return Value",
"extra": {},
"swcID": "104"
}
],
"sourceType": "raw-bytecode",
"sourceList": [
"0x7cbb77986c6b1bf6e945cd3fba06d3ea3d28cfc49cdfdc9571ec30703ac5862f"
],
"meta": {}
}
{"issues": [{"description": {"head": "The contract executes an external message call.", "tail": "An external function call to a fixed contract address is executed. Make sure that the callee contract has been reviewed carefully."}, "extra": {}, "locations": [{"sourceMap": "661:1:0"}], "severity": "Low", "swcID": "SWC-107", "swcTitle": "Reentrancy"}, {"description": {"head": "The contract executes an external message call.", "tail": "An external function call to a fixed contract address is executed. Make sure that the callee contract has been reviewed carefully."}, "extra": {}, "locations": [{"sourceMap": "779:1:0"}], "severity": "Low", "swcID": "SWC-107", "swcTitle": "Reentrancy"}, {"description": {"head": "The contract executes an external message call.", "tail": "An external function call to a fixed contract address is executed. Make sure that the callee contract has been reviewed carefully."}, "extra": {}, "locations": [{"sourceMap": "858:1:0"}], "severity": "Low", "swcID": "SWC-107", "swcTitle": "Reentrancy"}, {"description": {"head": "A call to a user-supplied address is executed.", "tail": "The callee address of an external message call can be set by the caller. Note that the callee can contain arbitrary code and may re-enter any function in this contract. Review the business logic carefully to prevent averse effects on thecontract state."}, "extra": {}, "locations": [{"sourceMap": "912:1:0"}], "severity": "Medium", "swcID": "SWC-107", "swcTitle": "Reentrancy"}, {"description": {"head": "The return value of a message call is not checked.", "tail": "External calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states."}, "extra": {}, "locations": [{"sourceMap": "661:1:0"}], "severity": "Low", "swcID": "SWC-104", "swcTitle": "Unchecked Call Return Value"}, {"description": {"head": "The return value of a message call is not checked.", "tail": "External calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states."}, "extra": {}, "locations": [{"sourceMap": "779:1:0"}], "severity": "Low", "swcID": "SWC-104", "swcTitle": "Unchecked Call Return Value"}, {"description": {"head": "The return value of a message call is not checked.", "tail": "External calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states."}, "extra": {}, "locations": [{"sourceMap": "858:1:0"}], "severity": "Low", "swcID": "SWC-104", "swcTitle": "Unchecked Call Return Value"}, {"description": {"head": "The return value of a message call is not checked.", "tail": "External calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states."}, "extra": {}, "locations": [{"sourceMap": "912:1:0"}], "severity": "Low", "swcID": "SWC-104", "swcTitle": "Unchecked Call Return Value"}], "meta": {}, "sourceFormat": "evm-byzantium-bytecode", "sourceList": ["0x7cbb77986c6b1bf6e945cd3fba06d3ea3d28cfc49cdfdc9571ec30703ac5862f"], "sourceType": "raw-bytecode"}

@ -1,5 +1 @@
{
"error": null,
"issues": [],
"success": true
}
{"error": null, "issues": [], "success": true}

@ -1,7 +1 @@
{
"issues": [],
"meta": {},
"sourceFormat": "evm-byzantium-bytecode",
"sourceList": [],
"sourceType": "raw-bytecode"
}
{"issues": [], "meta": {}, "sourceFormat": "evm-byzantium-bytecode", "sourceList": [], "sourceType": "raw-bytecode"}

@ -1,58 +1 @@
{
"success": true,
"error": null,
"issues": [
{
"title": "Exception State",
"severity": "Low",
"max_gas_used": 301,
"function": "assert3(uint256)",
"address": 446,
"min_gas_used": 206,
"contract": "Unknown",
"swc-id": "110",
"SourceMap": null,
"debug": "<DEBUG-DATA>",
"description": "A reachable exception has been detected.\nIt is possible to trigger an exception (opcode 0xfe). Exceptions can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking."
},
{
"swc-id": "110",
"min_gas_used": 256,
"contract": "Unknown",
"description": "A reachable exception has been detected.\nIt is possible to trigger an exception (opcode 0xfe). Exceptions can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking.",
"debug": "<DEBUG-DATA>",
"SourceMap": null,
"severity": "Low",
"max_gas_used": 351,
"title": "Exception State",
"address": 484,
"function": "arrayaccess(uint256)"
},
{
"max_gas_used": 367,
"severity": "Low",
"title": "Exception State",
"address": 506,
"function": "divisionby0(uint256)",
"swc-id": "110",
"min_gas_used": 272,
"contract": "Unknown",
"description": "A reachable exception has been detected.\nIt is possible to trigger an exception (opcode 0xfe). Exceptions can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking.",
"debug": "<DEBUG-DATA>",
"SourceMap": null
},
{
"title": "Exception State",
"max_gas_used": 363,
"severity": "Low",
"function": "assert1()",
"address": 531,
"min_gas_used": 268,
"contract": "Unknown",
"swc-id": "110",
"SourceMap": null,
"debug": "<DEBUG-DATA>",
"description": "A reachable exception has been detected.\nIt is possible to trigger an exception (opcode 0xfe). Exceptions can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking."
}
]
}
{"error": null, "issues": [{"address": 446, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "A reachable exception has been detected.\nIt is possible to trigger an exception (opcode 0xfe). Exceptions can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking.", "function": "assert3(uint256)", "max_gas_used": 301, "min_gas_used": 206, "severity": "Low", "sourceMap": null, "swc-id": "110", "title": "Exception State"}, {"address": 484, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "A reachable exception has been detected.\nIt is possible to trigger an exception (opcode 0xfe). Exceptions can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking.", "function": "arrayaccess(uint256)", "max_gas_used": 351, "min_gas_used": 256, "severity": "Low", "sourceMap": null, "swc-id": "110", "title": "Exception State"}, {"address": 506, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "A reachable exception has been detected.\nIt is possible to trigger an exception (opcode 0xfe). Exceptions can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking.", "function": "divisionby0(uint256)", "max_gas_used": 367, "min_gas_used": 272, "severity": "Low", "sourceMap": null, "swc-id": "110", "title": "Exception State"}, {"address": 531, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "A reachable exception has been detected.\nIt is possible to trigger an exception (opcode 0xfe). Exceptions can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking.", "function": "assert1()", "max_gas_used": 363, "min_gas_used": 268, "severity": "Low", "sourceMap": null, "swc-id": "110", "title": "Exception State"}], "success": true}

@ -1,86 +1 @@
{
"meta": {},
"issues": [
{
"swcTitle": "Assert Violation",
"swcID": "110",
"description": {
"head": [
"A reachable exception has been detected."
],
"tail": [
"It is possible to trigger an exception (opcode 0xfe). Exceptions can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking."
]
},
"locations": [
{
"sourceMap": "446:1:0"
}
],
"extra": {},
"severity": "Low"
},
{
"severity": "Low",
"extra": {},
"locations": [
{
"sourceMap": "484:1:0"
}
],
"swcID": "110",
"swcTitle": "Assert Violation",
"description": {
"head": [
"A reachable exception has been detected."
],
"tail": [
"It is possible to trigger an exception (opcode 0xfe). Exceptions can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking."
]
}
},
{
"swcTitle": "Assert Violation",
"swcID": "110",
"description": {
"tail": [
"It is possible to trigger an exception (opcode 0xfe). Exceptions can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking."
],
"head": [
"A reachable exception has been detected."
]
},
"locations": [
{
"sourceMap": "506:1:0"
}
],
"extra": {},
"severity": "Low"
},
{
"description": {
"tail": [
"It is possible to trigger an exception (opcode 0xfe). Exceptions can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking."
],
"head": [
"A reachable exception has been detected."
]
},
"swcTitle": "Assert Violation",
"swcID": "110",
"extra": {},
"locations": [
{
"sourceMap": "531:1:0"
}
],
"severity": "Low"
}
],
"sourceList": [
"0x4a773a86bc6fb269f88bf09bb3094de29b6073cf13b1760e9d01d957f50a9dfd"
],
"sourceFormat": "evm-byzantium-bytecode",
"sourceType": "raw-bytecode"
}
{"issues": [{"description": {"head": "A reachable exception has been detected.", "tail": "It is possible to trigger an exception (opcode 0xfe). Exceptions can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking."}, "extra": {}, "locations": [{"sourceMap": "446:1:0"}], "severity": "Low", "swcID": "SWC-110", "swcTitle": "Assert Violation"}, {"description": {"head": "A reachable exception has been detected.", "tail": "It is possible to trigger an exception (opcode 0xfe). Exceptions can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking."}, "extra": {}, "locations": [{"sourceMap": "484:1:0"}], "severity": "Low", "swcID": "SWC-110", "swcTitle": "Assert Violation"}, {"description": {"head": "A reachable exception has been detected.", "tail": "It is possible to trigger an exception (opcode 0xfe). Exceptions can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking."}, "extra": {}, "locations": [{"sourceMap": "506:1:0"}], "severity": "Low", "swcID": "SWC-110", "swcTitle": "Assert Violation"}, {"description": {"head": "A reachable exception has been detected.", "tail": "It is possible to trigger an exception (opcode 0xfe). Exceptions can be caused by type errors, division by zero, out-of-bounds array access, or assert violations. Note that explicit `assert()` should only be used to check invariants. Use `require()` for regular input checking."}, "extra": {}, "locations": [{"sourceMap": "531:1:0"}], "severity": "Low", "swcID": "SWC-110", "swcTitle": "Assert Violation"}], "meta": {}, "sourceFormat": "evm-byzantium-bytecode", "sourceList": ["0x4a773a86bc6fb269f88bf09bb3094de29b6073cf13b1760e9d01d957f50a9dfd"], "sourceType": "raw-bytecode"}

@ -1,71 +1 @@
{
"issues": [
{
"contract": "Unknown",
"debug": "<DEBUG-DATA>",
"min_gas_used": 1113,
"description": "The return value of a message call is not checked.\nExternal calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states.",
"severity": "Low",
"SourceMap": null,
"swc-id": "104",
"max_gas_used": 35865,
"function": "_function_0x141f32ff",
"title": "Unchecked Call Return Value",
"address": 618
},
{
"description": "Use of callcode is deprecated.\nThe callcode method executes code of another contract in the context of the caller account. Due to a bug in the implementation it does not persist sender and value over the call. It was therefore deprecated and may be removed in the future. Use the delegatecall method instead.",
"severity": "Medium",
"SourceMap": null,
"min_gas_used": 389,
"debug": "<DEBUG-DATA>",
"contract": "Unknown",
"address": 618,
"swc-id": "111",
"title": "Use of callcode",
"function": "_function_0x141f32ff",
"max_gas_used": 1141
},
{
"address": 849,
"max_gas_used": 35922,
"title": "Unchecked Call Return Value",
"function": "_function_0x9b58bc26",
"swc-id": "104",
"SourceMap": null,
"description": "The return value of a message call is not checked.\nExternal calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states.",
"severity": "Low",
"contract": "Unknown",
"debug": "<DEBUG-DATA>",
"min_gas_used": 1170
},
{
"min_gas_used": 471,
"debug": "<DEBUG-DATA>",
"contract": "Unknown",
"SourceMap": null,
"description": "A call to a user-supplied address is executed.\nThe callee address of an external message call can be set by the caller. Note that the callee can contain arbitrary code and may re-enter any function in this contract. Review the business logic carefully to prevent averse effects on thecontract state.",
"severity": "Medium",
"function": "_function_0xeea4c864",
"title": "External Call To User-Supplied Address",
"max_gas_used": 1223,
"swc-id": "107",
"address": 1038
},
{
"swc-id": "104",
"title": "Unchecked Call Return Value",
"function": "_function_0xeea4c864",
"max_gas_used": 35947,
"address": 1038,
"debug": "<DEBUG-DATA>",
"min_gas_used": 1195,
"contract": "Unknown",
"severity": "Low",
"description": "The return value of a message call is not checked.\nExternal calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states.",
"SourceMap": null
}
],
"success": true,
"error": null
}
{"error": null, "issues": [{"address": 618, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The return value of a message call is not checked.\nExternal calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states.", "function": "_function_0x141f32ff", "max_gas_used": 35865, "min_gas_used": 1113, "severity": "Low", "sourceMap": null, "swc-id": "104", "title": "Unchecked Call Return Value"}, {"address": 618, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "Use of callcode is deprecated.\nThe callcode method executes code of another contract in the context of the caller account. Due to a bug in the implementation it does not persist sender and value over the call. It was therefore deprecated and may be removed in the future. Use the delegatecall method instead.", "function": "_function_0x141f32ff", "max_gas_used": 1141, "min_gas_used": 389, "severity": "Medium", "sourceMap": null, "swc-id": "111", "title": "Use of callcode"}, {"address": 849, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The return value of a message call is not checked.\nExternal calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states.", "function": "_function_0x9b58bc26", "max_gas_used": 35922, "min_gas_used": 1170, "severity": "Low", "sourceMap": null, "swc-id": "104", "title": "Unchecked Call Return Value"}, {"address": 1038, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "A call to a user-supplied address is executed.\nThe callee address of an external message call can be set by the caller. Note that the callee can contain arbitrary code and may re-enter any function in this contract. Review the business logic carefully to prevent averse effects on thecontract state.", "function": "_function_0xeea4c864", "max_gas_used": 1223, "min_gas_used": 471, "severity": "Medium", "sourceMap": null, "swc-id": "107", "title": "External Call To User-Supplied Address"}, {"address": 1038, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The return value of a message call is not checked.\nExternal calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states.", "function": "_function_0xeea4c864", "max_gas_used": 35947, "min_gas_used": 1195, "severity": "Low", "sourceMap": null, "swc-id": "104", "title": "Unchecked Call Return Value"}], "success": true}

@ -1,105 +1 @@
{
"issues": [
{
"swcTitle": "Use of Deprecated Solidity Functions",
"swcID": "111",
"extra": {},
"severity": "Medium",
"description": {
"tail": [
"The callcode method executes code of another contract in the context of the caller account. Due to a bug in the implementation it does not persist sender and value over the call. It was therefore deprecated and may be removed in the future. Use the delegatecall method instead."
],
"head": [
"Use of callcode is deprecated."
]
},
"locations": [
{
"sourceMap": "618:1:0"
}
]
},
{
"severity": "Medium",
"locations": [
{
"sourceMap": "1038:1:0"
}
],
"description": {
"head": [
"A call to a user-supplied address is executed."
],
"tail": [
"The callee address of an external message call can be set by the caller. Note that the callee can contain arbitrary code and may re-enter any function in this contract. Review the business logic carefully to prevent averse effects on thecontract state."
]
},
"extra": {},
"swcTitle": "Reentrancy",
"swcID": "107"
},
{
"swcTitle": "Unchecked Call Return Value",
"swcID": "104",
"extra": {},
"severity": "Low",
"description": {
"tail": [
"External calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states."
],
"head": [
"The return value of a message call is not checked."
]
},
"locations": [
{
"sourceMap": "618:1:0"
}
]
},
{
"extra": {},
"severity": "Low",
"locations": [
{
"sourceMap": "849:1:0"
}
],
"description": {
"head": [
"The return value of a message call is not checked."
],
"tail": [
"External calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states."
]
},
"swcTitle": "Unchecked Call Return Value",
"swcID": "104"
},
{
"swcID": "104",
"swcTitle": "Unchecked Call Return Value",
"locations": [
{
"sourceMap": "1038:1:0"
}
],
"description": {
"head": [
"The return value of a message call is not checked."
],
"tail": [
"External calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states."
]
},
"severity": "Low",
"extra": {}
}
],
"sourceList": [
"0x6daec61d05d8f1210661e7e7d1ed6d72bd6ade639398fac1e867aff50abfc1c1"
],
"sourceFormat": "evm-byzantium-bytecode",
"sourceType": "raw-bytecode",
"meta": {}
}
{"issues": [{"description": {"head": "Use of callcode is deprecated.", "tail": "The callcode method executes code of another contract in the context of the caller account. Due to a bug in the implementation it does not persist sender and value over the call. It was therefore deprecated and may be removed in the future. Use the delegatecall method instead."}, "extra": {}, "locations": [{"sourceMap": "618:1:0"}], "severity": "Medium", "swcID": "SWC-111", "swcTitle": "Use of Deprecated Solidity Functions"}, {"description": {"head": "A call to a user-supplied address is executed.", "tail": "The callee address of an external message call can be set by the caller. Note that the callee can contain arbitrary code and may re-enter any function in this contract. Review the business logic carefully to prevent averse effects on thecontract state."}, "extra": {}, "locations": [{"sourceMap": "1038:1:0"}], "severity": "Medium", "swcID": "SWC-107", "swcTitle": "Reentrancy"}, {"description": {"head": "The return value of a message call is not checked.", "tail": "External calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states."}, "extra": {}, "locations": [{"sourceMap": "618:1:0"}], "severity": "Low", "swcID": "SWC-104", "swcTitle": "Unchecked Call Return Value"}, {"description": {"head": "The return value of a message call is not checked.", "tail": "External calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states."}, "extra": {}, "locations": [{"sourceMap": "849:1:0"}], "severity": "Low", "swcID": "SWC-104", "swcTitle": "Unchecked Call Return Value"}, {"description": {"head": "The return value of a message call is not checked.", "tail": "External calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states."}, "extra": {}, "locations": [{"sourceMap": "1038:1:0"}], "severity": "Low", "swcID": "SWC-104", "swcTitle": "Unchecked Call Return Value"}], "meta": {}, "sourceFormat": "evm-byzantium-bytecode", "sourceList": ["0x6daec61d05d8f1210661e7e7d1ed6d72bd6ade639398fac1e867aff50abfc1c1"], "sourceType": "raw-bytecode"}

@ -1,5 +1 @@
{
"error": null,
"issues": [],
"success": true
}
{"error": null, "issues": [], "success": true}

@ -1,7 +1 @@
{
"issues": [],
"meta": {},
"sourceFormat": "evm-byzantium-bytecode",
"sourceList": [],
"sourceType": "raw-bytecode"
}
{"issues": [], "meta": {}, "sourceFormat": "evm-byzantium-bytecode", "sourceList": [], "sourceType": "raw-bytecode"}

@ -1,19 +1 @@
{
"success": true,
"issues": [
{
"min_gas_used": 186,
"contract": "Unknown",
"description": "Anyone can withdraw ETH from the contract account.\nArbitrary senders other than the contract creator can withdraw ETH from the contract account without previously having sent an equivalent amount of ETH to it. This is likely to be a vulnerability.",
"SourceMap": null,
"max_gas_used": 467,
"function": "transfer()",
"title": "Unprotected Ether Withdrawal",
"address": 142,
"debug": "<DEBUG-DATA>",
"severity": "High",
"swc-id": "105"
}
],
"error": null
}
{"error": null, "issues": [{"address": 142, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "Anyone can withdraw ETH from the contract account.\nArbitrary senders other than the contract creator can withdraw ETH from the contract account without previously having sent an equivalent amount of ETH to it. This is likely to be a vulnerability.", "function": "transfer()", "max_gas_used": 467, "min_gas_used": 186, "severity": "High", "sourceMap": null, "swc-id": "105", "title": "Unprotected Ether Withdrawal"}], "success": true}

@ -1,29 +1 @@
{
"sourceFormat": "evm-byzantium-bytecode",
"issues": [
{
"locations": [
{
"sourceMap": "142:1:0"
}
],
"swcID": "105",
"description": {
"tail": [
"Arbitrary senders other than the contract creator can withdraw ETH from the contract account without previously having sent an equivalent amount of ETH to it. This is likely to be a vulnerability."
],
"head": [
"Anyone can withdraw ETH from the contract account."
]
},
"extra": {},
"severity": "High",
"swcTitle": "Unprotected Ether Withdrawal"
}
],
"sourceList": [
"0xbc9c3d9db56d20cf4ca3b6fd88ff9215cf728a092cca1ed8edb83272b933ff5b"
],
"meta": {},
"sourceType": "raw-bytecode"
}
{"issues": [{"description": {"head": "Anyone can withdraw ETH from the contract account.", "tail": "Arbitrary senders other than the contract creator can withdraw ETH from the contract account without previously having sent an equivalent amount of ETH to it. This is likely to be a vulnerability."}, "extra": {}, "locations": [{"sourceMap": "142:1:0"}], "severity": "High", "swcID": "SWC-105", "swcTitle": "Unprotected Ether Withdrawal"}], "meta": {}, "sourceFormat": "evm-byzantium-bytecode", "sourceList": ["0xbc9c3d9db56d20cf4ca3b6fd88ff9215cf728a092cca1ed8edb83272b933ff5b"], "sourceType": "raw-bytecode"}

@ -1,5 +1 @@
{
"error": null,
"issues": [],
"success": true
}
{"error": null, "issues": [], "success": true}

@ -1,7 +1 @@
{
"issues": [],
"meta": {},
"sourceFormat": "evm-byzantium-bytecode",
"sourceList": [],
"sourceType": "raw-bytecode"
}
{"issues": [], "meta": {}, "sourceFormat": "evm-byzantium-bytecode", "sourceList": [], "sourceType": "raw-bytecode"}

@ -1,19 +1 @@
{
"error": null,
"issues": [
{
"SourceMap": null,
"address": 317,
"contract": "Unknown",
"debug": "<DEBUG-DATA>",
"description": "Use of tx.origin is deprecated.\nThe smart contract retrieves the transaction origin (tx.origin) using msg.origin. Use of msg.origin is deprecated and the instruction may be removed in the future. Use msg.sender instead.\nSee also: https://solidity.readthedocs.io/en/develop/security-considerations.html#tx-origin",
"function": "transferOwnership(address)",
"max_gas_used": 1051,
"min_gas_used": 626,
"severity": "Medium",
"swc-id": "111",
"title": "Use of tx.origin"
}
],
"success": true
}
{"error": null, "issues": [{"address": 317, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "Use of tx.origin is deprecated.\nThe smart contract retrieves the transaction origin (tx.origin) using msg.origin. Use of msg.origin is deprecated and the instruction may be removed in the future. Use msg.sender instead.\nSee also: https://solidity.readthedocs.io/en/develop/security-considerations.html#tx-origin", "function": "transferOwnership(address)", "max_gas_used": 1051, "min_gas_used": 626, "severity": "Medium", "sourceMap": null, "swc-id": "111", "title": "Use of tx.origin"}], "success": true}

@ -1,29 +1 @@
{
"issues": [
{
"description": {
"head": [
"Use of tx.origin is deprecated."
],
"tail": [
"The smart contract retrieves the transaction origin (tx.origin) using msg.origin. Use of msg.origin is deprecated and the instruction may be removed in the future. Use msg.sender instead.\nSee also: https://solidity.readthedocs.io/en/develop/security-considerations.html#tx-origin"
]
},
"extra": {},
"locations": [
{
"sourceMap": "317:1:0"
}
],
"severity": "Medium",
"swcID": "111",
"swcTitle": "Use of Deprecated Solidity Functions"
}
],
"meta": {},
"sourceFormat": "evm-byzantium-bytecode",
"sourceList": [
"0x25b20ef097dfc0aa56a932c4e09f06ee02a69c005767df86877f48c6c2412f03"
],
"sourceType": "raw-bytecode"
}
{"issues": [{"description": {"head": "Use of tx.origin is deprecated.", "tail": "The smart contract retrieves the transaction origin (tx.origin) using msg.origin. Use of msg.origin is deprecated and the instruction may be removed in the future. Use msg.sender instead.\nSee also: https://solidity.readthedocs.io/en/develop/security-considerations.html#tx-origin"}, "extra": {}, "locations": [{"sourceMap": "317:1:0"}], "severity": "Medium", "swcID": "SWC-111", "swcTitle": "Use of Deprecated Solidity Functions"}], "meta": {}, "sourceFormat": "evm-byzantium-bytecode", "sourceList": ["0x25b20ef097dfc0aa56a932c4e09f06ee02a69c005767df86877f48c6c2412f03"], "sourceType": "raw-bytecode"}

@ -1,45 +1 @@
{
"error": null,
"issues": [
{
"SourceMap": null,
"address": 196,
"contract": "Unknown",
"debug": "<DEBUG-DATA>",
"description": "The contract executes an external message call.\nAn external function call to a fixed contract address is executed. Make sure that the callee contract has been reviewed carefully.",
"function": "callchecked()",
"max_gas_used": 1210,
"min_gas_used": 599,
"severity": "Low",
"swc-id": "107",
"title": "External Call To Fixed Address"
},
{
"SourceMap": null,
"address": 285,
"contract": "Unknown",
"debug": "<DEBUG-DATA>",
"description": "The contract executes an external message call.\nAn external function call to a fixed contract address is executed. Make sure that the callee contract has been reviewed carefully.",
"function": "callnotchecked()",
"max_gas_used": 1232,
"min_gas_used": 621,
"severity": "Low",
"swc-id": "107",
"title": "External Call To Fixed Address"
},
{
"SourceMap": null,
"address": 285,
"contract": "Unknown",
"debug": "<DEBUG-DATA>",
"description": "The return value of a message call is not checked.\nExternal calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states.",
"function": "callnotchecked()",
"max_gas_used": 35950,
"min_gas_used": 1339,
"severity": "Low",
"swc-id": "104",
"title": "Unchecked Call Return Value"
}
],
"success": true
}
{"error": null, "issues": [{"address": 196, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The contract executes an external message call.\nAn external function call to a fixed contract address is executed. Make sure that the callee contract has been reviewed carefully.", "function": "callchecked()", "max_gas_used": 1210, "min_gas_used": 599, "severity": "Low", "sourceMap": null, "swc-id": "107", "title": "External Call To Fixed Address"}, {"address": 285, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The contract executes an external message call.\nAn external function call to a fixed contract address is executed. Make sure that the callee contract has been reviewed carefully.", "function": "callnotchecked()", "max_gas_used": 1232, "min_gas_used": 621, "severity": "Low", "sourceMap": null, "swc-id": "107", "title": "External Call To Fixed Address"}, {"address": 285, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The return value of a message call is not checked.\nExternal calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states.", "function": "callnotchecked()", "max_gas_used": 35950, "min_gas_used": 1339, "severity": "Low", "sourceMap": null, "swc-id": "104", "title": "Unchecked Call Return Value"}], "success": true}

@ -1,67 +1 @@
{
"issues": [
{
"description": {
"head": [
"The contract executes an external message call."
],
"tail": [
"An external function call to a fixed contract address is executed. Make sure that the callee contract has been reviewed carefully."
]
},
"extra": {},
"locations": [
{
"sourceMap": "196:1:0"
}
],
"severity": "Low",
"swcID": "107",
"swcTitle": "Reentrancy"
},
{
"description": {
"head": [
"The contract executes an external message call."
],
"tail": [
"An external function call to a fixed contract address is executed. Make sure that the callee contract has been reviewed carefully."
]
},
"extra": {},
"locations": [
{
"sourceMap": "285:1:0"
}
],
"severity": "Low",
"swcID": "107",
"swcTitle": "Reentrancy"
},
{
"description": {
"head": [
"The return value of a message call is not checked."
],
"tail": [
"External calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states."
]
},
"extra": {},
"locations": [
{
"sourceMap": "285:1:0"
}
],
"severity": "Low",
"swcID": "104",
"swcTitle": "Unchecked Call Return Value"
}
],
"meta": {},
"sourceFormat": "evm-byzantium-bytecode",
"sourceList": [
"0xb191cf6cc0d8cc37a91c9d88019cc011b932169fb5776df616e2bb9cd93b4039"
],
"sourceType": "raw-bytecode"
}
{"issues": [{"description": {"head": "The contract executes an external message call.", "tail": "An external function call to a fixed contract address is executed. Make sure that the callee contract has been reviewed carefully."}, "extra": {}, "locations": [{"sourceMap": "196:1:0"}], "severity": "Low", "swcID": "SWC-107", "swcTitle": "Reentrancy"}, {"description": {"head": "The contract executes an external message call.", "tail": "An external function call to a fixed contract address is executed. Make sure that the callee contract has been reviewed carefully."}, "extra": {}, "locations": [{"sourceMap": "285:1:0"}], "severity": "Low", "swcID": "SWC-107", "swcTitle": "Reentrancy"}, {"description": {"head": "The return value of a message call is not checked.", "tail": "External calls return a boolean value. If the callee contract halts with an exception, 'false' is returned and execution continues in the caller. It is usually recommended to wrap external calls into a require statement to prevent unexpected states."}, "extra": {}, "locations": [{"sourceMap": "285:1:0"}], "severity": "Low", "swcID": "SWC-104", "swcTitle": "Unchecked Call Return Value"}], "meta": {}, "sourceFormat": "evm-byzantium-bytecode", "sourceList": ["0xb191cf6cc0d8cc37a91c9d88019cc011b932169fb5776df616e2bb9cd93b4039"], "sourceType": "raw-bytecode"}

@ -1,19 +1 @@
{
"error": null,
"issues": [
{
"SourceMap": null,
"address": 146,
"contract": "Unknown",
"debug": "<DEBUG-DATA>",
"description": "The contract can be killed by anyone.\nArbitrary senders can kill this contract and withdraw its balance to their own account.",
"function": "kill(address)",
"max_gas_used": 263,
"min_gas_used": 168,
"severity": "High",
"swc-id": "106",
"title": "Unprotected Selfdestruct"
}
],
"success": true
}
{"error": null, "issues": [{"address": 146, "contract": "Unknown", "debug": "<DEBUG-DATA>", "description": "The contract can be killed by anyone.\nArbitrary senders can kill this contract and withdraw its balance to their own account.", "function": "kill(address)", "max_gas_used": 263, "min_gas_used": 168, "severity": "High", "sourceMap": null, "swc-id": "106", "title": "Unprotected Selfdestruct"}], "success": true}

@ -1,29 +1 @@
{
"issues": [
{
"description": {
"head": [
"The contract can be killed by anyone."
],
"tail": [
"Arbitrary senders can kill this contract and withdraw its balance to their own account."
]
},
"extra": {},
"locations": [
{
"sourceMap": "146:1:0"
}
],
"severity": "High",
"swcID": "106",
"swcTitle": "Unprotected SELFDESTRUCT Instruction"
}
],
"meta": {},
"sourceFormat": "evm-byzantium-bytecode",
"sourceList": [
"0x2fb801366b61a05b30550481a1c8f7d5f20de0b93d9f2f2ce2b28c4e322033c9"
],
"sourceType": "raw-bytecode"
}
{"issues": [{"description": {"head": "The contract can be killed by anyone.", "tail": "Arbitrary senders can kill this contract and withdraw its balance to their own account."}, "extra": {}, "locations": [{"sourceMap": "146:1:0"}], "severity": "High", "swcID": "SWC-106", "swcTitle": "Unprotected SELFDESTRUCT Instruction"}], "meta": {}, "sourceFormat": "evm-byzantium-bytecode", "sourceList": ["0x2fb801366b61a05b30550481a1c8f7d5f20de0b93d9f2f2ce2b28c4e322033c9"], "sourceType": "raw-bytecode"}
Loading…
Cancel
Save