|
|
|
[
|
|
|
|
[
|
|
|
|
{
|
|
|
|
"elements": [
|
|
|
|
{
|
|
|
|
"type": "function",
|
|
|
|
"name": "bad0",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 47,
|
|
|
|
"length": 70,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
4,
|
|
|
|
5,
|
|
|
|
6
|
|
|
|
],
|
|
|
|
"starting_column": 5,
|
|
|
|
"ending_column": 6
|
|
|
|
},
|
|
|
|
"type_specific_fields": {
|
|
|
|
"parent": {
|
|
|
|
"type": "contract",
|
|
|
|
"name": "Timestamp",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 0,
|
|
|
|
"length": 402,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
1,
|
|
|
|
2,
|
|
|
|
3,
|
|
|
|
4,
|
|
|
|
5,
|
|
|
|
6,
|
|
|
|
7,
|
|
|
|
8,
|
|
|
|
9,
|
|
|
|
10,
|
|
|
|
11,
|
|
|
|
12,
|
|
|
|
13,
|
|
|
|
14,
|
|
|
|
15,
|
|
|
|
16,
|
|
|
|
17,
|
|
|
|
18,
|
|
|
|
19,
|
|
|
|
20
|
|
|
|
],
|
|
|
|
"starting_column": 1,
|
|
|
|
"ending_column": 2
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"signature": "bad0()"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "node",
|
|
|
|
"name": "require(bool)(block.timestamp == 0)",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 81,
|
|
|
|
"length": 29,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
5
|
|
|
|
],
|
|
|
|
"starting_column": 9,
|
|
|
|
"ending_column": 38
|
|
|
|
},
|
|
|
|
"type_specific_fields": {
|
|
|
|
"parent": {
|
|
|
|
"type": "function",
|
|
|
|
"name": "bad0",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 47,
|
|
|
|
"length": 70,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
4,
|
|
|
|
5,
|
|
|
|
6
|
|
|
|
],
|
|
|
|
"starting_column": 5,
|
|
|
|
"ending_column": 6
|
|
|
|
},
|
|
|
|
"type_specific_fields": {
|
|
|
|
"parent": {
|
|
|
|
"type": "contract",
|
|
|
|
"name": "Timestamp",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 0,
|
|
|
|
"length": 402,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
1,
|
|
|
|
2,
|
|
|
|
3,
|
|
|
|
4,
|
|
|
|
5,
|
|
|
|
6,
|
|
|
|
7,
|
|
|
|
8,
|
|
|
|
9,
|
|
|
|
10,
|
|
|
|
11,
|
|
|
|
12,
|
|
|
|
13,
|
|
|
|
14,
|
|
|
|
15,
|
|
|
|
16,
|
|
|
|
17,
|
|
|
|
18,
|
|
|
|
19,
|
|
|
|
20
|
|
|
|
],
|
|
|
|
"starting_column": 1,
|
|
|
|
"ending_column": 2
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"signature": "bad0()"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"description": "Timestamp.bad0() (tests/detectors/timestamp/0.5.16/timestamp.sol#4-6) uses timestamp for comparisons\n\tDangerous comparisons:\n\t- require(bool)(block.timestamp == 0) (tests/detectors/timestamp/0.5.16/timestamp.sol#5)\n",
|
|
|
|
"markdown": "[Timestamp.bad0()](tests/detectors/timestamp/0.5.16/timestamp.sol#L4-L6) uses timestamp for comparisons\n\tDangerous comparisons:\n\t- [require(bool)(block.timestamp == 0)](tests/detectors/timestamp/0.5.16/timestamp.sol#L5)\n",
|
|
|
|
"first_markdown_element": "tests/detectors/timestamp/0.5.16/timestamp.sol#L4-L6",
|
|
|
|
"id": "ae9cf69893e0e1a3487dc6ce8a8ae0f5ea9628607d77d32b3dfcb0202617d6e3",
|
|
|
|
"check": "timestamp",
|
|
|
|
"impact": "Low",
|
|
|
|
"confidence": "Medium"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"elements": [
|
|
|
|
{
|
|
|
|
"type": "function",
|
|
|
|
"name": "bad1",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 126,
|
|
|
|
"length": 96,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
8,
|
|
|
|
9,
|
|
|
|
10,
|
|
|
|
11
|
|
|
|
],
|
|
|
|
"starting_column": 5,
|
|
|
|
"ending_column": 6
|
|
|
|
},
|
|
|
|
"type_specific_fields": {
|
|
|
|
"parent": {
|
|
|
|
"type": "contract",
|
|
|
|
"name": "Timestamp",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 0,
|
|
|
|
"length": 402,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
1,
|
|
|
|
2,
|
|
|
|
3,
|
|
|
|
4,
|
|
|
|
5,
|
|
|
|
6,
|
|
|
|
7,
|
|
|
|
8,
|
|
|
|
9,
|
|
|
|
10,
|
|
|
|
11,
|
|
|
|
12,
|
|
|
|
13,
|
|
|
|
14,
|
|
|
|
15,
|
|
|
|
16,
|
|
|
|
17,
|
|
|
|
18,
|
|
|
|
19,
|
|
|
|
20
|
|
|
|
],
|
|
|
|
"starting_column": 1,
|
|
|
|
"ending_column": 2
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"signature": "bad1()"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "node",
|
|
|
|
"name": "require(bool)(time == 0)",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 197,
|
|
|
|
"length": 18,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
10
|
|
|
|
],
|
|
|
|
"starting_column": 9,
|
|
|
|
"ending_column": 27
|
|
|
|
},
|
|
|
|
"type_specific_fields": {
|
|
|
|
"parent": {
|
|
|
|
"type": "function",
|
|
|
|
"name": "bad1",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 126,
|
|
|
|
"length": 96,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
8,
|
|
|
|
9,
|
|
|
|
10,
|
|
|
|
11
|
|
|
|
],
|
|
|
|
"starting_column": 5,
|
|
|
|
"ending_column": 6
|
|
|
|
},
|
|
|
|
"type_specific_fields": {
|
|
|
|
"parent": {
|
|
|
|
"type": "contract",
|
|
|
|
"name": "Timestamp",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 0,
|
|
|
|
"length": 402,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
1,
|
|
|
|
2,
|
|
|
|
3,
|
|
|
|
4,
|
|
|
|
5,
|
|
|
|
6,
|
|
|
|
7,
|
|
|
|
8,
|
|
|
|
9,
|
|
|
|
10,
|
|
|
|
11,
|
|
|
|
12,
|
|
|
|
13,
|
|
|
|
14,
|
|
|
|
15,
|
|
|
|
16,
|
|
|
|
17,
|
|
|
|
18,
|
|
|
|
19,
|
|
|
|
20
|
|
|
|
],
|
|
|
|
"starting_column": 1,
|
|
|
|
"ending_column": 2
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"signature": "bad1()"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"description": "Timestamp.bad1() (tests/detectors/timestamp/0.5.16/timestamp.sol#8-11) uses timestamp for comparisons\n\tDangerous comparisons:\n\t- require(bool)(time == 0) (tests/detectors/timestamp/0.5.16/timestamp.sol#10)\n",
|
|
|
|
"markdown": "[Timestamp.bad1()](tests/detectors/timestamp/0.5.16/timestamp.sol#L8-L11) uses timestamp for comparisons\n\tDangerous comparisons:\n\t- [require(bool)(time == 0)](tests/detectors/timestamp/0.5.16/timestamp.sol#L10)\n",
|
|
|
|
"first_markdown_element": "tests/detectors/timestamp/0.5.16/timestamp.sol#L8-L11",
|
|
|
|
"id": "95b42362b948094ddfa2507b20840e67789d4c5d92e8e3ddac30f5b6577dc1cb",
|
|
|
|
"check": "timestamp",
|
|
|
|
"impact": "Low",
|
|
|
|
"confidence": "Medium"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"elements": [
|
|
|
|
{
|
|
|
|
"type": "function",
|
|
|
|
"name": "bad2",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 231,
|
|
|
|
"length": 79,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
13,
|
|
|
|
14,
|
|
|
|
15
|
|
|
|
],
|
|
|
|
"starting_column": 5,
|
|
|
|
"ending_column": 6
|
|
|
|
},
|
|
|
|
"type_specific_fields": {
|
|
|
|
"parent": {
|
|
|
|
"type": "contract",
|
|
|
|
"name": "Timestamp",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 0,
|
|
|
|
"length": 402,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
1,
|
|
|
|
2,
|
|
|
|
3,
|
|
|
|
4,
|
|
|
|
5,
|
|
|
|
6,
|
|
|
|
7,
|
|
|
|
8,
|
|
|
|
9,
|
|
|
|
10,
|
|
|
|
11,
|
|
|
|
12,
|
|
|
|
13,
|
|
|
|
14,
|
|
|
|
15,
|
|
|
|
16,
|
|
|
|
17,
|
|
|
|
18,
|
|
|
|
19,
|
|
|
|
20
|
|
|
|
],
|
|
|
|
"starting_column": 1,
|
|
|
|
"ending_column": 2
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"signature": "bad2()"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "node",
|
|
|
|
"name": "block.timestamp > 0",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 279,
|
|
|
|
"length": 24,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
14
|
|
|
|
],
|
|
|
|
"starting_column": 9,
|
|
|
|
"ending_column": 33
|
|
|
|
},
|
|
|
|
"type_specific_fields": {
|
|
|
|
"parent": {
|
|
|
|
"type": "function",
|
|
|
|
"name": "bad2",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 231,
|
|
|
|
"length": 79,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
13,
|
|
|
|
14,
|
|
|
|
15
|
|
|
|
],
|
|
|
|
"starting_column": 5,
|
|
|
|
"ending_column": 6
|
|
|
|
},
|
|
|
|
"type_specific_fields": {
|
|
|
|
"parent": {
|
|
|
|
"type": "contract",
|
|
|
|
"name": "Timestamp",
|
|
|
|
"source_mapping": {
|
|
|
|
"start": 0,
|
|
|
|
"length": 402,
|
|
|
|
"filename_used": "/GENERIC_PATH",
|
|
|
|
"filename_relative": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"filename_absolute": "/GENERIC_PATH",
|
|
|
|
"filename_short": "tests/detectors/timestamp/0.5.16/timestamp.sol",
|
|
|
|
"is_dependency": false,
|
|
|
|
"lines": [
|
|
|
|
1,
|
|
|
|
2,
|
|
|
|
3,
|
|
|
|
4,
|
|
|
|
5,
|
|
|
|
6,
|
|
|
|
7,
|
|
|
|
8,
|
|
|
|
9,
|
|
|
|
10,
|
|
|
|
11,
|
|
|
|
12,
|
|
|
|
13,
|
|
|
|
14,
|
|
|
|
15,
|
|
|
|
16,
|
|
|
|
17,
|
|
|
|
18,
|
|
|
|
19,
|
|
|
|
20
|
|
|
|
],
|
|
|
|
"starting_column": 1,
|
|
|
|
"ending_column": 2
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"signature": "bad2()"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"description": "Timestamp.bad2() (tests/detectors/timestamp/0.5.16/timestamp.sol#13-15) uses timestamp for comparisons\n\tDangerous comparisons:\n\t- block.timestamp > 0 (tests/detectors/timestamp/0.5.16/timestamp.sol#14)\n",
|
|
|
|
"markdown": "[Timestamp.bad2()](tests/detectors/timestamp/0.5.16/timestamp.sol#L13-L15) uses timestamp for comparisons\n\tDangerous comparisons:\n\t- [block.timestamp > 0](tests/detectors/timestamp/0.5.16/timestamp.sol#L14)\n",
|
|
|
|
"first_markdown_element": "tests/detectors/timestamp/0.5.16/timestamp.sol#L13-L15",
|
|
|
|
"id": "d4fe55a5e15b7b87f60c4156128807b333a4a630b25b18eb3a495b3613f764db",
|
|
|
|
"check": "timestamp",
|
|
|
|
"impact": "Low",
|
|
|
|
"confidence": "Medium"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
]
|