019b3836-4dc0-71bf-b47e-8b63b8658467
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 |
|---|---|---|---|---|
| 7263 | artifact.fetch | complete | 1 / 3 | 3 months ago |
| 7264 | tool.cast_disasm | complete | 1 / 3 | 3 months ago |
| 109150 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 109151 | capability.graph | complete | 1 / 3 | 1 week ago |
| 109152 | detector.run | complete | 1 / 3 | 1 week ago |
| 109153 | 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 0x0026 00000018: JUMPI 00000019: DUP1 0000001a: PUSH4 0xb5aebc80 0000001f: EQ 00000020: PUSH2 0x004e 00000023: JUMPI 00000024: JUMPDEST 00000025: STOP 00000026: JUMPDEST 00000027: PUSH2 0x0024 0000002a: PUSH1 0x00 0000002c: SLOAD 0000002d: CALLER 0000002e: PUSH1 0x01 00000030: PUSH1 0xa0 00000032: PUSH1 0x02 00000034: EXP 00000035: SUB 00000036: SWAP1 00000037: DUP2 00000038: AND 00000039: SWAP2 0000003a: AND 0000003b: EQ 0000003c: ISZERO 0000003d: PUSH2 0x02cd 00000040: JUMPI 00000041: PUSH1 0x00 00000043: SLOAD 00000044: PUSH1 0x01 00000046: PUSH1 0xa0 00000048: PUSH1 0x02 0000004a: EXP 0000004b: SUB 0000004c: AND 0000004d: SELFDESTRUCT 0000004e: JUMPDEST 0000004f: PUSH2 0x0024 00000052: PUSH1 0x04 00000054: DUP1 00000055: DUP1 00000056: CALLDATALOAD 00000057: SWAP1 00000058: PUSH1 0x20 0000005a: ADD 0000005b: SWAP1 0000005c: DUP3 0000005d: ADD 0000005e: DUP1 0000005f: CALLDATALOAD 00000060: SWAP1 00000061: PUSH1 0x20 00000063: ADD 00000064: SWAP2 00000065: SWAP2 00000066: SWAP1 00000067: DUP1 00000068: DUP1 00000069: PUSH1 0x1f 0000006b: ADD 0000006c: PUSH1 0x20 0000006e: DUP1 0000006f: SWAP2 00000070: DIV 00000071: MUL 00000072: PUSH1 0x20 00000074: ADD 00000075: PUSH1 0x40 00000077: MLOAD 00000078: SWAP1 00000079: DUP2 0000007a: ADD 0000007b: PUSH1 0x40 0000007d: MSTORE 0000007e: DUP1 0000007f: SWAP4 00000080: SWAP3 00000081: SWAP2 00000082: SWAP1 00000083: DUP2 00000084: DUP2 00000085: MSTORE 00000086: PUSH1 0x20 00000088: ADD 00000089: DUP4 0000008a: DUP4 0000008b: DUP1 0000008c: DUP3 0000008d: DUP5 0000008e: CALLDATACOPY 0000008f: POP 00000090: SWAP5 00000091: SWAP7 00000092: POP 00000093: POP 00000094: POP 00000095: POP 00000096: POP 00000097: POP 00000098: POP 00000099: PUSH1 0x01 0000009b: SLOAD 0000009c: PUSH1 0x40 0000009e: MLOAD 0000009f: PUSH1 0x5f 000000a1: PUSH1 0x64 000000a3: CALLVALUE 000000a4: DIV 000000a5: MUL 000000a6: SWAP2 000000a7: PUSH1 0x01 000000a9: PUSH1 0xa0 000000ab: PUSH1 0x02 000000ad: EXP 000000ae: SUB 000000af: AND 000000b0: SWAP1 000000b1: PUSH1 0x00 000000b3: SWAP1 000000b4: DUP4 000000b5: SWAP1 000000b6: DUP3 000000b7: DUP2 000000b8: DUP2 000000b9: DUP2 000000ba: DUP6 000000bb: DUP9 000000bc: DUP4 000000bd: CALL 000000be: SWAP4 000000bf: POP 000000c0: POP 000000c1: POP 000000c2: POP 000000c3: POP 000000c4: PUSH32 0x6460c89442b43cbc9b774fd2029482ffb10e52e1505f468ad751988f191ffe31 000000e5: DUP3 000000e6: DUP3 000000e7: PUSH1 0x40 000000e9: MLOAD 000000ea: DUP1 000000eb: DUP1 000000ec: PUSH1 0x20 000000ee: ADD 000000ef: DUP4 000000f0: DUP2 000000f1: MSTORE 000000f2: PUSH1 0x20 000000f4: ADD 000000f5: DUP3 000000f6: DUP2 000000f7: SUB 000000f8: DUP3 000000f9: MSTORE 000000fa: DUP5 000000fb: DUP2 000000fc: DUP2 000000fd: MLOAD 000000fe: DUP2 000000ff: MSTORE 00000100: PUSH1 0x20 00000102: ADD 00000103: SWAP2 00000104: POP 00000105: DUP1 00000106: MLOAD 00000107: SWAP1 00000108: PUSH1 0x20 0000010a: ADD 0000010b: SWAP1 0000010c: DUP1 0000010d: DUP4 0000010e: DUP4 0000010f: DUP3 00000110: SWAP1 00000111: PUSH1 0x00 00000113: PUSH1 0x04 00000115: PUSH1 0x20 00000117: DUP5 00000118: PUSH1 0x1f 0000011a: ADD 0000011b: DIV 0000011c: PUSH1 0x0f 0000011e: MUL 0000011f: PUSH1 0x03 00000121: ADD 00000122: CALL 00000123: POP 00000124: SWAP1 00000125: POP 00000126: SWAP1 00000127: DUP2 00000128: ADD 00000129: SWAP1 0000012a: PUSH1 0x1f 0000012c: AND 0000012d: DUP1 0000012e: ISZERO 0000012f: PUSH2 0x014c 00000132: JUMPI 00000133: DUP1 00000134: DUP3 00000135: SUB 00000136: DUP1 00000137: MLOAD 00000138: PUSH1 0x01 0000013a: DUP4 0000013b: PUSH1 0x20 0000013d: SUB 0000013e: PUSH2 0x0100 00000141: EXP 00000142: SUB 00000143: NOT 00000144: AND 00000145: DUP2 00000146: MSTORE 00000147: PUSH1 0x20 00000149: ADD 0000014a: SWAP2 0000014b: POP 0000014c: JUMPDEST 0000014d: POP 0000014e: SWAP4 0000014f: POP 00000150: POP 00000151: POP 00000152: POP 00000153: PUSH1 0x40 00000155: MLOAD 00000156: DUP1 00000157: SWAP2 00000158: SUB 00000159: SWAP1 0000015a: LOG1 0000015b: PUSH1 0x02 0000015d: DUP1 0000015e: SLOAD 0000015f: PUSH1 0x01 00000161: DUP2 00000162: ADD 00000163: DUP1 00000164: DUP4 00000165: SSTORE 00000166: DUP3 00000167: DUP2 00000168: DUP4 00000169: DUP1 0000016a: ISZERO 0000016b: DUP3 0000016c: SWAP1 0000016d: GT 0000016e: PUSH2 0x01a6 00000171: JUMPI 00000172: PUSH1 0x02 00000174: MUL 00000175: DUP2 00000176: PUSH1 0x02 00000178: MUL 00000179: DUP4 0000017a: PUSH1 0x00 0000017c: MSTORE 0000017d: PUSH1 0x20 0000017f: PUSH1 0x00 00000181: KECCAK256 00000182: SWAP2 00000183: DUP3 00000184: ADD 00000185: SWAP2 00000186: ADD 00000187: PUSH2 0x01a6 0000018a: SWAP2 0000018b: SWAP1 0000018c: PUSH2 0x0235 0000018f: JUMP 00000190: JUMPDEST 00000191: POP 00000192: POP 00000193: PUSH1 0x20 00000195: DUP3 00000196: ADD 00000197: MLOAD 00000198: DUP2 00000199: PUSH1 0x01 0000019b: ADD 0000019c: PUSH1 0x00 0000019e: POP 0000019f: SSTORE 000001a0: POP 000001a1: POP 000001a2: POP 000001a3: POP 000001a4: POP 000001a5: JUMP 000001a6: JUMPDEST 000001a7: POP 000001a8: POP 000001a9: POP 000001aa: SWAP2 000001ab: SWAP1 000001ac: SWAP1 000001ad: PUSH1 0x00 000001af: MSTORE 000001b0: PUSH1 0x20 000001b2: PUSH1 0x00 000001b4: KECCAK256 000001b5: SWAP1 000001b6: PUSH1 0x02 000001b8: MUL 000001b9: ADD 000001ba: PUSH1 0x00 000001bc: POP 000001bd: PUSH1 0x40 000001bf: DUP1 000001c0: MLOAD 000001c1: DUP1 000001c2: DUP3 000001c3: ADD 000001c4: SWAP1 000001c5: SWAP2 000001c6: MSTORE 000001c7: DUP5 000001c8: DUP2 000001c9: MSTORE 000001ca: PUSH1 0x20 000001cc: DUP2 000001cd: DUP2 000001ce: ADD 000001cf: DUP6 000001d0: SWAP1 000001d1: MSTORE 000001d2: DUP6 000001d3: MLOAD 000001d4: DUP4 000001d5: SLOAD 000001d6: PUSH1 0x00 000001d8: DUP6 000001d9: DUP2 000001da: MSTORE 000001db: DUP4 000001dc: SWAP1 000001dd: KECCAK256 000001de: SWAP4 000001df: SWAP5 000001e0: SWAP4 000001e1: DUP5 000001e2: SWAP4 000001e3: PUSH1 0x02 000001e5: PUSH1 0x01 000001e7: DUP5 000001e8: AND 000001e9: ISZERO 000001ea: PUSH2 0x0100 000001ed: MUL 000001ee: PUSH1 0x00 000001f0: NOT 000001f1: ADD 000001f2: SWAP1 000001f3: SWAP4 000001f4: AND 000001f5: SWAP3 000001f6: SWAP1 000001f7: SWAP3 000001f8: DIV 000001f9: PUSH1 0x1f 000001fb: SWAP1 000001fc: DUP2 000001fd: ADD 000001fe: DUP4 000001ff: SWAP1 00000200: DIV 00000201: DUP3 00000202: ADD 00000203: SWAP4 00000204: SWAP3 00000205: DUP11 00000206: ADD 00000207: SWAP1 00000208: DUP4 00000209: SWAP1 0000020a: LT 0000020b: PUSH2 0x029d 0000020e: JUMPI 0000020f: DUP1 00000210: MLOAD 00000211: PUSH1 0xff 00000213: NOT 00000214: AND 00000215: DUP4 00000216: DUP1 00000217: ADD 00000218: OR 00000219: DUP6 0000021a: SSTORE 0000021b: JUMPDEST 0000021c: POP 0000021d: PUSH2 0x0190 00000220: SWAP3 00000221: SWAP2 00000222: POP 00000223: PUSH2 0x0285 00000226: JUMP 00000227: JUMPDEST 00000228: POP 00000229: POP 0000022a: PUSH1 0x00 0000022c: PUSH1 0x01 0000022e: SWAP2 0000022f: SWAP1 00000230: SWAP2 00000231: ADD 00000232: SWAP1 00000233: DUP2 00000234: SSTORE 00000235: JUMPDEST 00000236: DUP1 00000237: DUP3 00000238: GT 00000239: ISZERO 0000023a: PUSH2 0x0299 0000023d: JUMPI 0000023e: PUSH1 0x00 00000240: PUSH1 0x00 00000242: DUP3 00000243: ADD 00000244: PUSH1 0x00 00000246: POP 00000247: DUP1 00000248: SLOAD 00000249: PUSH1 0x01 0000024b: DUP2 0000024c: PUSH1 0x01 0000024e: AND 0000024f: ISZERO 00000250: PUSH2 0x0100 00000253: MUL 00000254: SUB 00000255: AND 00000256: PUSH1 0x02 00000258: SWAP1 00000259: DIV 0000025a: PUSH1 0x00 0000025c: DUP3 0000025d: SSTORE 0000025e: DUP1 0000025f: PUSH1 0x1f 00000261: LT 00000262: PUSH2 0x026b 00000265: JUMPI 00000266: POP 00000267: PUSH2 0x0227 0000026a: JUMP 0000026b: JUMPDEST 0000026c: PUSH1 0x1f 0000026e: ADD 0000026f: PUSH1 0x20 00000271: SWAP1 00000272: DIV 00000273: SWAP1 00000274: PUSH1 0x00 00000276: MSTORE 00000277: PUSH1 0x20 00000279: PUSH1 0x00 0000027b: KECCAK256 0000027c: SWAP1 0000027d: DUP2 0000027e: ADD 0000027f: SWAP1 00000280: PUSH2 0x0227 00000283: SWAP2 00000284: SWAP1 00000285: JUMPDEST 00000286: DUP1 00000287: DUP3 00000288: GT 00000289: ISZERO 0000028a: PUSH2 0x0299 0000028d: JUMPI 0000028e: PUSH1 0x00 00000290: DUP2 00000291: SSTORE 00000292: PUSH1 0x01 00000294: ADD 00000295: PUSH2 0x0285 00000298: JUMP 00000299: JUMPDEST 0000029a: POP 0000029b: SWAP1 0000029c: JUMP 0000029d: JUMPDEST 0000029e: DUP3 0000029f: DUP1 000002a0: ADD 000002a1: PUSH1 0x01 000002a3: ADD 000002a4: DUP6 000002a5: SSTORE 000002a6: DUP3 000002a7: ISZERO 000002a8: PUSH2 0x021b 000002ab: JUMPI 000002ac: SWAP2 000002ad: DUP3 000002ae: ADD 000002af: JUMPDEST 000002b0: DUP3 000002b1: DUP2 000002b2: GT 000002b3: ISZERO 000002b4: PUSH2 0x021b 000002b7: JUMPI 000002b8: DUP3 000002b9: MLOAD 000002ba: DUP3 000002bb: PUSH1 0x00 000002bd: POP 000002be: SSTORE 000002bf: SWAP2 000002c0: PUSH1 0x20 000002c2: ADD 000002c3: SWAP2 000002c4: SWAP1 000002c5: PUSH1 0x01 000002c7: ADD 000002c8: SWAP1 000002c9: PUSH2 0x02af 000002cc: JUMP 000002cd: JUMPDEST 000002ce: 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: 0x083a9adf118dee51c5290e4bdb81cba2bc0790fcc2521ec1c564c45f69ee4a0b
call_targets:
0xc7671564ff10ed69dbae7def7ac1a0ff0860c348
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x083a9adf118dee51c5290e4bdb81cba2bc0790fcc2521ec1c564c45f69ee4a0b",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xc7671564ff10ed69dbae7def7ac1a0ff0860c348"
],
"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": "0xb5aebc80",
"selector": "0xb5aebc80",
"calldata_variants": [
"0xb5aebc80",
"0xb5aebc800000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 189,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 290,
"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: 0x083a9adf118dee51c5290e4bdb81cba2bc0790fcc2521ec1c564c45f69ee4a0b
call_targets:
0xc7671564ff10ed69dbae7def7ac1a0ff0860c348
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x083a9adf118dee51c5290e4bdb81cba2bc0790fcc2521ec1c564c45f69ee4a0b",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xc7671564ff10ed69dbae7def7ac1a0ff0860c348"
],
"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": "0xb5aebc80",
"selector": "0xb5aebc80",
"calldata_variants": [
"0xb5aebc80",
"0xb5aebc800000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 189,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 290,
"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: 0xd06364fc503eed9112c6762290e4f2d10afdd5512bb95a2edf45e699b5398f23
validation_json{
"sink": "SELFDESTRUCT",
"errors": 0,
"status": "unknown",
"attempts": 4,
"trace_id": "0xd06364fc503eed9112c6762290e4f2d10afdd5512bb95a2edf45e699b5398f23",
"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": "0xb5aebc80",
"selector": "0xb5aebc80",
"calldata_variants": [
"0xb5aebc80",
"0xb5aebc800000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [],
"selfdestruct_count": 1
}
|