019b3836-2d60-70a2-8038-3fe17f6ebaa0
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 |
|---|---|---|---|---|
| 2087 | artifact.fetch | complete | 1 / 3 | 4 months ago |
| 2088 | tool.cast_disasm | complete | 1 / 3 | 4 months ago |
| 96470 | analysis.bundle | complete | 1 / 3 | 2 weeks ago |
| 96471 | capability.graph | complete | 1 / 3 | 2 weeks ago |
| 96472 | detector.run | complete | 1 / 3 | 2 weeks ago |
| 96473 | 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 0x0069 0000000a: JUMPI 0000000b: PUSH1 0x00 0000000d: CALLDATALOAD 0000000e: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 0000002c: SWAP1 0000002d: DIV 0000002e: DUP1 0000002f: PUSH4 0x232a3060 00000034: EQ 00000035: PUSH2 0x00e2 00000038: JUMPI 00000039: DUP1 0000003a: PUSH4 0x6209ec2d 0000003f: EQ 00000040: PUSH2 0x00fa 00000043: JUMPI 00000044: DUP1 00000045: PUSH4 0x9d735286 0000004a: EQ 0000004b: PUSH2 0x0133 0000004e: JUMPI 0000004f: DUP1 00000050: PUSH4 0xd59933d5 00000055: EQ 00000056: PUSH2 0x0142 00000059: JUMPI 0000005a: DUP1 0000005b: PUSH4 0xfa89401a 00000060: EQ 00000061: PUSH2 0x0151 00000064: JUMPI 00000065: PUSH2 0x0069 00000068: JUMP 00000069: JUMPDEST 0000006a: PUSH2 0x00e0 0000006d: JUMPDEST 0000006e: NUMBER 0000006f: PUSH32 0x5d6ac9b7defd8fbb29ef2ab0f08c3744192b3777466dd98d1fd7daed5064b6db 00000090: CALLER 00000091: CALLVALUE 00000092: TIMESTAMP 00000093: PUSH1 0x40 00000095: MLOAD 00000096: DUP1 00000097: DUP5 00000098: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000000ad: AND 000000ae: DUP2 000000af: MSTORE 000000b0: PUSH1 0x20 000000b2: ADD 000000b3: DUP4 000000b4: DUP2 000000b5: MSTORE 000000b6: PUSH1 0x20 000000b8: ADD 000000b9: DUP3 000000ba: DUP2 000000bb: MSTORE 000000bc: PUSH1 0x20 000000be: ADD 000000bf: SWAP4 000000c0: POP 000000c1: POP 000000c2: POP 000000c3: POP 000000c4: PUSH1 0x40 000000c6: MLOAD 000000c7: DUP1 000000c8: SWAP2 000000c9: SUB 000000ca: SWAP1 000000cb: LOG2 000000cc: TIMESTAMP 000000cd: PUSH1 0x02 000000cf: PUSH1 0x00 000000d1: POP 000000d2: DUP2 000000d3: SWAP1 000000d4: SSTORE 000000d5: POP 000000d6: PUSH2 0x00dd 000000d9: PUSH2 0x022e 000000dc: JUMP 000000dd: JUMPDEST 000000de: JUMPDEST 000000df: JUMP 000000e0: JUMPDEST 000000e1: STOP 000000e2: JUMPDEST 000000e3: PUSH2 0x00f8 000000e6: PUSH1 0x04 000000e8: DUP1 000000e9: DUP1 000000ea: CALLDATALOAD 000000eb: SWAP1 000000ec: PUSH1 0x20 000000ee: ADD 000000ef: SWAP1 000000f0: SWAP2 000000f1: SWAP1 000000f2: POP 000000f3: POP 000000f4: PUSH2 0x018f 000000f7: JUMP 000000f8: JUMPDEST 000000f9: STOP 000000fa: JUMPDEST 000000fb: PUSH2 0x0107 000000fe: PUSH1 0x04 00000100: DUP1 00000101: POP 00000102: POP 00000103: PUSH2 0x0169 00000106: JUMP 00000107: JUMPDEST 00000108: PUSH1 0x40 0000010a: MLOAD 0000010b: DUP1 0000010c: DUP3 0000010d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000122: AND 00000123: DUP2 00000124: MSTORE 00000125: PUSH1 0x20 00000127: ADD 00000128: SWAP2 00000129: POP 0000012a: POP 0000012b: PUSH1 0x40 0000012d: MLOAD 0000012e: DUP1 0000012f: SWAP2 00000130: SUB 00000131: SWAP1 00000132: RETURN 00000133: JUMPDEST 00000134: PUSH2 0x0140 00000137: PUSH1 0x04 00000139: DUP1 0000013a: POP 0000013b: POP 0000013c: PUSH2 0x022e 0000013f: JUMP 00000140: JUMPDEST 00000141: STOP 00000142: JUMPDEST 00000143: PUSH2 0x014f 00000146: PUSH1 0x04 00000148: DUP1 00000149: POP 0000014a: POP 0000014b: PUSH2 0x033e 0000014e: JUMP 0000014f: JUMPDEST 00000150: STOP 00000151: JUMPDEST 00000152: PUSH2 0x0167 00000155: PUSH1 0x04 00000157: DUP1 00000158: DUP1 00000159: CALLDATALOAD 0000015a: SWAP1 0000015b: PUSH1 0x20 0000015d: ADD 0000015e: SWAP1 0000015f: SWAP2 00000160: SWAP1 00000161: POP 00000162: POP 00000163: PUSH2 0x02b3 00000166: JUMP 00000167: JUMPDEST 00000168: STOP 00000169: JUMPDEST 0000016a: PUSH1 0x01 0000016c: PUSH1 0x00 0000016e: SWAP1 0000016f: SLOAD 00000170: SWAP1 00000171: PUSH2 0x0100 00000174: EXP 00000175: SWAP1 00000176: DIV 00000177: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000018c: AND 0000018d: DUP2 0000018e: JUMP 0000018f: JUMPDEST 00000190: PUSH1 0x00 00000192: PUSH1 0x00 00000194: SWAP1 00000195: SLOAD 00000196: SWAP1 00000197: PUSH2 0x0100 0000019a: EXP 0000019b: SWAP1 0000019c: DIV 0000019d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000001b2: AND 000001b3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000001c8: AND 000001c9: CALLER 000001ca: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000001df: AND 000001e0: EQ 000001e1: ISZERO 000001e2: PUSH2 0x022a 000001e5: JUMPI 000001e6: DUP1 000001e7: PUSH1 0x01 000001e9: PUSH1 0x00 000001eb: PUSH2 0x0100 000001ee: EXP 000001ef: DUP2 000001f0: SLOAD 000001f1: DUP2 000001f2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000207: MUL 00000208: NOT 00000209: AND 0000020a: SWAP1 0000020b: DUP4 0000020c: MUL 0000020d: OR 0000020e: SWAP1 0000020f: SSTORE 00000210: POP 00000211: PUSH1 0x01 00000213: PUSH1 0x05 00000215: PUSH1 0x00 00000217: PUSH2 0x0100 0000021a: EXP 0000021b: DUP2 0000021c: SLOAD 0000021d: DUP2 0000021e: PUSH1 0xff 00000220: MUL 00000221: NOT 00000222: AND 00000223: SWAP1 00000224: DUP4 00000225: MUL 00000226: OR 00000227: SWAP1 00000228: SSTORE 00000229: POP 0000022a: JUMPDEST 0000022b: JUMPDEST 0000022c: POP 0000022d: JUMP 0000022e: JUMPDEST 0000022f: PUSH1 0x05 00000231: PUSH1 0x00 00000233: SWAP1 00000234: SLOAD 00000235: SWAP1 00000236: PUSH2 0x0100 00000239: EXP 0000023a: SWAP1 0000023b: DIV 0000023c: PUSH1 0xff 0000023e: AND 0000023f: ISZERO 00000240: PUSH2 0x02b0 00000243: JUMPI 00000244: PUSH1 0x01 00000246: PUSH1 0x00 00000248: SWAP1 00000249: SLOAD 0000024a: SWAP1 0000024b: PUSH2 0x0100 0000024e: EXP 0000024f: SWAP1 00000250: DIV 00000251: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000266: AND 00000267: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000027c: AND 0000027d: PUSH1 0x00 0000027f: ADDRESS 00000280: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000295: AND 00000296: BALANCE 00000297: PUSH1 0x40 00000299: MLOAD 0000029a: DUP1 0000029b: SWAP1 0000029c: POP 0000029d: PUSH1 0x00 0000029f: PUSH1 0x40 000002a1: MLOAD 000002a2: DUP1 000002a3: DUP4 000002a4: SUB 000002a5: DUP2 000002a6: DUP6 000002a7: DUP9 000002a8: DUP9 000002a9: CALL 000002aa: SWAP4 000002ab: POP 000002ac: POP 000002ad: POP 000002ae: POP 000002af: POP 000002b0: JUMPDEST 000002b1: JUMPDEST 000002b2: JUMP 000002b3: JUMPDEST 000002b4: PUSH1 0x00 000002b6: PUSH1 0x00 000002b8: SWAP1 000002b9: SLOAD 000002ba: SWAP1 000002bb: PUSH2 0x0100 000002be: EXP 000002bf: SWAP1 000002c0: DIV 000002c1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000002d6: AND 000002d7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000002ec: AND 000002ed: CALLER 000002ee: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000303: AND 00000304: EQ 00000305: ISZERO 00000306: PUSH2 0x033a 00000309: JUMPI 0000030a: PUSH1 0x18 0000030c: PUSH2 0x0e10 0000030f: PUSH1 0x02 00000311: PUSH1 0x00 00000313: POP 00000314: SLOAD 00000315: TIMESTAMP 00000316: SUB 00000317: DIV 00000318: DIV 00000319: PUSH1 0x04 0000031b: PUSH1 0x00 0000031d: POP 0000031e: DUP2 0000031f: SWAP1 00000320: SSTORE 00000321: POP 00000322: DUP1 00000323: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000338: AND 00000339: SELFDESTRUCT 0000033a: JUMPDEST 0000033b: JUMPDEST 0000033c: POP 0000033d: JUMP 0000033e: JUMPDEST 0000033f: NUMBER 00000340: PUSH32 0x5d6ac9b7defd8fbb29ef2ab0f08c3744192b3777466dd98d1fd7daed5064b6db 00000361: CALLER 00000362: CALLVALUE 00000363: TIMESTAMP 00000364: PUSH1 0x40 00000366: MLOAD 00000367: DUP1 00000368: DUP5 00000369: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000037e: AND 0000037f: DUP2 00000380: MSTORE 00000381: PUSH1 0x20 00000383: ADD 00000384: DUP4 00000385: DUP2 00000386: MSTORE 00000387: PUSH1 0x20 00000389: ADD 0000038a: DUP3 0000038b: DUP2 0000038c: MSTORE 0000038d: PUSH1 0x20 0000038f: ADD 00000390: SWAP4 00000391: POP 00000392: POP 00000393: POP 00000394: POP 00000395: PUSH1 0x40 00000397: MLOAD 00000398: DUP1 00000399: SWAP2 0000039a: SUB 0000039b: SWAP1 0000039c: LOG2 0000039d: TIMESTAMP 0000039e: PUSH1 0x02 000003a0: PUSH1 0x00 000003a2: POP 000003a3: DUP2 000003a4: SWAP1 000003a5: SSTORE 000003a6: POP 000003a7: PUSH2 0x03ae 000003aa: PUSH2 0x022e 000003ad: JUMP 000003ae: JUMPDEST 000003af: JUMPDEST 000003b0: 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 |
|---|---|---|---|---|---|---|---|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0x59494f369a99952e10e8c4e27879545a5b657aa5fef58036e102eb2452ff6b91
call_targets:
0x3200c11a07b24ba5aac57f43b5f324ef28d38674
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x59494f369a99952e10e8c4e27879545a5b657aa5fef58036e102eb2452ff6b91",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x3200c11a07b24ba5aac57f43b5f324ef28d38674"
],
"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": "0x232a3060",
"selector": "0x232a3060",
"calldata_variants": [
"0x232a3060",
"0x232a30600000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x6209ec2d",
"selector": "0x6209ec2d",
"calldata_variants": [
"0x6209ec2d",
"0x6209ec2d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9d735286",
"selector": "0x9d735286",
"calldata_variants": [
"0x9d735286",
"0x9d7352860000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd59933d5",
"selector": "0xd59933d5",
"calldata_variants": [
"0xd59933d5",
"0xd59933d50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfa89401a",
"selector": "0xfa89401a",
"calldata_variants": [
"0xfa89401a",
"0xfa89401a0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 681,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 1,
"guards_detected": [
{
"pc": 457,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 749,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
],
"untrusted_call_count": 1
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0x59494f369a99952e10e8c4e27879545a5b657aa5fef58036e102eb2452ff6b91
call_targets:
0x3200c11a07b24ba5aac57f43b5f324ef28d38674
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x59494f369a99952e10e8c4e27879545a5b657aa5fef58036e102eb2452ff6b91",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x3200c11a07b24ba5aac57f43b5f324ef28d38674"
],
"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": "0x232a3060",
"selector": "0x232a3060",
"calldata_variants": [
"0x232a3060",
"0x232a30600000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x6209ec2d",
"selector": "0x6209ec2d",
"calldata_variants": [
"0x6209ec2d",
"0x6209ec2d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9d735286",
"selector": "0x9d735286",
"calldata_variants": [
"0x9d735286",
"0x9d7352860000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd59933d5",
"selector": "0xd59933d5",
"calldata_variants": [
"0xd59933d5",
"0xd59933d50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfa89401a",
"selector": "0xfa89401a",
"calldata_variants": [
"0xfa89401a",
"0xfa89401a0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 681,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 1,
"guards_detected": [
{
"pc": 457,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 749,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
]
}
|
| medium | other | detector | SELFDESTRUCT reachable | 45 | no | no |
viewtrace_id: 0xd841288c313259a205827fc8898c9345c63ee4867d64d3e37f8b2a40f2eddda2
validation_json{
"sink": "SELFDESTRUCT",
"errors": 0,
"status": "unknown",
"attempts": 10,
"trace_id": "0xd841288c313259a205827fc8898c9345c63ee4867d64d3e37f8b2a40f2eddda2",
"confirmed": false,
"trace_mode": "structLogs",
"call_targets": null,
"matched_probe": null,
"target_varies": null,
"classification": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x232a3060",
"selector": "0x232a3060",
"calldata_variants": [
"0x232a3060",
"0x232a30600000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x6209ec2d",
"selector": "0x6209ec2d",
"calldata_variants": [
"0x6209ec2d",
"0x6209ec2d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9d735286",
"selector": "0x9d735286",
"calldata_variants": [
"0x9d735286",
"0x9d7352860000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd59933d5",
"selector": "0xd59933d5",
"calldata_variants": [
"0xd59933d5",
"0xd59933d50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfa89401a",
"selector": "0xfa89401a",
"calldata_variants": [
"0xfa89401a",
"0xfa89401a0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 457,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 749,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
],
"selfdestruct_count": 1
}
|