019b3836-2ef8-7095-b724-5be73bef1154
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 |
|---|---|---|---|---|
| 2361 | artifact.fetch | complete | 1 / 3 | 4 months ago |
| 2362 | tool.cast_disasm | complete | 1 / 3 | 4 months ago |
| 97090 | analysis.bundle | complete | 1 / 3 | 2 weeks ago |
| 97091 | capability.graph | complete | 1 / 3 | 2 weeks ago |
| 97092 | detector.run | complete | 1 / 3 | 2 weeks ago |
| 97093 | 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 0x00d8 00000038: JUMPI 00000039: DUP1 0000003a: PUSH4 0x69f384c4 0000003f: EQ 00000040: PUSH2 0x00f0 00000043: JUMPI 00000044: DUP1 00000045: PUSH4 0x9d735286 0000004a: EQ 0000004b: PUSH2 0x0132 0000004e: JUMPI 0000004f: DUP1 00000050: PUSH4 0xa6f9dae1 00000055: EQ 00000056: PUSH2 0x0141 00000059: JUMPI 0000005a: DUP1 0000005b: PUSH4 0xfa89401a 00000060: EQ 00000061: PUSH2 0x0159 00000064: JUMPI 00000065: PUSH2 0x0069 00000068: JUMP 00000069: JUMPDEST 0000006a: PUSH2 0x00d6 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: PUSH2 0x00d3 000000cf: PUSH2 0x033b 000000d2: JUMP 000000d3: JUMPDEST 000000d4: JUMPDEST 000000d5: JUMP 000000d6: JUMPDEST 000000d7: STOP 000000d8: JUMPDEST 000000d9: PUSH2 0x00ee 000000dc: PUSH1 0x04 000000de: DUP1 000000df: DUP1 000000e0: CALLDATALOAD 000000e1: SWAP1 000000e2: PUSH1 0x20 000000e4: ADD 000000e5: SWAP1 000000e6: SWAP2 000000e7: SWAP1 000000e8: POP 000000e9: POP 000000ea: PUSH2 0x0171 000000ed: JUMP 000000ee: JUMPDEST 000000ef: STOP 000000f0: JUMPDEST 000000f1: PUSH2 0x0106 000000f4: PUSH1 0x04 000000f6: DUP1 000000f7: DUP1 000000f8: CALLDATALOAD 000000f9: SWAP1 000000fa: PUSH1 0x20 000000fc: ADD 000000fd: SWAP1 000000fe: SWAP2 000000ff: SWAP1 00000100: POP 00000101: POP 00000102: PUSH2 0x0200 00000105: JUMP 00000106: JUMPDEST 00000107: PUSH1 0x40 00000109: MLOAD 0000010a: DUP1 0000010b: DUP3 0000010c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000121: AND 00000122: DUP2 00000123: MSTORE 00000124: PUSH1 0x20 00000126: ADD 00000127: SWAP2 00000128: POP 00000129: POP 0000012a: PUSH1 0x40 0000012c: MLOAD 0000012d: DUP1 0000012e: SWAP2 0000012f: SUB 00000130: SWAP1 00000131: RETURN 00000132: JUMPDEST 00000133: PUSH2 0x013f 00000136: PUSH1 0x04 00000138: DUP1 00000139: POP 0000013a: POP 0000013b: PUSH2 0x033b 0000013e: JUMP 0000013f: JUMPDEST 00000140: STOP 00000141: JUMPDEST 00000142: PUSH2 0x0157 00000145: PUSH1 0x04 00000147: DUP1 00000148: DUP1 00000149: CALLDATALOAD 0000014a: SWAP1 0000014b: PUSH1 0x20 0000014d: ADD 0000014e: SWAP1 0000014f: SWAP2 00000150: SWAP1 00000151: POP 00000152: POP 00000153: PUSH2 0x02ac 00000156: JUMP 00000157: JUMPDEST 00000158: STOP 00000159: JUMPDEST 0000015a: PUSH2 0x016f 0000015d: PUSH1 0x04 0000015f: DUP1 00000160: DUP1 00000161: CALLDATALOAD 00000162: SWAP1 00000163: PUSH1 0x20 00000165: ADD 00000166: SWAP1 00000167: SWAP2 00000168: SWAP1 00000169: POP 0000016a: POP 0000016b: PUSH2 0x03aa 0000016e: JUMP 0000016f: JUMPDEST 00000170: STOP 00000171: JUMPDEST 00000172: PUSH1 0x00 00000174: PUSH1 0x00 00000176: SWAP1 00000177: SLOAD 00000178: SWAP1 00000179: PUSH2 0x0100 0000017c: EXP 0000017d: SWAP1 0000017e: DIV 0000017f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000194: AND 00000195: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000001aa: AND 000001ab: CALLER 000001ac: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000001c1: AND 000001c2: EQ 000001c3: ISZERO 000001c4: PUSH2 0x01f7 000001c7: JUMPI 000001c8: DUP1 000001c9: PUSH1 0x01 000001cb: PUSH1 0x00 000001cd: PUSH2 0x0100 000001d0: EXP 000001d1: DUP2 000001d2: SLOAD 000001d3: DUP2 000001d4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000001e9: MUL 000001ea: NOT 000001eb: AND 000001ec: SWAP1 000001ed: DUP4 000001ee: MUL 000001ef: OR 000001f0: SWAP1 000001f1: SSTORE 000001f2: POP 000001f3: PUSH2 0x01fc 000001f6: JUMP 000001f7: JUMPDEST 000001f8: PUSH2 0x0002 000001fb: JUMP 000001fc: JUMPDEST 000001fd: JUMPDEST 000001fe: POP 000001ff: JUMP 00000200: JUMPDEST 00000201: PUSH1 0x00 00000203: PUSH1 0x00 00000205: PUSH1 0x00 00000207: SWAP1 00000208: SLOAD 00000209: SWAP1 0000020a: PUSH2 0x0100 0000020d: EXP 0000020e: SWAP1 0000020f: DIV 00000210: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000225: AND 00000226: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000023b: AND 0000023c: CALLER 0000023d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000252: AND 00000253: EQ 00000254: ISZERO 00000255: PUSH2 0x02a1 00000258: JUMPI 00000259: PUSH1 0x02 0000025b: PUSH1 0x00 0000025d: POP 0000025e: PUSH1 0x00 00000260: PUSH1 0x00 00000262: DUP2 00000263: MSTORE 00000264: PUSH1 0x20 00000266: ADD 00000267: SWAP1 00000268: DUP2 00000269: MSTORE 0000026a: PUSH1 0x20 0000026c: ADD 0000026d: PUSH1 0x00 0000026f: KECCAK256 00000270: PUSH1 0x00 00000272: POP 00000273: PUSH1 0x00 00000275: ADD 00000276: PUSH1 0x00 00000278: SWAP1 00000279: SLOAD 0000027a: SWAP1 0000027b: PUSH2 0x0100 0000027e: EXP 0000027f: SWAP1 00000280: DIV 00000281: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000296: AND 00000297: SWAP1 00000298: POP 00000299: PUSH2 0x02a7 0000029c: JUMP 0000029d: PUSH2 0x02a6 000002a0: JUMP 000002a1: JUMPDEST 000002a2: PUSH2 0x0002 000002a5: JUMP 000002a6: JUMPDEST 000002a7: JUMPDEST 000002a8: SWAP2 000002a9: SWAP1 000002aa: POP 000002ab: JUMP 000002ac: JUMPDEST 000002ad: PUSH1 0x00 000002af: PUSH1 0x00 000002b1: SWAP1 000002b2: SLOAD 000002b3: SWAP1 000002b4: PUSH2 0x0100 000002b7: EXP 000002b8: SWAP1 000002b9: DIV 000002ba: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000002cf: AND 000002d0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000002e5: AND 000002e6: CALLER 000002e7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000002fc: AND 000002fd: EQ 000002fe: ISZERO 000002ff: PUSH2 0x0332 00000302: JUMPI 00000303: DUP1 00000304: PUSH1 0x00 00000306: PUSH1 0x00 00000308: PUSH2 0x0100 0000030b: EXP 0000030c: DUP2 0000030d: SLOAD 0000030e: DUP2 0000030f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000324: MUL 00000325: NOT 00000326: AND 00000327: SWAP1 00000328: DUP4 00000329: MUL 0000032a: OR 0000032b: SWAP1 0000032c: SSTORE 0000032d: POP 0000032e: PUSH2 0x0337 00000331: JUMP 00000332: JUMPDEST 00000333: PUSH2 0x0002 00000336: JUMP 00000337: JUMPDEST 00000338: JUMPDEST 00000339: POP 0000033a: JUMP 0000033b: JUMPDEST 0000033c: PUSH1 0x01 0000033e: PUSH1 0x00 00000340: SWAP1 00000341: SLOAD 00000342: SWAP1 00000343: PUSH2 0x0100 00000346: EXP 00000347: SWAP1 00000348: DIV 00000349: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000035e: AND 0000035f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000374: AND 00000375: PUSH1 0x00 00000377: ADDRESS 00000378: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000038d: AND 0000038e: BALANCE 0000038f: PUSH1 0x40 00000391: MLOAD 00000392: DUP1 00000393: SWAP1 00000394: POP 00000395: PUSH1 0x00 00000397: PUSH1 0x40 00000399: MLOAD 0000039a: DUP1 0000039b: DUP4 0000039c: SUB 0000039d: DUP2 0000039e: DUP6 0000039f: DUP9 000003a0: DUP9 000003a1: CALL 000003a2: SWAP4 000003a3: POP 000003a4: POP 000003a5: POP 000003a6: POP 000003a7: POP 000003a8: JUMPDEST 000003a9: JUMP 000003aa: JUMPDEST 000003ab: PUSH1 0x00 000003ad: PUSH1 0x00 000003af: SWAP1 000003b0: SLOAD 000003b1: SWAP1 000003b2: PUSH2 0x0100 000003b5: EXP 000003b6: SWAP1 000003b7: DIV 000003b8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000003cd: AND 000003ce: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000003e3: AND 000003e4: CALLER 000003e5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000003fa: AND 000003fb: EQ 000003fc: ISZERO 000003fd: PUSH2 0x0472 00000400: JUMPI 00000401: PUSH32 0xb854f581145dc1eb640e9c943dd96947618be343eb869017cae7a0d959b41689 00000422: ADDRESS 00000423: TIMESTAMP 00000424: PUSH1 0x40 00000426: MLOAD 00000427: DUP1 00000428: DUP4 00000429: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000043e: AND 0000043f: DUP2 00000440: MSTORE 00000441: PUSH1 0x20 00000443: ADD 00000444: DUP3 00000445: DUP2 00000446: MSTORE 00000447: PUSH1 0x20 00000449: ADD 0000044a: SWAP3 0000044b: POP 0000044c: POP 0000044d: POP 0000044e: PUSH1 0x40 00000450: MLOAD 00000451: DUP1 00000452: SWAP2 00000453: SUB 00000454: SWAP1 00000455: LOG1 00000456: DUP1 00000457: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000046c: AND 0000046d: SELFDESTRUCT 0000046e: PUSH2 0x0477 00000471: JUMP 00000472: JUMPDEST 00000473: PUSH2 0x0002 00000476: JUMP 00000477: JUMPDEST 00000478: JUMPDEST 00000479: POP 0000047a: 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: 0x539b842f1ee46ed985f11354ed615b3fdfb1ba64f4fb0ec25a213de6c23cc37a
call_targets:
0x22ea823ddb595da01895308815470080218538d4
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x539b842f1ee46ed985f11354ed615b3fdfb1ba64f4fb0ec25a213de6c23cc37a",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x22ea823ddb595da01895308815470080218538d4"
],
"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": "0x69f384c4",
"selector": "0x69f384c4",
"calldata_variants": [
"0x69f384c4",
"0x69f384c40000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9d735286",
"selector": "0x9d735286",
"calldata_variants": [
"0x9d735286",
"0x9d7352860000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa6f9dae1",
"selector": "0xa6f9dae1",
"calldata_variants": [
"0xa6f9dae1",
"0xa6f9dae10000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfa89401a",
"selector": "0xfa89401a",
"calldata_variants": [
"0xfa89401a",
"0xfa89401a0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 929,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 1,
"guards_detected": [
{
"pc": 427,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 572,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 742,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 996,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
],
"untrusted_call_count": 1
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0x539b842f1ee46ed985f11354ed615b3fdfb1ba64f4fb0ec25a213de6c23cc37a
call_targets:
0x22ea823ddb595da01895308815470080218538d4
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x539b842f1ee46ed985f11354ed615b3fdfb1ba64f4fb0ec25a213de6c23cc37a",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x22ea823ddb595da01895308815470080218538d4"
],
"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": "0x69f384c4",
"selector": "0x69f384c4",
"calldata_variants": [
"0x69f384c4",
"0x69f384c40000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9d735286",
"selector": "0x9d735286",
"calldata_variants": [
"0x9d735286",
"0x9d7352860000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa6f9dae1",
"selector": "0xa6f9dae1",
"calldata_variants": [
"0xa6f9dae1",
"0xa6f9dae10000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfa89401a",
"selector": "0xfa89401a",
"calldata_variants": [
"0xfa89401a",
"0xfa89401a0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 929,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 1,
"guards_detected": [
{
"pc": 427,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 572,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 742,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 996,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
]
}
|
| medium | other | detector | SELFDESTRUCT reachable | 45 | no | no |
viewtrace_id: 0xe3d409bc8b7e8efee98162ea7078ad8b2fa37f9191479fde508f7b2acf5ff14b
validation_json{
"sink": "SELFDESTRUCT",
"errors": 0,
"status": "unknown",
"attempts": 10,
"trace_id": "0xe3d409bc8b7e8efee98162ea7078ad8b2fa37f9191479fde508f7b2acf5ff14b",
"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": "0x69f384c4",
"selector": "0x69f384c4",
"calldata_variants": [
"0x69f384c4",
"0x69f384c40000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9d735286",
"selector": "0x9d735286",
"calldata_variants": [
"0x9d735286",
"0x9d7352860000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa6f9dae1",
"selector": "0xa6f9dae1",
"calldata_variants": [
"0xa6f9dae1",
"0xa6f9dae10000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfa89401a",
"selector": "0xfa89401a",
"calldata_variants": [
"0xfa89401a",
"0xfa89401a0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 427,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 572,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 742,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 996,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
],
"selfdestruct_count": 1
}
|