|
|
|
[
|
|
|
|
[
|
|
|
|
{
|
|
|
|
"elements": [
|
|
|
|
{
|
|
|
|
"type": "function",
|
|
|
|
"name": "bug0",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 127,
|
|
|
|
"length": 66,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/tx-origin/0.5.16/tx_origin.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/tx-origin/0.5.16/tx_origin.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
9,
|
|
|
|
10,
|
|
|
|
11
|
|
|
|
],
|
|
|
|
"starting_column": 5,
|
|
|
|
"ending_column": 6
|
|
|
|
},
|
|
|
|
"type_specific_fields": {
|
|
|
|
"parent": {
|
|
|
|
"type": "contract",
|
|
|
|
"name": "TxOrigin",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 25,
|
|
|
|
"length": 442,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/tx-origin/0.5.16/tx_origin.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/tx-origin/0.5.16/tx_origin.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
3,
|
|
|
|
4,
|
|
|
|
5,
|
|
|
|
6,
|
|
|
|
7,
|
|
|
|
8,
|
|
|
|
9,
|
|
|
|
10,
|
|
|
|
11,
|
|
|
|
12,
|
|
|
|
13,
|
|
|
|
14,
|
|
|
|
15,
|
|
|
|
16,
|
|
|
|
17,
|
|
|
|
18,
|
|
|
|
19,
|
|
|
|
20,
|
|
|
|
21,
|
|
|
|
22,
|
|
|
|
23,
|
|
|
|
24,
|
|
|
|
25,
|
|
|
|
26
|
|
|
|
],
|
|
|
|
"starting_column": 1,
|
|
|
|
"ending_column": 2
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"signature": "bug0()"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "node",
|
|
|
|
"name": "require(bool)(tx.origin == owner)",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 159,
|
|
|
|
"length": 27,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/tx-origin/0.5.16/tx_origin.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/tx-origin/0.5.16/tx_origin.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
10
|
|
|
|
],
|
|
|
|
"starting_column": 9,
|
|
|
|
"ending_column": 36
|
|
|
|
},
|
|
|
|
"type_specific_fields": {
|
|
|
|
"parent": {
|
|
|
|
"type": "function",
|
|
|
|
"name": "bug0",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 127,
|
|
|
|
"length": 66,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/tx-origin/0.5.16/tx_origin.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/tx-origin/0.5.16/tx_origin.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
9,
|
|
|
|
10,
|
|
|
|
11
|
|
|
|
],
|
|
|
|
"starting_column": 5,
|
|
|
|
"ending_column": 6
|
|
|
|
},
|
|
|
|
"type_specific_fields": {
|
|
|
|
"parent": {
|
|
|
|
"type": "contract",
|
|
|
|
"name": "TxOrigin",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 25,
|
|
|
|
"length": 442,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/tx-origin/0.5.16/tx_origin.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/tx-origin/0.5.16/tx_origin.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
3,
|
|
|
|
4,
|
|
|
|
5,
|
|
|
|
6,
|
|
|
|
7,
|
|
|
|
8,
|
|
|
|
9,
|
|
|
|
10,
|
|
|
|
11,
|
|
|
|
12,
|
|
|
|
13,
|
|
|
|
14,
|
|
|
|
15,
|
|
|
|
16,
|
|
|
|
17,
|
|
|
|
18,
|
|
|
|
19,
|
|
|
|
20,
|
|
|
|
21,
|
|
|
|
22,
|
|
|
|
23,
|
|
|
|
24,
|
|
|
|
25,
|
|
|
|
26
|
|
|
|
],
|
|
|
|
"starting_column": 1,
|
|
|
|
"ending_column": 2
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"signature": "bug0()"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"description": "TxOrigin.bug0() (tests/detectors/tx-origin/0.5.16/tx_origin.sol#9-11) uses tx.origin for authorization: require(bool)(tx.origin == owner) (tests/detectors/tx-origin/0.5.16/tx_origin.sol#10)\n",
|
|
|
|
"markdown": "[TxOrigin.bug0()](tests/detectors/tx-origin/0.5.16/tx_origin.sol#L9-L11) uses tx.origin for authorization: [require(bool)(tx.origin == owner)](tests/detectors/tx-origin/0.5.16/tx_origin.sol#L10)\n",
|
|
|
|
"first_markdown_element": "tests/detectors/tx-origin/0.5.16/tx_origin.sol#L9-L11",
|
|
|
|
"id": "17b0e5d0ce8741c95b5fd54f143d62588a291db7741897da6704c30d9e3abccd",
|
|
|
|
"check": "tx-origin",
|
|
|
|
"impact": "Medium",
|
|
|
|
"confidence": "Medium"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"elements": [
|
|
|
|
{
|
|
|
|
"type": "function",
|
|
|
|
"name": "bug2",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 199,
|
|
|
|
"length": 95,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/tx-origin/0.5.16/tx_origin.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/tx-origin/0.5.16/tx_origin.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
13,
|
|
|
|
14,
|
|
|
|
15,
|
|
|
|
16,
|
|
|
|
17
|
|
|
|
],
|
|
|
|
"starting_column": 5,
|
|
|
|
"ending_column": 6
|
|
|
|
},
|
|
|
|
"type_specific_fields": {
|
|
|
|
"parent": {
|
|
|
|
"type": "contract",
|
|
|
|
"name": "TxOrigin",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 25,
|
|
|
|
"length": 442,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/tx-origin/0.5.16/tx_origin.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/tx-origin/0.5.16/tx_origin.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
3,
|
|
|
|
4,
|
|
|
|
5,
|
|
|
|
6,
|
|
|
|
7,
|
|
|
|
8,
|
|
|
|
9,
|
|
|
|
10,
|
|
|
|
11,
|
|
|
|
12,
|
|
|
|
13,
|
|
|
|
14,
|
|
|
|
15,
|
|
|
|
16,
|
|
|
|
17,
|
|
|
|
18,
|
|
|
|
19,
|
|
|
|
20,
|
|
|
|
21,
|
|
|
|
22,
|
|
|
|
23,
|
|
|
|
24,
|
|
|
|
25,
|
|
|
|
26
|
|
|
|
],
|
|
|
|
"starting_column": 1,
|
|
|
|
"ending_column": 2
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"signature": "bug2()"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "node",
|
|
|
|
"name": "tx.origin != owner",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 235,
|
|
|
|
"length": 18,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/tx-origin/0.5.16/tx_origin.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/tx-origin/0.5.16/tx_origin.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
14
|
|
|
|
],
|
|
|
|
"starting_column": 13,
|
|
|
|
"ending_column": 31
|
|
|
|
},
|
|
|
|
"type_specific_fields": {
|
|
|
|
"parent": {
|
|
|
|
"type": "function",
|
|
|
|
"name": "bug2",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 199,
|
|
|
|
"length": 95,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/tx-origin/0.5.16/tx_origin.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/tx-origin/0.5.16/tx_origin.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
13,
|
|
|
|
14,
|
|
|
|
15,
|
|
|
|
16,
|
|
|
|
17
|
|
|
|
],
|
|
|
|
"starting_column": 5,
|
|
|
|
"ending_column": 6
|
|
|
|
},
|
|
|
|
"type_specific_fields": {
|
|
|
|
"parent": {
|
|
|
|
"type": "contract",
|
|
|
|
"name": "TxOrigin",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 25,
|
|
|
|
"length": 442,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/tx-origin/0.5.16/tx_origin.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/tx-origin/0.5.16/tx_origin.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
3,
|
|
|
|
4,
|
|
|
|
5,
|
|
|
|
6,
|
|
|
|
7,
|
|
|
|
8,
|
|
|
|
9,
|
|
|
|
10,
|
|
|
|
11,
|
|
|
|
12,
|
|
|
|
13,
|
|
|
|
14,
|
|
|
|
15,
|
|
|
|
16,
|
|
|
|
17,
|
|
|
|
18,
|
|
|
|
19,
|
|
|
|
20,
|
|
|
|
21,
|
|
|
|
22,
|
|
|
|
23,
|
|
|
|
24,
|
|
|
|
25,
|
|
|
|
26
|
|
|
|
],
|
|
|
|
"starting_column": 1,
|
|
|
|
"ending_column": 2
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"signature": "bug2()"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"description": "TxOrigin.bug2() (tests/detectors/tx-origin/0.5.16/tx_origin.sol#13-17) uses tx.origin for authorization: tx.origin != owner (tests/detectors/tx-origin/0.5.16/tx_origin.sol#14)\n",
|
|
|
|
"markdown": "[TxOrigin.bug2()](tests/detectors/tx-origin/0.5.16/tx_origin.sol#L13-L17) uses tx.origin for authorization: [tx.origin != owner](tests/detectors/tx-origin/0.5.16/tx_origin.sol#L14)\n",
|
|
|
|
"first_markdown_element": "tests/detectors/tx-origin/0.5.16/tx_origin.sol#L13-L17",
|
|
|
|
"id": "f3508f86e8e1e9edd815558ff94afc9428e8c0e2363a447efb86ceeefbc70ee3",
|
|
|
|
"check": "tx-origin",
|
|
|
|
"impact": "Medium",
|
|
|
|
"confidence": "Medium"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
]
|