019b3836-41cb-71a5-9159-93e6452be776
Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?
| ID | Type | Status | Attempts | Heartbeat |
|---|---|---|---|---|
| 5443 | artifact.fetch | complete | 1 / 3 | 3 months ago |
| 5444 | tool.cast_disasm | complete | 1 / 3 | 3 months ago |
| 48508 | analysis.bundle | complete | 1 / 3 | 2 weeks ago |
| 48509 | capability.graph | complete | 1 / 3 | 2 weeks ago |
| 48510 | detector.run | complete | 1 / 3 | 2 weeks ago |
| 48511 | validation.fork | complete | 1 / 3 | 2 weeks ago |
No slither job recorded yet.
No codex job recorded yet.
00000000: PUSH1 0x60 00000002: PUSH1 0x40 00000004: MSTORE 00000005: CALLDATASIZE 00000006: ISZERO 00000007: PUSH2 0x0061 0000000a: JUMPI 0000000b: PUSH1 0xe0 0000000d: PUSH1 0x02 0000000f: EXP 00000010: PUSH1 0x00 00000012: CALLDATALOAD 00000013: DIV 00000014: PUSH4 0x08551a53 00000019: DUP2 0000001a: EQ 0000001b: PUSH2 0x006c 0000001e: JUMPI 0000001f: DUP1 00000020: PUSH4 0x2cb856f3 00000025: EQ 00000026: PUSH2 0x007e 00000029: JUMPI 0000002a: DUP1 0000002b: PUSH4 0x3ccfd60b 00000030: EQ 00000031: PUSH2 0x0090 00000034: JUMPI 00000035: DUP1 00000036: PUSH4 0x41395efa 0000003b: EQ 0000003c: PUSH2 0x00af 0000003f: JUMPI 00000040: DUP1 00000041: PUSH4 0x4173b181 00000046: EQ 00000047: PUSH2 0x0129 0000004a: JUMPI 0000004b: DUP1 0000004c: PUSH4 0x8caaaae6 00000051: EQ 00000052: PUSH2 0x014b 00000055: JUMPI 00000056: DUP1 00000057: PUSH4 0xe29b9e97 0000005c: EQ 0000005d: PUSH2 0x015d 00000060: JUMPI 00000061: JUMPDEST 00000062: PUSH2 0x0166 00000065: PUSH2 0x0168 00000068: PUSH2 0x00b3 0000006b: JUMP 0000006c: JUMPDEST 0000006d: PUSH2 0x0213 00000070: PUSH1 0x00 00000072: SLOAD 00000073: PUSH1 0x01 00000075: PUSH1 0xa0 00000077: PUSH1 0x02 00000079: EXP 0000007a: SUB 0000007b: AND 0000007c: DUP2 0000007d: JUMP 0000007e: JUMPDEST 0000007f: PUSH2 0x0213 00000082: PUSH1 0x01 00000084: SLOAD 00000085: PUSH1 0x01 00000087: PUSH1 0xa0 00000089: PUSH1 0x02 0000008b: EXP 0000008c: SUB 0000008d: AND 0000008e: DUP2 0000008f: JUMP 00000090: JUMPDEST 00000091: PUSH2 0x0230 00000094: PUSH1 0x00 00000096: DUP1 00000097: SLOAD 00000098: CALLER 00000099: PUSH1 0x01 0000009b: PUSH1 0xa0 0000009d: PUSH1 0x02 0000009f: EXP 000000a0: SUB 000000a1: SWAP1 000000a2: DUP2 000000a3: AND 000000a4: SWAP2 000000a5: AND 000000a6: EQ 000000a7: PUSH2 0x0252 000000aa: JUMPI 000000ab: PUSH2 0x0002 000000ae: JUMP 000000af: JUMPDEST 000000b0: PUSH2 0x0230 000000b3: JUMPDEST 000000b4: PUSH1 0x40 000000b6: DUP1 000000b7: MLOAD 000000b8: PUSH1 0x01 000000ba: SLOAD 000000bb: PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000 000000dc: DUP3 000000dd: MSTORE 000000de: PUSH1 0x01 000000e0: PUSH1 0xa0 000000e2: PUSH1 0x02 000000e4: EXP 000000e5: SUB 000000e6: ADDRESS 000000e7: DUP2 000000e8: AND 000000e9: PUSH1 0x04 000000eb: DUP5 000000ec: ADD 000000ed: MSTORE 000000ee: SWAP3 000000ef: MLOAD 000000f0: PUSH1 0x00 000000f2: SWAP4 000000f3: SWAP2 000000f4: SWAP1 000000f5: SWAP2 000000f6: AND 000000f7: SWAP2 000000f8: PUSH4 0x70a08231 000000fd: SWAP2 000000fe: PUSH1 0x24 00000100: DUP3 00000101: DUP2 00000102: ADD 00000103: SWAP3 00000104: PUSH1 0x20 00000106: SWAP3 00000107: SWAP2 00000108: SWAP1 00000109: DUP3 0000010a: SWAP1 0000010b: SUB 0000010c: ADD 0000010d: DUP2 0000010e: DUP8 0000010f: DUP8 00000110: PUSH2 0x61da 00000113: GAS 00000114: SUB 00000115: CALL 00000116: ISZERO 00000117: PUSH2 0x0002 0000011a: JUMPI 0000011b: POP 0000011c: POP 0000011d: PUSH1 0x40 0000011f: MLOAD 00000120: MLOAD 00000121: SWAP2 00000122: POP 00000123: PUSH2 0x024f 00000126: SWAP1 00000127: POP 00000128: JUMP 00000129: JUMPDEST 0000012a: PUSH2 0x0230 0000012d: PUSH1 0x04 0000012f: CALLDATALOAD 00000130: PUSH1 0x00 00000132: DUP1 00000133: SLOAD 00000134: CALLER 00000135: PUSH1 0x01 00000137: PUSH1 0xa0 00000139: PUSH1 0x02 0000013b: EXP 0000013c: SUB 0000013d: SWAP1 0000013e: DUP2 0000013f: AND 00000140: SWAP2 00000141: AND 00000142: EQ 00000143: PUSH2 0x0242 00000146: JUMPI 00000147: PUSH2 0x0002 0000014a: JUMP 0000014b: JUMPDEST 0000014c: PUSH2 0x0230 0000014f: JUMPDEST 00000150: PUSH1 0x02 00000152: SLOAD 00000153: PUSH1 0x00 00000155: SWAP1 00000156: PUSH2 0x024b 00000159: PUSH2 0x00b3 0000015c: JUMP 0000015d: JUMPDEST 0000015e: PUSH2 0x0230 00000161: PUSH1 0x02 00000163: SLOAD 00000164: DUP2 00000165: JUMP 00000166: JUMPDEST 00000167: STOP 00000168: JUMPDEST 00000169: PUSH1 0x00 0000016b: EQ 0000016c: ISZERO 0000016d: PUSH2 0x0175 00000170: JUMPI 00000171: PUSH2 0x0002 00000174: JUMP 00000175: JUMPDEST 00000176: PUSH2 0x017d 00000179: PUSH2 0x014f 0000017c: JUMP 0000017d: JUMPDEST 0000017e: CALLVALUE 0000017f: LT 00000180: ISZERO 00000181: PUSH2 0x0189 00000184: JUMPI 00000185: PUSH2 0x0002 00000188: JUMP 00000189: JUMPDEST 0000018a: PUSH1 0x01 0000018c: SLOAD 0000018d: PUSH1 0x01 0000018f: PUSH1 0xa0 00000191: PUSH1 0x02 00000193: EXP 00000194: SUB 00000195: AND 00000196: PUSH4 0xa9059cbb 0000019b: ADDRESS 0000019c: PUSH2 0x01a3 0000019f: PUSH2 0x00b3 000001a2: JUMP 000001a3: JUMPDEST 000001a4: PUSH1 0x40 000001a6: MLOAD 000001a7: DUP4 000001a8: PUSH1 0xe0 000001aa: PUSH1 0x02 000001ac: EXP 000001ad: MUL 000001ae: DUP2 000001af: MSTORE 000001b0: PUSH1 0x04 000001b2: ADD 000001b3: DUP1 000001b4: DUP4 000001b5: PUSH1 0x01 000001b7: PUSH1 0xa0 000001b9: PUSH1 0x02 000001bb: EXP 000001bc: SUB 000001bd: AND 000001be: DUP2 000001bf: MSTORE 000001c0: PUSH1 0x20 000001c2: ADD 000001c3: DUP3 000001c4: DUP2 000001c5: MSTORE 000001c6: PUSH1 0x20 000001c8: ADD 000001c9: SWAP3 000001ca: POP 000001cb: POP 000001cc: POP 000001cd: PUSH1 0x20 000001cf: PUSH1 0x40 000001d1: MLOAD 000001d2: DUP1 000001d3: DUP4 000001d4: SUB 000001d5: DUP2 000001d6: PUSH1 0x00 000001d8: DUP8 000001d9: PUSH2 0x61da 000001dc: GAS 000001dd: SUB 000001de: CALL 000001df: ISZERO 000001e0: PUSH2 0x0002 000001e3: JUMPI 000001e4: POP 000001e5: POP 000001e6: PUSH1 0x40 000001e8: MLOAD 000001e9: MLOAD 000001ea: ISZERO 000001eb: SWAP1 000001ec: POP 000001ed: PUSH2 0x0211 000001f0: JUMPI 000001f1: PUSH1 0x40 000001f3: MLOAD 000001f4: PUSH1 0x00 000001f6: DUP1 000001f7: SLOAD 000001f8: PUSH1 0x01 000001fa: PUSH1 0xa0 000001fc: PUSH1 0x02 000001fe: EXP 000001ff: SUB 00000200: AND 00000201: SWAP2 00000202: CALLVALUE 00000203: SWAP1 00000204: DUP3 00000205: DUP2 00000206: DUP2 00000207: DUP2 00000208: DUP6 00000209: DUP9 0000020a: DUP4 0000020b: CALL 0000020c: POP 0000020d: POP 0000020e: POP 0000020f: POP 00000210: POP 00000211: JUMPDEST 00000212: JUMP 00000213: JUMPDEST 00000214: PUSH1 0x40 00000216: DUP1 00000217: MLOAD 00000218: PUSH1 0x01 0000021a: PUSH1 0xa0 0000021c: PUSH1 0x02 0000021e: EXP 0000021f: SUB 00000220: SWAP3 00000221: SWAP1 00000222: SWAP3 00000223: AND 00000224: DUP3 00000225: MSTORE 00000226: MLOAD 00000227: SWAP1 00000228: DUP2 00000229: SWAP1 0000022a: SUB 0000022b: PUSH1 0x20 0000022d: ADD 0000022e: SWAP1 0000022f: RETURN 00000230: JUMPDEST 00000231: PUSH1 0x40 00000233: DUP1 00000234: MLOAD 00000235: SWAP2 00000236: DUP3 00000237: MSTORE 00000238: MLOAD 00000239: SWAP1 0000023a: DUP2 0000023b: SWAP1 0000023c: SUB 0000023d: PUSH1 0x20 0000023f: ADD 00000240: SWAP1 00000241: RETURN 00000242: JUMPDEST 00000243: POP 00000244: PUSH1 0x02 00000246: SSTORE 00000247: PUSH1 0x01 00000249: SWAP1 0000024a: JUMP 0000024b: JUMPDEST 0000024c: MUL 0000024d: SWAP1 0000024e: POP 0000024f: JUMPDEST 00000250: SWAP1 00000251: JUMP 00000252: JUMPDEST 00000253: PUSH1 0x01 00000255: SLOAD 00000256: PUSH1 0x00 00000258: SLOAD 00000259: PUSH1 0x01 0000025b: PUSH1 0xa0 0000025d: PUSH1 0x02 0000025f: EXP 00000260: SUB 00000261: SWAP2 00000262: DUP3 00000263: AND 00000264: SWAP2 00000265: PUSH4 0xa9059cbb 0000026a: SWAP2 0000026b: AND 0000026c: PUSH2 0x0273 0000026f: PUSH2 0x00b3 00000272: JUMP 00000273: JUMPDEST 00000274: PUSH1 0x40 00000276: MLOAD 00000277: DUP4 00000278: PUSH1 0xe0 0000027a: PUSH1 0x02 0000027c: EXP 0000027d: MUL 0000027e: DUP2 0000027f: MSTORE 00000280: PUSH1 0x04 00000282: ADD 00000283: DUP1 00000284: DUP4 00000285: PUSH1 0x01 00000287: PUSH1 0xa0 00000289: PUSH1 0x02 0000028b: EXP 0000028c: SUB 0000028d: AND 0000028e: DUP2 0000028f: MSTORE 00000290: PUSH1 0x20 00000292: ADD 00000293: DUP3 00000294: DUP2 00000295: MSTORE 00000296: PUSH1 0x20 00000298: ADD 00000299: SWAP3 0000029a: POP 0000029b: POP 0000029c: POP 0000029d: PUSH1 0x20 0000029f: PUSH1 0x40 000002a1: MLOAD 000002a2: DUP1 000002a3: DUP4 000002a4: SUB 000002a5: DUP2 000002a6: PUSH1 0x00 000002a8: DUP8 000002a9: PUSH2 0x61da 000002ac: GAS 000002ad: SUB 000002ae: CALL 000002af: ISZERO 000002b0: PUSH2 0x0002 000002b3: JUMPI 000002b4: POP 000002b5: POP 000002b6: PUSH1 0x40 000002b8: MLOAD 000002b9: MLOAD 000002ba: SWAP2 000002bb: POP 000002bc: PUSH2 0x024f 000002bf: SWAP1 000002c0: POP 000002c1: JUMP
Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. To mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment.
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | other | detector | Untrusted CALL target/value reachable | 60 | no | no |
viewtrace_id: 0x311c4d8b7e0b58a4822e1c487efbad7d6dc90de3b8abd9b41db187cac01e535b
call_targets:
0xce37cd78aa00803a59b4987f6cdd0ceab5125a2b
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x311c4d8b7e0b58a4822e1c487efbad7d6dc90de3b8abd9b41db187cac01e535b",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xce37cd78aa00803a59b4987f6cdd0ceab5125a2b"
],
"matched_probe": null,
"target_varies": false,
"classification": "constant_target"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x08551a53",
"selector": "0x08551a53",
"calldata_variants": [
"0x08551a53",
"0x08551a530000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x2cb856f3",
"selector": "0x2cb856f3",
"calldata_variants": [
"0x2cb856f3",
"0x2cb856f30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x3ccfd60b",
"selector": "0x3ccfd60b",
"calldata_variants": [
"0x3ccfd60b",
"0x3ccfd60b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x41395efa",
"selector": "0x41395efa",
"calldata_variants": [
"0x41395efa",
"0x41395efa0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4173b181",
"selector": "0x4173b181",
"calldata_variants": [
"0x4173b181",
"0x4173b1810000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8caaaae6",
"selector": "0x8caaaae6",
"calldata_variants": [
"0x8caaaae6",
"0x8caaaae60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe29b9e97",
"selector": "0xe29b9e97",
"calldata_variants": [
"0xe29b9e97",
"0xe29b9e970000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 277,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 478,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 523,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 4,
"guards_detected": [],
"untrusted_call_count": 4
}
|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_id: 0x311c4d8b7e0b58a4822e1c487efbad7d6dc90de3b8abd9b41db187cac01e535b
call_targets:
0xce37cd78aa00803a59b4987f6cdd0ceab5125a2b
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x311c4d8b7e0b58a4822e1c487efbad7d6dc90de3b8abd9b41db187cac01e535b",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xce37cd78aa00803a59b4987f6cdd0ceab5125a2b"
],
"matched_probe": null,
"target_varies": false,
"classification": "constant_target"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x08551a53",
"selector": "0x08551a53",
"calldata_variants": [
"0x08551a53",
"0x08551a530000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x2cb856f3",
"selector": "0x2cb856f3",
"calldata_variants": [
"0x2cb856f3",
"0x2cb856f30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x3ccfd60b",
"selector": "0x3ccfd60b",
"calldata_variants": [
"0x3ccfd60b",
"0x3ccfd60b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x41395efa",
"selector": "0x41395efa",
"calldata_variants": [
"0x41395efa",
"0x41395efa0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4173b181",
"selector": "0x4173b181",
"calldata_variants": [
"0x4173b181",
"0x4173b1810000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8caaaae6",
"selector": "0x8caaaae6",
"calldata_variants": [
"0x8caaaae6",
"0x8caaaae60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe29b9e97",
"selector": "0xe29b9e97",
"calldata_variants": [
"0xe29b9e97",
"0xe29b9e970000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 277,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 478,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 523,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 4,
"guards_detected": []
}
|