Skip to content

Commit e60082b

Browse files
committed
Added test for AccessControlIncompleteness
1 parent 626ca14 commit e60082b

9 files changed

+5243
-11
lines changed

evm-testcases/taint/testAccessControlIncompletenessAbstractDomain/example01/report.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@
33
"files" : [ "report.json", "untyped_program.evm-testcases_taint_testAccessControlIncompletenessAbstractDomain_example01_example01.sol().json" ],
44
"info" : {
55
"cfgs" : "1",
6-
"duration" : "106ms",
7-
"end" : "2025-12-13T10:07:57.261+01:00",
6+
"duration" : "110ms",
7+
"end" : "2025-12-13T12:49:29.414+01:00",
88
"expressions" : "6",
99
"files" : "1",
1010
"globals" : "0",
1111
"members" : "1",
1212
"programs" : "1",
13-
"start" : "2025-12-13T10:07:57.155+01:00",
13+
"start" : "2025-12-13T12:49:29.304+01:00",
1414
"statements" : "11",
1515
"units" : "0",
1616
"version" : "0.1",
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{"name":"untyped program::evm-testcases/taint/testAccessControlIncompletenessAbstractDomain/example01/example01.sol()","description":null,"nodes":[{"id":0,"subNodes":[1],"text":"PUSH1 0x00"},{"id":1,"text":"0x00"},{"id":2,"text":"CALLDATALOAD"},{"id":3,"subNodes":[4],"text":"PUSH1 0x00"},{"id":4,"text":"0x00"},{"id":5,"text":"MSTORE"},{"id":6,"subNodes":[7],"text":"PUSH1 0x20"},{"id":7,"text":"0x20"},{"id":8,"text":"CALLDATALOAD"},{"id":9,"subNodes":[10],"text":"PUSH1 0x20"},{"id":10,"text":"0x20"},{"id":11,"text":"MSTORE"},{"id":12,"subNodes":[13],"text":"PUSH1 0x40"},{"id":13,"text":"0x40"},{"id":14,"subNodes":[15],"text":"PUSH1 0x00"},{"id":15,"text":"0x00"},{"id":16,"text":"RETURN"}],"edges":[{"sourceId":0,"destId":2,"kind":"SequentialEdge"},{"sourceId":2,"destId":3,"kind":"SequentialEdge"},{"sourceId":3,"destId":5,"kind":"SequentialEdge"},{"sourceId":5,"destId":6,"kind":"SequentialEdge"},{"sourceId":6,"destId":8,"kind":"SequentialEdge"},{"sourceId":8,"destId":9,"kind":"SequentialEdge"},{"sourceId":9,"destId":11,"kind":"SequentialEdge"},{"sourceId":11,"destId":12,"kind":"SequentialEdge"},{"sourceId":12,"destId":14,"kind":"SequentialEdge"},{"sourceId":14,"destId":16,"kind":"SequentialEdge"}],"descriptions":[{"nodeId":0,"description":{"expressions":["push \"0x00\""],"state":{"heap":"monolith","type":"#TOP#","value":"[_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, C]"}}},{"nodeId":1,"description":{"expressions":["\"0x00\""],"state":"#TOP#"}},{"nodeId":2,"description":{"expressions":["calldataload 1"],"state":{"heap":"monolith","type":"#TOP#","value":"[_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, T[2]]"}}},{"nodeId":3,"description":{"expressions":["push \"0x00\""],"state":{"heap":"monolith","type":"#TOP#","value":"[_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, T[2], C]"}}},{"nodeId":4,"description":{"expressions":["\"0x00\""],"state":{"heap":"monolith","type":"#TOP#","value":"[_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, T[2]]"}}},{"nodeId":5,"description":{"expressions":["mstore 1"],"state":{"heap":"monolith","type":"#TOP#","value":"[_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_]"}}},{"nodeId":6,"description":{"expressions":["push \"0x20\""],"state":{"heap":"monolith","type":"#TOP#","value":"[_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, C]"}}},{"nodeId":7,"description":{"expressions":["\"0x20\""],"state":{"heap":"monolith","type":"#TOP#","value":"[_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_]"}}},{"nodeId":8,"description":{"expressions":["calldataload 1"],"state":{"heap":"monolith","type":"#TOP#","value":"[_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, T[8]]"}}},{"nodeId":9,"description":{"expressions":["push \"0x20\""],"state":{"heap":"monolith","type":"#TOP#","value":"[_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, T[8], C]"}}},{"nodeId":10,"description":{"expressions":["\"0x20\""],"state":{"heap":"monolith","type":"#TOP#","value":"[_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, T[8]]"}}},{"nodeId":11,"description":{"expressions":["mstore 1"],"state":{"heap":"monolith","type":"#TOP#","value":"[_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_]"}}},{"nodeId":12,"description":{"expressions":["push \"0x40\""],"state":{"heap":"monolith","type":"#TOP#","value":"[_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, C]"}}},{"nodeId":13,"description":{"expressions":["\"0x40\""],"state":{"heap":"monolith","type":"#TOP#","value":"[_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_]"}}},{"nodeId":14,"description":{"expressions":["push \"0x00\""],"state":{"heap":"monolith","type":"#TOP#","value":"[_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, C, C]"}}},{"nodeId":15,"description":{"expressions":["\"0x00\""],"state":{"heap":"monolith","type":"#TOP#","value":"[_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, C]"}}},{"nodeId":16,"description":{"expressions":["return 1"],"state":{"heap":"monolith","type":"#TOP#","value":"[_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_]"}}}]}
1+
{"name":"untyped program::evm-testcases/taint/testAccessControlIncompletenessAbstractDomain/example01/example01.sol()","description":null,"nodes":[{"id":0,"subNodes":[1],"text":"PUSH1 0x00"},{"id":1,"text":"0x00"},{"id":2,"text":"CALLDATALOAD"},{"id":3,"subNodes":[4],"text":"PUSH1 0x00"},{"id":4,"text":"0x00"},{"id":5,"text":"MSTORE"},{"id":6,"subNodes":[7],"text":"PUSH1 0x20"},{"id":7,"text":"0x20"},{"id":8,"text":"CALLDATALOAD"},{"id":9,"subNodes":[10],"text":"PUSH1 0x20"},{"id":10,"text":"0x20"},{"id":11,"text":"MSTORE"},{"id":12,"subNodes":[13],"text":"PUSH1 0x40"},{"id":13,"text":"0x40"},{"id":14,"subNodes":[15],"text":"PUSH1 0x00"},{"id":15,"text":"0x00"},{"id":16,"text":"RETURN"}],"edges":[{"sourceId":0,"destId":2,"kind":"SequentialEdge"},{"sourceId":2,"destId":3,"kind":"SequentialEdge"},{"sourceId":3,"destId":5,"kind":"SequentialEdge"},{"sourceId":5,"destId":6,"kind":"SequentialEdge"},{"sourceId":6,"destId":8,"kind":"SequentialEdge"},{"sourceId":8,"destId":9,"kind":"SequentialEdge"},{"sourceId":9,"destId":11,"kind":"SequentialEdge"},{"sourceId":11,"destId":12,"kind":"SequentialEdge"},{"sourceId":12,"destId":14,"kind":"SequentialEdge"},{"sourceId":14,"destId":16,"kind":"SequentialEdge"}],"descriptions":[{"nodeId":0,"description":{"expressions":["push \"0x00\""],"state":{"heap":"monolith","type":"#TOP#","value":"stack: [_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, C], memory: C }"}}},{"nodeId":1,"description":{"expressions":["\"0x00\""],"state":"#TOP#"}},{"nodeId":2,"description":{"expressions":["calldataload 1"],"state":{"heap":"monolith","type":"#TOP#","value":"stack: [_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, T[2]], memory: C }"}}},{"nodeId":3,"description":{"expressions":["push \"0x00\""],"state":{"heap":"monolith","type":"#TOP#","value":"stack: [_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, T[2], C], memory: C }"}}},{"nodeId":4,"description":{"expressions":["\"0x00\""],"state":{"heap":"monolith","type":"#TOP#","value":"stack: [_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, T[2]], memory: C }"}}},{"nodeId":5,"description":{"expressions":["mstore 1"],"state":{"heap":"monolith","type":"#TOP#","value":"stack: [_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_], memory: T[2] }"}}},{"nodeId":6,"description":{"expressions":["push \"0x20\""],"state":{"heap":"monolith","type":"#TOP#","value":"stack: [_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, C], memory: T[2] }"}}},{"nodeId":7,"description":{"expressions":["\"0x20\""],"state":{"heap":"monolith","type":"#TOP#","value":"stack: [_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_], memory: T[2] }"}}},{"nodeId":8,"description":{"expressions":["calldataload 1"],"state":{"heap":"monolith","type":"#TOP#","value":"stack: [_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, T[8]], memory: T[2] }"}}},{"nodeId":9,"description":{"expressions":["push \"0x20\""],"state":{"heap":"monolith","type":"#TOP#","value":"stack: [_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, T[8], C], memory: T[2] }"}}},{"nodeId":10,"description":{"expressions":["\"0x20\""],"state":{"heap":"monolith","type":"#TOP#","value":"stack: [_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, T[8]], memory: T[2] }"}}},{"nodeId":11,"description":{"expressions":["mstore 1"],"state":{"heap":"monolith","type":"#TOP#","value":"stack: [_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_], memory: T[2, 8] }"}}},{"nodeId":12,"description":{"expressions":["push \"0x40\""],"state":{"heap":"monolith","type":"#TOP#","value":"stack: [_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, C], memory: T[2, 8] }"}}},{"nodeId":13,"description":{"expressions":["\"0x40\""],"state":{"heap":"monolith","type":"#TOP#","value":"stack: [_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_], memory: T[2, 8] }"}}},{"nodeId":14,"description":{"expressions":["push \"0x00\""],"state":{"heap":"monolith","type":"#TOP#","value":"stack: [_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, C, C], memory: T[2, 8] }"}}},{"nodeId":15,"description":{"expressions":["\"0x00\""],"state":{"heap":"monolith","type":"#TOP#","value":"stack: [_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, C], memory: T[2, 8] }"}}},{"nodeId":16,"description":{"expressions":["return 1"],"state":{"heap":"monolith","type":"#TOP#","value":"stack: [_|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_, _|_], memory: T[2, 8] }"}}}]}

evm-testcases/taint/testAccessControlIncompletenessAbstractDomain/example02/report.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@
33
"files" : [ "report.json", "untyped_program.evm-testcases_taint_testAccessControlIncompletenessAbstractDomain_example02_example02.sol().json" ],
44
"info" : {
55
"cfgs" : "1",
6-
"duration" : "8ms",
7-
"end" : "2025-12-13T10:07:57.288+01:00",
6+
"duration" : "6ms",
7+
"end" : "2025-12-13T12:49:29.482+01:00",
88
"expressions" : "5",
99
"files" : "1",
1010
"globals" : "0",
1111
"members" : "1",
1212
"programs" : "1",
13-
"start" : "2025-12-13T10:07:57.280+01:00",
13+
"start" : "2025-12-13T12:49:29.476+01:00",
1414
"statements" : "10",
1515
"units" : "0",
1616
"version" : "0.1",

0 commit comments

Comments
 (0)