019b3836-2ba4-731f-8379-6db60c6191bc
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 |
|---|---|---|---|---|
| 1799 | artifact.fetch | complete | 1 / 3 | 3 months ago |
| 1800 | tool.cast_disasm | complete | 1 / 3 | 3 months ago |
| 44736 | analysis.bundle | complete | 1 / 3 | 2 weeks ago |
| 44737 | capability.graph | complete | 1 / 3 | 2 weeks ago |
| 44738 | detector.run | complete | 1 / 3 | 2 weeks ago |
| 44739 | 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 0x006c 0000000a: JUMPI 0000000b: PUSH1 0xe0 0000000d: PUSH1 0x02 0000000f: EXP 00000010: PUSH1 0x00 00000012: CALLDATALOAD 00000013: DIV 00000014: PUSH4 0x13381fbf 00000019: DUP2 0000001a: EQ 0000001b: PUSH2 0x006e 0000001e: JUMPI 0000001f: DUP1 00000020: PUSH4 0x61203265 00000025: EQ 00000026: PUSH2 0x0086 00000029: JUMPI 0000002a: DUP1 0000002b: PUSH4 0x705099b9 00000030: EQ 00000031: PUSH2 0x0098 00000034: JUMPI 00000035: DUP1 00000036: PUSH4 0x83197ef0 0000003b: EQ 0000003c: PUSH2 0x00bf 0000003f: JUMPI 00000040: DUP1 00000041: PUSH4 0xa977c71e 00000046: EQ 00000047: PUSH2 0x00e9 0000004a: JUMPI 0000004b: DUP1 0000004c: PUSH4 0xcebe09c9 00000051: EQ 00000052: PUSH2 0x010c 00000055: JUMPI 00000056: DUP1 00000057: PUSH4 0xec3a6f73 0000005c: EQ 0000005d: PUSH2 0x0115 00000060: JUMPI 00000061: DUP1 00000062: PUSH4 0xedca914c 00000067: EQ 00000068: PUSH2 0x011e 0000006b: JUMPI 0000006c: JUMPDEST 0000006d: STOP 0000006e: JUMPDEST 0000006f: PUSH2 0x0135 00000072: PUSH1 0x04 00000074: CALLDATALOAD 00000075: PUSH1 0x01 00000077: PUSH1 0x20 00000079: MSTORE 0000007a: PUSH1 0x00 0000007c: SWAP1 0000007d: DUP2 0000007e: MSTORE 0000007f: PUSH1 0x40 00000081: SWAP1 00000082: KECCAK256 00000083: SLOAD 00000084: DUP2 00000085: JUMP 00000086: JUMPDEST 00000087: PUSH2 0x0135 0000008a: PUSH1 0x00 0000008c: SLOAD 0000008d: PUSH1 0x01 0000008f: PUSH1 0xa0 00000091: PUSH1 0x02 00000093: EXP 00000094: SUB 00000095: AND 00000096: DUP2 00000097: JUMP 00000098: JUMPDEST 00000099: PUSH2 0x006c 0000009c: PUSH1 0x04 0000009e: CALLDATALOAD 0000009f: PUSH1 0x24 000000a1: CALLDATALOAD 000000a2: PUSH1 0x00 000000a4: DUP1 000000a5: SLOAD 000000a6: PUSH1 0x01 000000a8: PUSH1 0xa0 000000aa: PUSH1 0x02 000000ac: EXP 000000ad: SUB 000000ae: SWAP1 000000af: DUP2 000000b0: AND 000000b1: CALLER 000000b2: SWAP2 000000b3: SWAP1 000000b4: SWAP2 000000b5: AND 000000b6: EQ 000000b7: PUSH2 0x01a5 000000ba: JUMPI 000000bb: PUSH2 0x0241 000000be: JUMP 000000bf: JUMPDEST 000000c0: PUSH2 0x006c 000000c3: PUSH1 0x00 000000c5: SLOAD 000000c6: PUSH1 0x01 000000c8: PUSH1 0xa0 000000ca: PUSH1 0x02 000000cc: EXP 000000cd: SUB 000000ce: SWAP1 000000cf: DUP2 000000d0: AND 000000d1: CALLER 000000d2: SWAP2 000000d3: SWAP1 000000d4: SWAP2 000000d5: AND 000000d6: EQ 000000d7: ISZERO 000000d8: PUSH2 0x0246 000000db: JUMPI 000000dc: PUSH1 0x00 000000de: SLOAD 000000df: PUSH1 0x01 000000e1: PUSH1 0xa0 000000e3: PUSH1 0x02 000000e5: EXP 000000e6: SUB 000000e7: AND 000000e8: SELFDESTRUCT 000000e9: JUMPDEST 000000ea: PUSH2 0x006c 000000ed: PUSH1 0x04 000000ef: CALLDATALOAD 000000f0: PUSH1 0x00 000000f2: SLOAD 000000f3: PUSH1 0x01 000000f5: PUSH1 0xa0 000000f7: PUSH1 0x02 000000f9: EXP 000000fa: SUB 000000fb: SWAP1 000000fc: DUP2 000000fd: AND 000000fe: CALLER 000000ff: SWAP2 00000100: SWAP1 00000101: SWAP2 00000102: AND 00000103: EQ 00000104: PUSH2 0x019c 00000107: JUMPI 00000108: PUSH2 0x01a2 0000010b: JUMP 0000010c: JUMPDEST 0000010d: PUSH2 0x0135 00000110: PUSH1 0x03 00000112: SLOAD 00000113: DUP2 00000114: JUMP 00000115: JUMPDEST 00000116: PUSH2 0x0135 00000119: PUSH1 0x02 0000011b: SLOAD 0000011c: DUP2 0000011d: JUMP 0000011e: JUMPDEST 0000011f: PUSH2 0x0135 00000122: PUSH1 0x03 00000124: SLOAD 00000125: PUSH1 0x02 00000127: SLOAD 00000128: PUSH1 0x00 0000012a: SWAP2 0000012b: SWAP1 0000012c: LT 0000012d: PUSH2 0x013f 00000130: JUMPI 00000131: PUSH2 0x0199 00000134: JUMP 00000135: JUMPDEST 00000136: PUSH1 0x60 00000138: SWAP1 00000139: DUP2 0000013a: MSTORE 0000013b: PUSH1 0x20 0000013d: SWAP1 0000013e: RETURN 0000013f: JUMPDEST 00000140: PUSH1 0x01 00000142: PUSH1 0xa0 00000144: PUSH1 0x02 00000146: EXP 00000147: SUB 00000148: CALLER 00000149: AND 0000014a: DUP1 0000014b: DUP3 0000014c: MSTORE 0000014d: PUSH1 0x01 0000014f: PUSH1 0x20 00000151: DUP2 00000152: SWAP1 00000153: MSTORE 00000154: PUSH1 0x40 00000156: DUP1 00000157: DUP5 00000158: KECCAK256 00000159: CALLVALUE 0000015a: SWAP1 0000015b: DUP2 0000015c: SWAP1 0000015d: SSTORE 0000015e: PUSH1 0x02 00000160: DUP1 00000161: SLOAD 00000162: SWAP1 00000163: SWAP4 00000164: ADD 00000165: SWAP1 00000166: SWAP3 00000167: SSTORE 00000168: PUSH1 0x60 0000016a: SWAP3 0000016b: DUP4 0000016c: MSTORE 0000016d: PUSH1 0x80 0000016f: SWAP2 00000170: SWAP1 00000171: SWAP2 00000172: MSTORE 00000173: PUSH32 0xe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c 00000194: SWAP2 00000195: LOG1 00000196: POP 00000197: PUSH1 0x01 00000199: JUMPDEST 0000019a: SWAP1 0000019b: JUMP 0000019c: JUMPDEST 0000019d: PUSH1 0x03 0000019f: DUP2 000001a0: SWAP1 000001a1: SSTORE 000001a2: JUMPDEST 000001a3: POP 000001a4: JUMP 000001a5: JUMPDEST 000001a6: PUSH1 0x01 000001a8: PUSH1 0xa0 000001aa: PUSH1 0x02 000001ac: EXP 000001ad: SUB 000001ae: DUP4 000001af: AND 000001b0: DUP2 000001b1: MSTORE 000001b2: PUSH1 0x01 000001b4: PUSH1 0x20 000001b6: MSTORE 000001b7: PUSH1 0x40 000001b9: DUP2 000001ba: KECCAK256 000001bb: SLOAD 000001bc: DUP3 000001bd: EQ 000001be: ISZERO 000001bf: PUSH2 0x0241 000001c2: JUMPI 000001c3: POP 000001c4: ADDRESS 000001c5: PUSH1 0x01 000001c7: PUSH1 0xa0 000001c9: PUSH1 0x02 000001cb: EXP 000001cc: SUB 000001cd: DUP2 000001ce: AND 000001cf: BALANCE 000001d0: DUP3 000001d1: SWAP1 000001d2: LT 000001d3: PUSH2 0x0241 000001d6: JUMPI 000001d7: PUSH1 0x01 000001d9: PUSH1 0xa0 000001db: PUSH1 0x02 000001dd: EXP 000001de: SUB 000001df: DUP4 000001e0: AND 000001e1: PUSH1 0x00 000001e3: DUP4 000001e4: PUSH1 0x60 000001e6: DUP3 000001e7: DUP2 000001e8: DUP2 000001e9: DUP2 000001ea: DUP6 000001eb: DUP9 000001ec: DUP4 000001ed: CALL 000001ee: POP 000001ef: POP 000001f0: PUSH1 0x40 000001f2: DUP1 000001f3: DUP4 000001f4: KECCAK256 000001f5: DUP5 000001f6: DUP5 000001f7: MSTORE 000001f8: PUSH1 0x01 000001fa: PUSH1 0x20 000001fc: SWAP1 000001fd: DUP2 000001fe: MSTORE 000001ff: SWAP4 00000200: SWAP1 00000201: SSTORE 00000202: PUSH1 0x02 00000204: DUP1 00000205: SLOAD 00000206: PUSH1 0x00 00000208: NOT 00000209: ADD 0000020a: SWAP1 0000020b: SSTORE 0000020c: DUP1 0000020d: MLOAD 0000020e: SWAP4 0000020f: DUP5 00000210: MSTORE 00000211: SWAP2 00000212: DUP4 00000213: ADD 00000214: MSTORE 00000215: DUP1 00000216: MLOAD 00000217: PUSH32 0xbb28353e4598c3b9199101a66e0989549b659a59a54d2c27fbb183f1932c8e6d 00000238: SWAP3 00000239: DUP2 0000023a: SWAP1 0000023b: SUB 0000023c: SWAP1 0000023d: SWAP2 0000023e: ADD 0000023f: SWAP1 00000240: LOG1 00000241: JUMPDEST 00000242: POP 00000243: POP 00000244: POP 00000245: JUMP 00000246: JUMPDEST 00000247: 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: 0x12ad4e409658e8d643ee74b309c3b05e98b1a17efddc8f5f28ca57dbe7a4c742
call_targets:
0xaeb160d7933fd51a3b489b238b42e3cf478a03f2
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x12ad4e409658e8d643ee74b309c3b05e98b1a17efddc8f5f28ca57dbe7a4c742",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xaeb160d7933fd51a3b489b238b42e3cf478a03f2"
],
"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": "0x13381fbf",
"selector": "0x13381fbf",
"calldata_variants": [
"0x13381fbf",
"0x13381fbf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x61203265",
"selector": "0x61203265",
"calldata_variants": [
"0x61203265",
"0x612032650000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x705099b9",
"selector": "0x705099b9",
"calldata_variants": [
"0x705099b9",
"0x705099b90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x83197ef0",
"selector": "0x83197ef0",
"calldata_variants": [
"0x83197ef0",
"0x83197ef00000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa977c71e",
"selector": "0xa977c71e",
"calldata_variants": [
"0xa977c71e",
"0xa977c71e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xcebe09c9",
"selector": "0xcebe09c9",
"calldata_variants": [
"0xcebe09c9",
"0xcebe09c90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xec3a6f73",
"selector": "0xec3a6f73",
"calldata_variants": [
"0xec3a6f73",
"0xec3a6f730000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xedca914c",
"selector": "0xedca914c",
"calldata_variants": [
"0xedca914c",
"0xedca914c0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 493,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 1,
"guards_detected": [],
"untrusted_call_count": 1
}
|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_id: 0x12ad4e409658e8d643ee74b309c3b05e98b1a17efddc8f5f28ca57dbe7a4c742
call_targets:
0xaeb160d7933fd51a3b489b238b42e3cf478a03f2
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x12ad4e409658e8d643ee74b309c3b05e98b1a17efddc8f5f28ca57dbe7a4c742",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xaeb160d7933fd51a3b489b238b42e3cf478a03f2"
],
"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": "0x13381fbf",
"selector": "0x13381fbf",
"calldata_variants": [
"0x13381fbf",
"0x13381fbf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x61203265",
"selector": "0x61203265",
"calldata_variants": [
"0x61203265",
"0x612032650000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x705099b9",
"selector": "0x705099b9",
"calldata_variants": [
"0x705099b9",
"0x705099b90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x83197ef0",
"selector": "0x83197ef0",
"calldata_variants": [
"0x83197ef0",
"0x83197ef00000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa977c71e",
"selector": "0xa977c71e",
"calldata_variants": [
"0xa977c71e",
"0xa977c71e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xcebe09c9",
"selector": "0xcebe09c9",
"calldata_variants": [
"0xcebe09c9",
"0xcebe09c90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xec3a6f73",
"selector": "0xec3a6f73",
"calldata_variants": [
"0xec3a6f73",
"0xec3a6f730000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xedca914c",
"selector": "0xedca914c",
"calldata_variants": [
"0xedca914c",
"0xedca914c0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 493,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 1,
"guards_detected": []
}
|
| high | other | detector | SELFDESTRUCT reachable | 65 | no | no |
viewtrace_id: 0xb7e2ef254f74ea6f648d7a9a322ec94873a9c6669b49a1fa0f12be792ca20a83
validation_json{
"sink": "SELFDESTRUCT",
"errors": 0,
"status": "unknown",
"attempts": 16,
"trace_id": "0xb7e2ef254f74ea6f648d7a9a322ec94873a9c6669b49a1fa0f12be792ca20a83",
"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": "0x13381fbf",
"selector": "0x13381fbf",
"calldata_variants": [
"0x13381fbf",
"0x13381fbf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x61203265",
"selector": "0x61203265",
"calldata_variants": [
"0x61203265",
"0x612032650000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x705099b9",
"selector": "0x705099b9",
"calldata_variants": [
"0x705099b9",
"0x705099b90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x83197ef0",
"selector": "0x83197ef0",
"calldata_variants": [
"0x83197ef0",
"0x83197ef00000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa977c71e",
"selector": "0xa977c71e",
"calldata_variants": [
"0xa977c71e",
"0xa977c71e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xcebe09c9",
"selector": "0xcebe09c9",
"calldata_variants": [
"0xcebe09c9",
"0xcebe09c90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xec3a6f73",
"selector": "0xec3a6f73",
"calldata_variants": [
"0xec3a6f73",
"0xec3a6f730000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xedca914c",
"selector": "0xedca914c",
"calldata_variants": [
"0xedca914c",
"0xedca914c0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [],
"selfdestruct_count": 1
}
|