019b3844-82af-7363-b9c2-de2a7b514554
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 |
|---|---|---|---|---|
| 10227 | artifact.fetch | complete | 1 / 3 | 4 months ago |
| 10228 | tool.cast_disasm | complete | 1 / 3 | 4 months ago |
| 53660 | analysis.bundle | complete | 1 / 3 | 2 weeks ago |
| 53661 | capability.graph | complete | 1 / 3 | 2 weeks ago |
| 53662 | detector.run | complete | 1 / 3 | 2 weeks ago |
| 53663 | 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 0x0035 0000000a: JUMPI 0000000b: PUSH1 0xe0 0000000d: PUSH1 0x02 0000000f: EXP 00000010: PUSH1 0x00 00000012: CALLDATALOAD 00000013: DIV 00000014: PUSH4 0x29b5b30c 00000019: DUP2 0000001a: EQ 0000001b: PUSH2 0x0085 0000001e: JUMPI 0000001f: DUP1 00000020: PUSH4 0x41c0e1b5 00000025: EQ 00000026: PUSH2 0x0112 00000029: JUMPI 0000002a: DUP1 0000002b: PUSH4 0xe5225381 00000030: EQ 00000031: PUSH2 0x013f 00000034: JUMPI 00000035: JUMPDEST 00000036: PUSH2 0x018e 00000039: PUSH1 0x00 0000003b: CALLVALUE 0000003c: GT 0000003d: ISZERO 0000003e: PUSH2 0x0083 00000041: JUMPI 00000042: PUSH1 0x40 00000044: DUP1 00000045: MLOAD 00000046: CALLVALUE 00000047: DUP2 00000048: MSTORE 00000049: SWAP1 0000004a: MLOAD 0000004b: PUSH1 0x58 0000004d: SWAP2 0000004e: PUSH1 0x01 00000050: PUSH1 0xa0 00000052: PUSH1 0x02 00000054: EXP 00000055: SUB 00000056: CALLER 00000057: AND 00000058: SWAP2 00000059: PUSH32 0x90890809c654f11d6e72a28fa60149770a0d11ec6c92319d6ceb2bb0a4ea1a15 0000007a: SWAP2 0000007b: DUP2 0000007c: SWAP1 0000007d: SUB 0000007e: PUSH1 0x20 00000080: ADD 00000081: SWAP1 00000082: LOG3 00000083: JUMPDEST 00000084: JUMP 00000085: JUMPDEST 00000086: CALLVALUE 00000087: PUSH2 0x0002 0000008a: JUMPI 0000008b: PUSH2 0x018e 0000008e: PUSH1 0x04 00000090: CALLDATALOAD 00000091: PUSH1 0x24 00000093: CALLDATALOAD 00000094: PUSH1 0x44 00000096: CALLDATALOAD 00000097: PUSH1 0x00 00000099: DUP1 0000009a: SLOAD 0000009b: CALLER 0000009c: PUSH1 0x01 0000009e: PUSH1 0xa0 000000a0: PUSH1 0x02 000000a2: EXP 000000a3: SUB 000000a4: SWAP1 000000a5: DUP2 000000a6: AND 000000a7: SWAP2 000000a8: AND 000000a9: EQ 000000aa: ISZERO 000000ab: PUSH2 0x010c 000000ae: JUMPI 000000af: DUP4 000000b0: SWAP1 000000b1: POP 000000b2: DUP1 000000b3: PUSH1 0x01 000000b5: PUSH1 0xa0 000000b7: PUSH1 0x02 000000b9: EXP 000000ba: SUB 000000bb: AND 000000bc: PUSH4 0xa9059cbb 000000c1: DUP5 000000c2: DUP5 000000c3: PUSH1 0x40 000000c5: MLOAD 000000c6: DUP4 000000c7: PUSH1 0xe0 000000c9: PUSH1 0x02 000000cb: EXP 000000cc: MUL 000000cd: DUP2 000000ce: MSTORE 000000cf: PUSH1 0x04 000000d1: ADD 000000d2: DUP1 000000d3: DUP4 000000d4: PUSH1 0x01 000000d6: PUSH1 0xa0 000000d8: PUSH1 0x02 000000da: EXP 000000db: SUB 000000dc: AND 000000dd: DUP2 000000de: MSTORE 000000df: PUSH1 0x20 000000e1: ADD 000000e2: DUP3 000000e3: DUP2 000000e4: MSTORE 000000e5: PUSH1 0x20 000000e7: ADD 000000e8: SWAP3 000000e9: POP 000000ea: POP 000000eb: POP 000000ec: PUSH1 0x00 000000ee: PUSH1 0x40 000000f0: MLOAD 000000f1: DUP1 000000f2: DUP4 000000f3: SUB 000000f4: DUP2 000000f5: PUSH1 0x00 000000f7: DUP8 000000f8: DUP1 000000f9: EXTCODESIZE 000000fa: ISZERO 000000fb: PUSH2 0x0002 000000fe: JUMPI 000000ff: PUSH1 0x32 00000101: GAS 00000102: SUB 00000103: CALL 00000104: ISZERO 00000105: PUSH2 0x0002 00000108: JUMPI 00000109: POP 0000010a: POP 0000010b: POP 0000010c: JUMPDEST 0000010d: POP 0000010e: POP 0000010f: POP 00000110: POP 00000111: JUMP 00000112: JUMPDEST 00000113: CALLVALUE 00000114: PUSH2 0x0002 00000117: JUMPI 00000118: PUSH2 0x018e 0000011b: PUSH1 0x00 0000011d: SLOAD 0000011e: CALLER 0000011f: PUSH1 0x01 00000121: PUSH1 0xa0 00000123: PUSH1 0x02 00000125: EXP 00000126: SUB 00000127: SWAP1 00000128: DUP2 00000129: AND 0000012a: SWAP2 0000012b: AND 0000012c: EQ 0000012d: ISZERO 0000012e: PUSH2 0x0083 00000131: JUMPI 00000132: PUSH1 0x00 00000134: SLOAD 00000135: PUSH1 0x01 00000137: PUSH1 0xa0 00000139: PUSH1 0x02 0000013b: EXP 0000013c: SUB 0000013d: AND 0000013e: SELFDESTRUCT 0000013f: JUMPDEST 00000140: CALLVALUE 00000141: PUSH2 0x0002 00000144: JUMPI 00000145: PUSH2 0x018e 00000148: PUSH1 0x00 0000014a: SLOAD 0000014b: CALLER 0000014c: PUSH1 0x01 0000014e: PUSH1 0xa0 00000150: PUSH1 0x02 00000152: EXP 00000153: SUB 00000154: SWAP1 00000155: DUP2 00000156: AND 00000157: SWAP2 00000158: AND 00000159: EQ 0000015a: ISZERO 0000015b: PUSH2 0x0083 0000015e: JUMPI 0000015f: PUSH1 0x00 00000161: DUP1 00000162: SLOAD 00000163: PUSH1 0x40 00000165: MLOAD 00000166: PUSH1 0x01 00000168: PUSH1 0xa0 0000016a: PUSH1 0x02 0000016c: EXP 0000016d: SUB 0000016e: SWAP2 0000016f: DUP3 00000170: AND 00000171: SWAP3 00000172: ADDRESS 00000173: SWAP1 00000174: SWAP3 00000175: AND 00000176: BALANCE 00000177: DUP1 00000178: ISZERO 00000179: PUSH2 0x08fc 0000017c: MUL 0000017d: SWAP3 0000017e: SWAP1 0000017f: SWAP2 00000180: SWAP1 00000181: DUP2 00000182: DUP2 00000183: DUP2 00000184: DUP6 00000185: DUP9 00000186: DUP9 00000187: CALL 00000188: POP 00000189: POP 0000018a: POP 0000018b: POP 0000018c: POP 0000018d: JUMP 0000018e: JUMPDEST 0000018f: STOP
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: 0x8d12bf4fdf56ce4ad17011b86409baa44efeaee1a8bc3324a61da1b53561ce24
call_targets:
0xc1950f7049f576ef6966dcad20d7d3bd82c49326
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x8d12bf4fdf56ce4ad17011b86409baa44efeaee1a8bc3324a61da1b53561ce24",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xc1950f7049f576ef6966dcad20d7d3bd82c49326"
],
"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": "0x29b5b30c",
"selector": "0x29b5b30c",
"calldata_variants": [
"0x29b5b30c",
"0x29b5b30c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x41c0e1b5",
"selector": "0x41c0e1b5",
"calldata_variants": [
"0x41c0e1b5",
"0x41c0e1b50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe5225381",
"selector": "0xe5225381",
"calldata_variants": [
"0xe5225381",
"0xe52253810000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 259,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 391,
"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: 0x8d12bf4fdf56ce4ad17011b86409baa44efeaee1a8bc3324a61da1b53561ce24
call_targets:
0xc1950f7049f576ef6966dcad20d7d3bd82c49326
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x8d12bf4fdf56ce4ad17011b86409baa44efeaee1a8bc3324a61da1b53561ce24",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xc1950f7049f576ef6966dcad20d7d3bd82c49326"
],
"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": "0x29b5b30c",
"selector": "0x29b5b30c",
"calldata_variants": [
"0x29b5b30c",
"0x29b5b30c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x41c0e1b5",
"selector": "0x41c0e1b5",
"calldata_variants": [
"0x41c0e1b5",
"0x41c0e1b50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe5225381",
"selector": "0xe5225381",
"calldata_variants": [
"0xe5225381",
"0xe52253810000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 259,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 391,
"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: 0x886f60983cb1c8d635c07732c081fbb84411fd9db48089997f91d66ea6836055
validation_json{
"sink": "SELFDESTRUCT",
"errors": 0,
"status": "unknown",
"attempts": 6,
"trace_id": "0x886f60983cb1c8d635c07732c081fbb84411fd9db48089997f91d66ea6836055",
"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": "0x29b5b30c",
"selector": "0x29b5b30c",
"calldata_variants": [
"0x29b5b30c",
"0x29b5b30c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x41c0e1b5",
"selector": "0x41c0e1b5",
"calldata_variants": [
"0x41c0e1b5",
"0x41c0e1b50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe5225381",
"selector": "0xe5225381",
"calldata_variants": [
"0xe5225381",
"0xe52253810000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [],
"selfdestruct_count": 1
}
|