019b3836-4232-7101-99d0-d3ebb8d54e06
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 |
|---|---|---|---|---|
| 5505 | artifact.fetch | complete | 1 / 3 | 3 months ago |
| 5506 | tool.cast_disasm | complete | 1 / 3 | 3 months ago |
| 97478 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 97479 | capability.graph | complete | 1 / 3 | 1 week ago |
| 97480 | detector.run | complete | 1 / 3 | 1 week ago |
| 97481 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
No codex job recorded yet.
00000000: PUSH1 0x60 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0xe0 00000007: PUSH1 0x02 00000009: EXP 0000000a: PUSH1 0x00 0000000c: CALLDATALOAD 0000000d: DIV 0000000e: PUSH4 0x41c0e1b5 00000013: DUP2 00000014: EQ 00000015: PUSH2 0x0031 00000018: JUMPI 00000019: DUP1 0000001a: PUSH4 0x7bf786f8 0000001f: EQ 00000020: PUSH2 0x0059 00000023: JUMPI 00000024: DUP1 00000025: PUSH4 0xfbf788d6 0000002a: EQ 0000002b: PUSH2 0x0071 0000002e: JUMPI 0000002f: JUMPDEST 00000030: STOP 00000031: JUMPDEST 00000032: PUSH2 0x002f 00000035: PUSH1 0x00 00000037: SLOAD 00000038: CALLER 00000039: PUSH1 0x01 0000003b: PUSH1 0xa0 0000003d: PUSH1 0x02 0000003f: EXP 00000040: SUB 00000041: SWAP1 00000042: DUP2 00000043: AND 00000044: SWAP2 00000045: AND 00000046: EQ 00000047: ISZERO 00000048: PUSH2 0x01fc 0000004b: JUMPI 0000004c: PUSH1 0x00 0000004e: SLOAD 0000004f: PUSH1 0x01 00000051: PUSH1 0xa0 00000053: PUSH1 0x02 00000055: EXP 00000056: SUB 00000057: AND 00000058: SELFDESTRUCT 00000059: JUMPDEST 0000005a: PUSH2 0x00ab 0000005d: PUSH1 0x04 0000005f: CALLDATALOAD 00000060: PUSH1 0x01 00000062: PUSH1 0x20 00000064: MSTORE 00000065: PUSH1 0x00 00000067: SWAP1 00000068: DUP2 00000069: MSTORE 0000006a: PUSH1 0x40 0000006c: SWAP1 0000006d: KECCAK256 0000006e: SLOAD 0000006f: DUP2 00000070: JUMP 00000071: JUMPDEST 00000072: PUSH2 0x002f 00000075: PUSH1 0x04 00000077: CALLDATALOAD 00000078: PUSH1 0x24 0000007a: CALLDATALOAD 0000007b: PUSH1 0x44 0000007d: CALLDATALOAD 0000007e: PUSH1 0x64 00000080: CALLDATALOAD 00000081: PUSH1 0x84 00000083: CALLDATALOAD 00000084: PUSH1 0x01 00000086: PUSH1 0xa0 00000088: PUSH1 0x02 0000008a: EXP 0000008b: SUB 0000008c: DUP6 0000008d: AND 0000008e: PUSH1 0x00 00000090: SWAP1 00000091: DUP2 00000092: MSTORE 00000093: PUSH1 0x01 00000095: PUSH1 0x20 00000097: MSTORE 00000098: PUSH1 0x40 0000009a: DUP2 0000009b: KECCAK256 0000009c: SLOAD 0000009d: DUP6 0000009e: GT 0000009f: PUSH2 0x00b5 000000a2: JUMPI 000000a3: JUMPDEST 000000a4: POP 000000a5: POP 000000a6: POP 000000a7: POP 000000a8: POP 000000a9: POP 000000aa: JUMP 000000ab: JUMPDEST 000000ac: PUSH1 0x60 000000ae: SWAP1 000000af: DUP2 000000b0: MSTORE 000000b1: PUSH1 0x20 000000b3: SWAP1 000000b4: RETURN 000000b5: JUMPDEST 000000b6: ADDRESS 000000b7: PUSH1 0x01 000000b9: PUSH1 0xa0 000000bb: PUSH1 0x02 000000bd: EXP 000000be: SUB 000000bf: SWAP1 000000c0: DUP2 000000c1: AND 000000c2: PUSH13 0x01000000000000000000000000 000000d0: SWAP1 000000d1: DUP2 000000d2: MUL 000000d3: PUSH1 0x60 000000d5: SWAP1 000000d6: DUP2 000000d7: MSTORE 000000d8: SWAP2 000000d9: DUP9 000000da: AND 000000db: MUL 000000dc: PUSH1 0x74 000000de: MSTORE 000000df: PUSH1 0x88 000000e1: DUP7 000000e2: SWAP1 000000e3: MSTORE 000000e4: PUSH1 0x48 000000e6: DUP2 000000e7: KECCAK256 000000e8: DUP1 000000e9: DUP3 000000ea: MSTORE 000000eb: PUSH1 0xff 000000ed: DUP7 000000ee: AND 000000ef: PUSH1 0x80 000000f1: SWAP1 000000f2: DUP2 000000f3: MSTORE 000000f4: PUSH1 0xa0 000000f6: DUP7 000000f7: SWAP1 000000f8: MSTORE 000000f9: PUSH1 0xc0 000000fb: DUP6 000000fc: SWAP1 000000fd: MSTORE 000000fe: SWAP1 000000ff: SWAP3 00000100: PUSH1 0x01 00000102: SWAP3 00000103: PUSH1 0xe0 00000105: SWAP3 00000106: PUSH1 0x20 00000108: SWAP3 00000109: DUP3 0000010a: SWAP1 0000010b: DUP7 0000010c: PUSH2 0x61da 0000010f: GAS 00000110: SUB 00000111: CALL 00000112: ISZERO 00000113: PUSH2 0x0002 00000116: JUMPI 00000117: POP 00000118: POP 00000119: PUSH1 0x40 0000011b: MLOAD 0000011c: MLOAD 0000011d: PUSH1 0x00 0000011f: SLOAD 00000120: PUSH1 0x01 00000122: PUSH1 0xa0 00000124: PUSH1 0x02 00000126: EXP 00000127: SUB 00000128: SWAP1 00000129: DUP2 0000012a: AND 0000012b: SWAP2 0000012c: AND 0000012d: EQ 0000012e: PUSH2 0x0136 00000131: JUMPI 00000132: PUSH2 0x00a3 00000135: JUMP 00000136: JUMPDEST 00000137: DUP6 00000138: PUSH1 0x01 0000013a: PUSH1 0xa0 0000013c: PUSH1 0x02 0000013e: EXP 0000013f: SUB 00000140: AND 00000141: PUSH1 0x00 00000143: PUSH1 0x01 00000145: PUSH1 0x00 00000147: POP 00000148: PUSH1 0x00 0000014a: DUP10 0000014b: PUSH1 0x01 0000014d: PUSH1 0xa0 0000014f: PUSH1 0x02 00000151: EXP 00000152: SUB 00000153: AND 00000154: DUP2 00000155: MSTORE 00000156: PUSH1 0x20 00000158: ADD 00000159: SWAP1 0000015a: DUP2 0000015b: MSTORE 0000015c: PUSH1 0x20 0000015e: ADD 0000015f: PUSH1 0x00 00000161: KECCAK256 00000162: PUSH1 0x00 00000164: POP 00000165: SLOAD 00000166: DUP8 00000167: SUB 00000168: PUSH1 0x40 0000016a: MLOAD 0000016b: DUP1 0000016c: SWAP1 0000016d: POP 0000016e: PUSH1 0x00 00000170: PUSH1 0x40 00000172: MLOAD 00000173: DUP1 00000174: DUP4 00000175: SUB 00000176: DUP2 00000177: DUP6 00000178: DUP9 00000179: DUP9 0000017a: CALL 0000017b: SWAP4 0000017c: POP 0000017d: POP 0000017e: POP 0000017f: POP 00000180: ISZERO 00000181: PUSH2 0x01b0 00000184: JUMPI 00000185: DUP5 00000186: PUSH1 0x01 00000188: PUSH1 0x00 0000018a: POP 0000018b: PUSH1 0x00 0000018d: DUP9 0000018e: PUSH1 0x01 00000190: PUSH1 0xa0 00000192: PUSH1 0x02 00000194: EXP 00000195: SUB 00000196: AND 00000197: DUP2 00000198: MSTORE 00000199: PUSH1 0x20 0000019b: ADD 0000019c: SWAP1 0000019d: DUP2 0000019e: MSTORE 0000019f: PUSH1 0x20 000001a1: ADD 000001a2: PUSH1 0x00 000001a4: KECCAK256 000001a5: PUSH1 0x00 000001a7: POP 000001a8: DUP2 000001a9: SWAP1 000001aa: SSTORE 000001ab: POP 000001ac: PUSH2 0x00a3 000001af: JUMP 000001b0: JUMPDEST 000001b1: PUSH1 0x00 000001b3: SLOAD 000001b4: PUSH1 0x40 000001b6: DUP1 000001b7: MLOAD 000001b8: PUSH1 0x01 000001ba: PUSH1 0xa0 000001bc: PUSH1 0x02 000001be: EXP 000001bf: SUB 000001c0: SWAP3 000001c1: SWAP1 000001c2: SWAP3 000001c3: AND 000001c4: DUP3 000001c5: MSTORE 000001c6: MLOAD 000001c7: PUSH32 0x2250e2993c15843b32621c89447cc589ee7a9f049c026986e545d3c2c0c6f978 000001e8: SWAP2 000001e9: DUP2 000001ea: SWAP1 000001eb: SUB 000001ec: PUSH1 0x20 000001ee: ADD 000001ef: SWAP1 000001f0: LOG1 000001f1: DUP6 000001f2: PUSH1 0x01 000001f4: PUSH1 0xa0 000001f6: PUSH1 0x02 000001f8: EXP 000001f9: SUB 000001fa: AND 000001fb: SELFDESTRUCT 000001fc: JUMPDEST 000001fd: 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: 0x1ca985d4b8587ceaf9e2593ecd1dffdcdf598b40efc7aec4a6d27473341c047f
call_targets:
0xe993b521ac3404aafb67eaf058f853820f1d6069
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x1ca985d4b8587ceaf9e2593ecd1dffdcdf598b40efc7aec4a6d27473341c047f",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xe993b521ac3404aafb67eaf058f853820f1d6069"
],
"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": "0x41c0e1b5",
"selector": "0x41c0e1b5",
"calldata_variants": [
"0x41c0e1b5",
"0x41c0e1b50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x7bf786f8",
"selector": "0x7bf786f8",
"calldata_variants": [
"0x7bf786f8",
"0x7bf786f80000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfbf788d6",
"selector": "0xfbf788d6",
"calldata_variants": [
"0xfbf788d6",
"0xfbf788d60000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 273,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 378,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 2,
"guards_detected": [],
"untrusted_call_count": 2
}
|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_id: 0x1ca985d4b8587ceaf9e2593ecd1dffdcdf598b40efc7aec4a6d27473341c047f
call_targets:
0xe993b521ac3404aafb67eaf058f853820f1d6069
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x1ca985d4b8587ceaf9e2593ecd1dffdcdf598b40efc7aec4a6d27473341c047f",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xe993b521ac3404aafb67eaf058f853820f1d6069"
],
"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": "0x41c0e1b5",
"selector": "0x41c0e1b5",
"calldata_variants": [
"0x41c0e1b5",
"0x41c0e1b50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x7bf786f8",
"selector": "0x7bf786f8",
"calldata_variants": [
"0x7bf786f8",
"0x7bf786f80000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfbf788d6",
"selector": "0xfbf788d6",
"calldata_variants": [
"0xfbf788d6",
"0xfbf788d60000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 273,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 378,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 2,
"guards_detected": []
}
|
| high | other | detector | SELFDESTRUCT reachable | 65 | no | no |
viewtrace_id: 0xea3b2f867a9324665eb6ac5ea7a8b90b72464958397c51310ea2ffa1412a79d1
validation_json{
"sink": "SELFDESTRUCT",
"errors": 0,
"status": "unknown",
"attempts": 6,
"trace_id": "0xea3b2f867a9324665eb6ac5ea7a8b90b72464958397c51310ea2ffa1412a79d1",
"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": "0x41c0e1b5",
"selector": "0x41c0e1b5",
"calldata_variants": [
"0x41c0e1b5",
"0x41c0e1b50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x7bf786f8",
"selector": "0x7bf786f8",
"calldata_variants": [
"0x7bf786f8",
"0x7bf786f80000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfbf788d6",
"selector": "0xfbf788d6",
"calldata_variants": [
"0xfbf788d6",
"0xfbf788d60000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [],
"selfdestruct_count": 2
}
|