[
[
{
"elements" : [
{
"type" : "function" ,
"name" : "bad3" ,
"source_mapping" : {
"start" : 1076 ,
"length" : 154 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"is_dependency" : false ,
"lines" : [
39 ,
40 ,
41
] ,
"starting_column" : 3 ,
"ending_column" : 4
} ,
"type_specific_fields" : {
"parent" : {
"type" : "contract" ,
"name" : "A" ,
"source_mapping" : {
"start" : 35 ,
"length" : 2982 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.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 ,
27 ,
28 ,
29 ,
30 ,
31 ,
32 ,
33 ,
34 ,
35 ,
36 ,
37 ,
38 ,
39 ,
40 ,
41 ,
42 ,
43 ,
44 ,
45 ,
46 ,
47 ,
48 ,
49 ,
50 ,
51 ,
52 ,
53 ,
54 ,
55 ,
56 ,
57 ,
58 ,
59 ,
60 ,
61 ,
62 ,
63 ,
64 ,
65 ,
66 ,
67 ,
68 ,
69 ,
70 ,
71 ,
72 ,
73 ,
74 ,
75 ,
76 ,
77 ,
78 ,
79 ,
80 ,
81 ,
82 ,
83 ,
84 ,
85 ,
86 ,
87 ,
88 ,
89 ,
90 ,
91 ,
92 ,
93 ,
94 ,
95 ,
96 ,
97 ,
98 ,
99
] ,
"starting_column" : 1 ,
"ending_column" : 2
}
} ,
"signature" : "bad3()"
}
} ,
{
"type" : "node" ,
"name" : "b = abi.encode(s)" ,
"source_mapping" : {
"start" : 1195 ,
"length" : 30 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"is_dependency" : false ,
"lines" : [
40
] ,
"starting_column" : 5 ,
"ending_column" : 35
} ,
"type_specific_fields" : {
"parent" : {
"type" : "function" ,
"name" : "bad3" ,
"source_mapping" : {
"start" : 1076 ,
"length" : 154 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"is_dependency" : false ,
"lines" : [
39 ,
40 ,
41
] ,
"starting_column" : 3 ,
"ending_column" : 4
} ,
"type_specific_fields" : {
"parent" : {
"type" : "contract" ,
"name" : "A" ,
"source_mapping" : {
"start" : 35 ,
"length" : 2982 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.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 ,
27 ,
28 ,
29 ,
30 ,
31 ,
32 ,
33 ,
34 ,
35 ,
36 ,
37 ,
38 ,
39 ,
40 ,
41 ,
42 ,
43 ,
44 ,
45 ,
46 ,
47 ,
48 ,
49 ,
50 ,
51 ,
52 ,
53 ,
54 ,
55 ,
56 ,
57 ,
58 ,
59 ,
60 ,
61 ,
62 ,
63 ,
64 ,
65 ,
66 ,
67 ,
68 ,
69 ,
70 ,
71 ,
72 ,
73 ,
74 ,
75 ,
76 ,
77 ,
78 ,
79 ,
80 ,
81 ,
82 ,
83 ,
84 ,
85 ,
86 ,
87 ,
88 ,
89 ,
90 ,
91 ,
92 ,
93 ,
94 ,
95 ,
96 ,
97 ,
98 ,
99
] ,
"starting_column" : 1 ,
"ending_column" : 2
}
} ,
"signature" : "bad3()"
}
}
}
}
] ,
"description" : "Function A.bad3() (tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#39-41) trigger an abi encoding bug:\n\t- b = abi.encode(s) (tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#40)\n" ,
"markdown" : "Function [A.bad3()](tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#L39-L41) trigger an abi encoding bug:\n\t- [b = abi.encode(s)](tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#L40)\n" ,
"first_markdown_element" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#L39-L41" ,
"id" : "0c50cf7f7b16d965ef04035beb09d25f3fa1fa4afeeb079ea42f2db879e8f1e9" ,
"check" : "abiencoderv2-array" ,
"impact" : "High" ,
"confidence" : "High"
} ,
{
"elements" : [
{
"type" : "function" ,
"name" : "bad0" ,
"source_mapping" : {
"start" : 540 ,
"length" : 61 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"is_dependency" : false ,
"lines" : [
21 ,
22 ,
23
] ,
"starting_column" : 3 ,
"ending_column" : 4
} ,
"type_specific_fields" : {
"parent" : {
"type" : "contract" ,
"name" : "A" ,
"source_mapping" : {
"start" : 35 ,
"length" : 2982 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.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 ,
27 ,
28 ,
29 ,
30 ,
31 ,
32 ,
33 ,
34 ,
35 ,
36 ,
37 ,
38 ,
39 ,
40 ,
41 ,
42 ,
43 ,
44 ,
45 ,
46 ,
47 ,
48 ,
49 ,
50 ,
51 ,
52 ,
53 ,
54 ,
55 ,
56 ,
57 ,
58 ,
59 ,
60 ,
61 ,
62 ,
63 ,
64 ,
65 ,
66 ,
67 ,
68 ,
69 ,
70 ,
71 ,
72 ,
73 ,
74 ,
75 ,
76 ,
77 ,
78 ,
79 ,
80 ,
81 ,
82 ,
83 ,
84 ,
85 ,
86 ,
87 ,
88 ,
89 ,
90 ,
91 ,
92 ,
93 ,
94 ,
95 ,
96 ,
97 ,
98 ,
99
] ,
"starting_column" : 1 ,
"ending_column" : 2
}
} ,
"signature" : "bad0()"
}
} ,
{
"type" : "node" ,
"name" : "this.bad0_external(bad_arr)" ,
"source_mapping" : {
"start" : 569 ,
"length" : 27 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"is_dependency" : false ,
"lines" : [
22
] ,
"starting_column" : 5 ,
"ending_column" : 32
} ,
"type_specific_fields" : {
"parent" : {
"type" : "function" ,
"name" : "bad0" ,
"source_mapping" : {
"start" : 540 ,
"length" : 61 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"is_dependency" : false ,
"lines" : [
21 ,
22 ,
23
] ,
"starting_column" : 3 ,
"ending_column" : 4
} ,
"type_specific_fields" : {
"parent" : {
"type" : "contract" ,
"name" : "A" ,
"source_mapping" : {
"start" : 35 ,
"length" : 2982 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.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 ,
27 ,
28 ,
29 ,
30 ,
31 ,
32 ,
33 ,
34 ,
35 ,
36 ,
37 ,
38 ,
39 ,
40 ,
41 ,
42 ,
43 ,
44 ,
45 ,
46 ,
47 ,
48 ,
49 ,
50 ,
51 ,
52 ,
53 ,
54 ,
55 ,
56 ,
57 ,
58 ,
59 ,
60 ,
61 ,
62 ,
63 ,
64 ,
65 ,
66 ,
67 ,
68 ,
69 ,
70 ,
71 ,
72 ,
73 ,
74 ,
75 ,
76 ,
77 ,
78 ,
79 ,
80 ,
81 ,
82 ,
83 ,
84 ,
85 ,
86 ,
87 ,
88 ,
89 ,
90 ,
91 ,
92 ,
93 ,
94 ,
95 ,
96 ,
97 ,
98 ,
99
] ,
"starting_column" : 1 ,
"ending_column" : 2
}
} ,
"signature" : "bad0()"
}
}
}
}
] ,
"description" : "Function A.bad0() (tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#21-23) trigger an abi encoding bug:\n\t- this.bad0_external(bad_arr) (tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#22)\n" ,
"markdown" : "Function [A.bad0()](tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#L21-L23) trigger an abi encoding bug:\n\t- [this.bad0_external(bad_arr)](tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#L22)\n" ,
"first_markdown_element" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#L21-L23" ,
"id" : "3752da45df0ba78cc9ac01a10b398e4ad74e6ddd572764cf2f361e523a43a998" ,
"check" : "abiencoderv2-array" ,
"impact" : "High" ,
"confidence" : "High"
} ,
{
"elements" : [
{
"type" : "function" ,
"name" : "bad1" ,
"source_mapping" : {
"start" : 726 ,
"length" : 63 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"is_dependency" : false ,
"lines" : [
29 ,
30 ,
31
] ,
"starting_column" : 3 ,
"ending_column" : 4
} ,
"type_specific_fields" : {
"parent" : {
"type" : "contract" ,
"name" : "A" ,
"source_mapping" : {
"start" : 35 ,
"length" : 2982 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.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 ,
27 ,
28 ,
29 ,
30 ,
31 ,
32 ,
33 ,
34 ,
35 ,
36 ,
37 ,
38 ,
39 ,
40 ,
41 ,
42 ,
43 ,
44 ,
45 ,
46 ,
47 ,
48 ,
49 ,
50 ,
51 ,
52 ,
53 ,
54 ,
55 ,
56 ,
57 ,
58 ,
59 ,
60 ,
61 ,
62 ,
63 ,
64 ,
65 ,
66 ,
67 ,
68 ,
69 ,
70 ,
71 ,
72 ,
73 ,
74 ,
75 ,
76 ,
77 ,
78 ,
79 ,
80 ,
81 ,
82 ,
83 ,
84 ,
85 ,
86 ,
87 ,
88 ,
89 ,
90 ,
91 ,
92 ,
93 ,
94 ,
95 ,
96 ,
97 ,
98 ,
99
] ,
"starting_column" : 1 ,
"ending_column" : 2
}
} ,
"signature" : "bad1(A.S[3])"
}
} ,
{
"type" : "node" ,
"name" : "this.bad1_external(s)" ,
"source_mapping" : {
"start" : 763 ,
"length" : 21 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"is_dependency" : false ,
"lines" : [
30
] ,
"starting_column" : 5 ,
"ending_column" : 26
} ,
"type_specific_fields" : {
"parent" : {
"type" : "function" ,
"name" : "bad1" ,
"source_mapping" : {
"start" : 726 ,
"length" : 63 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"is_dependency" : false ,
"lines" : [
29 ,
30 ,
31
] ,
"starting_column" : 3 ,
"ending_column" : 4
} ,
"type_specific_fields" : {
"parent" : {
"type" : "contract" ,
"name" : "A" ,
"source_mapping" : {
"start" : 35 ,
"length" : 2982 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.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 ,
27 ,
28 ,
29 ,
30 ,
31 ,
32 ,
33 ,
34 ,
35 ,
36 ,
37 ,
38 ,
39 ,
40 ,
41 ,
42 ,
43 ,
44 ,
45 ,
46 ,
47 ,
48 ,
49 ,
50 ,
51 ,
52 ,
53 ,
54 ,
55 ,
56 ,
57 ,
58 ,
59 ,
60 ,
61 ,
62 ,
63 ,
64 ,
65 ,
66 ,
67 ,
68 ,
69 ,
70 ,
71 ,
72 ,
73 ,
74 ,
75 ,
76 ,
77 ,
78 ,
79 ,
80 ,
81 ,
82 ,
83 ,
84 ,
85 ,
86 ,
87 ,
88 ,
89 ,
90 ,
91 ,
92 ,
93 ,
94 ,
95 ,
96 ,
97 ,
98 ,
99
] ,
"starting_column" : 1 ,
"ending_column" : 2
}
} ,
"signature" : "bad1(A.S[3])"
}
}
}
}
] ,
"description" : "Function A.bad1(A.S[3]) (tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#29-31) trigger an abi encoding bug:\n\t- this.bad1_external(s) (tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#30)\n" ,
"markdown" : "Function [A.bad1(A.S[3])](tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#L29-L31) trigger an abi encoding bug:\n\t- [this.bad1_external(s)](tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#L30)\n" ,
"first_markdown_element" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#L29-L31" ,
"id" : "3febdd98f71332c80290c9557c5ef89ea9dbea4f520a084b0307f21b00da5010" ,
"check" : "abiencoderv2-array" ,
"impact" : "High" ,
"confidence" : "High"
} ,
{
"elements" : [
{
"type" : "function" ,
"name" : "bad5" ,
"source_mapping" : {
"start" : 1511 ,
"length" : 142 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"is_dependency" : false ,
"lines" : [
49 ,
50 ,
51
] ,
"starting_column" : 3 ,
"ending_column" : 4
} ,
"type_specific_fields" : {
"parent" : {
"type" : "contract" ,
"name" : "A" ,
"source_mapping" : {
"start" : 35 ,
"length" : 2982 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.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 ,
27 ,
28 ,
29 ,
30 ,
31 ,
32 ,
33 ,
34 ,
35 ,
36 ,
37 ,
38 ,
39 ,
40 ,
41 ,
42 ,
43 ,
44 ,
45 ,
46 ,
47 ,
48 ,
49 ,
50 ,
51 ,
52 ,
53 ,
54 ,
55 ,
56 ,
57 ,
58 ,
59 ,
60 ,
61 ,
62 ,
63 ,
64 ,
65 ,
66 ,
67 ,
68 ,
69 ,
70 ,
71 ,
72 ,
73 ,
74 ,
75 ,
76 ,
77 ,
78 ,
79 ,
80 ,
81 ,
82 ,
83 ,
84 ,
85 ,
86 ,
87 ,
88 ,
89 ,
90 ,
91 ,
92 ,
93 ,
94 ,
95 ,
96 ,
97 ,
98 ,
99
] ,
"starting_column" : 1 ,
"ending_column" : 2
}
} ,
"signature" : "bad5()"
}
} ,
{
"type" : "node" ,
"name" : "event2_bad(s)" ,
"source_mapping" : {
"start" : 1630 ,
"length" : 18 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"is_dependency" : false ,
"lines" : [
50
] ,
"starting_column" : 5 ,
"ending_column" : 23
} ,
"type_specific_fields" : {
"parent" : {
"type" : "function" ,
"name" : "bad5" ,
"source_mapping" : {
"start" : 1511 ,
"length" : 142 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"is_dependency" : false ,
"lines" : [
49 ,
50 ,
51
] ,
"starting_column" : 3 ,
"ending_column" : 4
} ,
"type_specific_fields" : {
"parent" : {
"type" : "contract" ,
"name" : "A" ,
"source_mapping" : {
"start" : 35 ,
"length" : 2982 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.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 ,
27 ,
28 ,
29 ,
30 ,
31 ,
32 ,
33 ,
34 ,
35 ,
36 ,
37 ,
38 ,
39 ,
40 ,
41 ,
42 ,
43 ,
44 ,
45 ,
46 ,
47 ,
48 ,
49 ,
50 ,
51 ,
52 ,
53 ,
54 ,
55 ,
56 ,
57 ,
58 ,
59 ,
60 ,
61 ,
62 ,
63 ,
64 ,
65 ,
66 ,
67 ,
68 ,
69 ,
70 ,
71 ,
72 ,
73 ,
74 ,
75 ,
76 ,
77 ,
78 ,
79 ,
80 ,
81 ,
82 ,
83 ,
84 ,
85 ,
86 ,
87 ,
88 ,
89 ,
90 ,
91 ,
92 ,
93 ,
94 ,
95 ,
96 ,
97 ,
98 ,
99
] ,
"starting_column" : 1 ,
"ending_column" : 2
}
} ,
"signature" : "bad5()"
}
}
}
}
] ,
"description" : "Function A.bad5() (tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#49-51) trigger an abi encoding bug:\n\t- event2_bad(s) (tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#50)\n" ,
"markdown" : "Function [A.bad5()](tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#L49-L51) trigger an abi encoding bug:\n\t- [event2_bad(s)](tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#L50)\n" ,
"first_markdown_element" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#L49-L51" ,
"id" : "e77767c95f4548636027a859ca0c63402cfb50af242f116dd3cfc5b038a4128e" ,
"check" : "abiencoderv2-array" ,
"impact" : "High" ,
"confidence" : "High"
} ,
{
"elements" : [
{
"type" : "function" ,
"name" : "bad4" ,
"source_mapping" : {
"start" : 1296 ,
"length" : 148 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"is_dependency" : false ,
"lines" : [
44 ,
45 ,
46
] ,
"starting_column" : 3 ,
"ending_column" : 4
} ,
"type_specific_fields" : {
"parent" : {
"type" : "contract" ,
"name" : "A" ,
"source_mapping" : {
"start" : 35 ,
"length" : 2982 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.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 ,
27 ,
28 ,
29 ,
30 ,
31 ,
32 ,
33 ,
34 ,
35 ,
36 ,
37 ,
38 ,
39 ,
40 ,
41 ,
42 ,
43 ,
44 ,
45 ,
46 ,
47 ,
48 ,
49 ,
50 ,
51 ,
52 ,
53 ,
54 ,
55 ,
56 ,
57 ,
58 ,
59 ,
60 ,
61 ,
62 ,
63 ,
64 ,
65 ,
66 ,
67 ,
68 ,
69 ,
70 ,
71 ,
72 ,
73 ,
74 ,
75 ,
76 ,
77 ,
78 ,
79 ,
80 ,
81 ,
82 ,
83 ,
84 ,
85 ,
86 ,
87 ,
88 ,
89 ,
90 ,
91 ,
92 ,
93 ,
94 ,
95 ,
96 ,
97 ,
98 ,
99
] ,
"starting_column" : 1 ,
"ending_column" : 2
}
} ,
"signature" : "bad4()"
}
} ,
{
"type" : "node" ,
"name" : "event1_bad(bad_arr)" ,
"source_mapping" : {
"start" : 1415 ,
"length" : 24 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"is_dependency" : false ,
"lines" : [
45
] ,
"starting_column" : 5 ,
"ending_column" : 29
} ,
"type_specific_fields" : {
"parent" : {
"type" : "function" ,
"name" : "bad4" ,
"source_mapping" : {
"start" : 1296 ,
"length" : 148 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"is_dependency" : false ,
"lines" : [
44 ,
45 ,
46
] ,
"starting_column" : 3 ,
"ending_column" : 4
} ,
"type_specific_fields" : {
"parent" : {
"type" : "contract" ,
"name" : "A" ,
"source_mapping" : {
"start" : 35 ,
"length" : 2982 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.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 ,
27 ,
28 ,
29 ,
30 ,
31 ,
32 ,
33 ,
34 ,
35 ,
36 ,
37 ,
38 ,
39 ,
40 ,
41 ,
42 ,
43 ,
44 ,
45 ,
46 ,
47 ,
48 ,
49 ,
50 ,
51 ,
52 ,
53 ,
54 ,
55 ,
56 ,
57 ,
58 ,
59 ,
60 ,
61 ,
62 ,
63 ,
64 ,
65 ,
66 ,
67 ,
68 ,
69 ,
70 ,
71 ,
72 ,
73 ,
74 ,
75 ,
76 ,
77 ,
78 ,
79 ,
80 ,
81 ,
82 ,
83 ,
84 ,
85 ,
86 ,
87 ,
88 ,
89 ,
90 ,
91 ,
92 ,
93 ,
94 ,
95 ,
96 ,
97 ,
98 ,
99
] ,
"starting_column" : 1 ,
"ending_column" : 2
}
} ,
"signature" : "bad4()"
}
}
}
}
] ,
"description" : "Function A.bad4() (tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#44-46) trigger an abi encoding bug:\n\t- event1_bad(bad_arr) (tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#45)\n" ,
"markdown" : "Function [A.bad4()](tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#L44-L46) trigger an abi encoding bug:\n\t- [event1_bad(bad_arr)](tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#L45)\n" ,
"first_markdown_element" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#L44-L46" ,
"id" : "144c77aebb4037fe38c2864892ecb888a4fb7d5e92e321e664b2d2226658a166" ,
"check" : "abiencoderv2-array" ,
"impact" : "High" ,
"confidence" : "High"
} ,
{
"elements" : [
{
"type" : "function" ,
"name" : "bad2" ,
"source_mapping" : {
"start" : 852 ,
"length" : 160 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"is_dependency" : false ,
"lines" : [
34 ,
35 ,
36
] ,
"starting_column" : 3 ,
"ending_column" : 4
} ,
"type_specific_fields" : {
"parent" : {
"type" : "contract" ,
"name" : "A" ,
"source_mapping" : {
"start" : 35 ,
"length" : 2982 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.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 ,
27 ,
28 ,
29 ,
30 ,
31 ,
32 ,
33 ,
34 ,
35 ,
36 ,
37 ,
38 ,
39 ,
40 ,
41 ,
42 ,
43 ,
44 ,
45 ,
46 ,
47 ,
48 ,
49 ,
50 ,
51 ,
52 ,
53 ,
54 ,
55 ,
56 ,
57 ,
58 ,
59 ,
60 ,
61 ,
62 ,
63 ,
64 ,
65 ,
66 ,
67 ,
68 ,
69 ,
70 ,
71 ,
72 ,
73 ,
74 ,
75 ,
76 ,
77 ,
78 ,
79 ,
80 ,
81 ,
82 ,
83 ,
84 ,
85 ,
86 ,
87 ,
88 ,
89 ,
90 ,
91 ,
92 ,
93 ,
94 ,
95 ,
96 ,
97 ,
98 ,
99
] ,
"starting_column" : 1 ,
"ending_column" : 2
}
} ,
"signature" : "bad2()"
}
} ,
{
"type" : "node" ,
"name" : "b = abi.encode(bad_arr)" ,
"source_mapping" : {
"start" : 971 ,
"length" : 36 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"is_dependency" : false ,
"lines" : [
35
] ,
"starting_column" : 5 ,
"ending_column" : 41
} ,
"type_specific_fields" : {
"parent" : {
"type" : "function" ,
"name" : "bad2" ,
"source_mapping" : {
"start" : 852 ,
"length" : 160 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"is_dependency" : false ,
"lines" : [
34 ,
35 ,
36
] ,
"starting_column" : 3 ,
"ending_column" : 4
} ,
"type_specific_fields" : {
"parent" : {
"type" : "contract" ,
"name" : "A" ,
"source_mapping" : {
"start" : 35 ,
"length" : 2982 ,
"filename_used" : "/GENERIC_PATH" ,
"filename_relative" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol" ,
"filename_absolute" : "/GENERIC_PATH" ,
"filename_short" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.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 ,
27 ,
28 ,
29 ,
30 ,
31 ,
32 ,
33 ,
34 ,
35 ,
36 ,
37 ,
38 ,
39 ,
40 ,
41 ,
42 ,
43 ,
44 ,
45 ,
46 ,
47 ,
48 ,
49 ,
50 ,
51 ,
52 ,
53 ,
54 ,
55 ,
56 ,
57 ,
58 ,
59 ,
60 ,
61 ,
62 ,
63 ,
64 ,
65 ,
66 ,
67 ,
68 ,
69 ,
70 ,
71 ,
72 ,
73 ,
74 ,
75 ,
76 ,
77 ,
78 ,
79 ,
80 ,
81 ,
82 ,
83 ,
84 ,
85 ,
86 ,
87 ,
88 ,
89 ,
90 ,
91 ,
92 ,
93 ,
94 ,
95 ,
96 ,
97 ,
98 ,
99
] ,
"starting_column" : 1 ,
"ending_column" : 2
}
} ,
"signature" : "bad2()"
}
}
}
}
] ,
"description" : "Function A.bad2() (tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#34-36) trigger an abi encoding bug:\n\t- b = abi.encode(bad_arr) (tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#35)\n" ,
"markdown" : "Function [A.bad2()](tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#L34-L36) trigger an abi encoding bug:\n\t- [b = abi.encode(bad_arr)](tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#L35)\n" ,
"first_markdown_element" : "tests/detectors/abiencoderv2-array/0.4.25/storage_ABIEncoderV2_array.sol#L34-L36" ,
"id" : "d5860309d331920d1e3f44508fea706df75a4a7c2e93666ca96ca00ef32d7e01" ,
"check" : "abiencoderv2-array" ,
"impact" : "High" ,
"confidence" : "High"
}
]
]