019b3844-b963-70f2-a78d-b52b0a413ac8
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 |
|---|---|---|---|---|
| 19827 | artifact.fetch | complete | 1 / 3 | 3 months ago |
| 19828 | tool.cast_disasm | complete | 1 / 3 | 3 months ago |
| 110386 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 110387 | capability.graph | complete | 1 / 3 | 1 week ago |
| 110388 | detector.run | complete | 1 / 3 | 1 week ago |
| 110389 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
No codex job recorded yet.
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: PUSH2 0x0038 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH1 0xe0 00000012: SHR 00000013: DUP1 00000014: PUSH4 0x715018a6 00000019: EQ 0000001a: PUSH2 0x00b1 0000001d: JUMPI 0000001e: DUP1 0000001f: PUSH4 0x8da5cb5b 00000024: EQ 00000025: PUSH2 0x00c8 00000028: JUMPI 00000029: DUP1 0000002a: PUSH4 0xf2fde38b 0000002f: EQ 00000030: PUSH2 0x00f4 00000033: JUMPI 00000034: PUSH2 0x003f 00000037: JUMP 00000038: JUMPDEST 00000039: CALLDATASIZE 0000003a: PUSH2 0x003f 0000003d: JUMPI 0000003e: STOP 0000003f: JUMPDEST 00000040: PUSH1 0x00 00000042: PUSH2 0x0049 00000045: PUSH2 0x0114 00000048: JUMP 00000049: JUMPDEST 0000004a: PUSH1 0x00 0000004c: DUP1 0000004d: CALLDATALOAD 0000004e: PUSH1 0x01 00000050: PUSH1 0x01 00000052: PUSH1 0xe0 00000054: SHL 00000055: SUB 00000056: NOT 00000057: AND 00000058: DUP2 00000059: MSTORE 0000005a: PUSH1 0x20 0000005c: DUP3 0000005d: SWAP1 0000005e: MSTORE 0000005f: PUSH1 0x40 00000061: SWAP1 00000062: KECCAK256 00000063: SLOAD 00000064: SWAP1 00000065: SWAP2 00000066: POP 00000067: PUSH1 0x01 00000069: PUSH1 0x01 0000006b: PUSH1 0xa0 0000006d: SHL 0000006e: SUB 0000006f: AND 00000070: DUP1 00000071: PUSH2 0x008d 00000074: JUMPI 00000075: PUSH1 0x40 00000077: MLOAD 00000078: PUSH4 0x1535ac5f 0000007d: PUSH1 0xe3 0000007f: SHL 00000080: DUP2 00000081: MSTORE 00000082: PUSH1 0x04 00000084: ADD 00000085: PUSH1 0x40 00000087: MLOAD 00000088: DUP1 00000089: SWAP2 0000008a: SUB 0000008b: SWAP1 0000008c: REVERT 0000008d: JUMPDEST 0000008e: CALLDATASIZE 0000008f: PUSH1 0x00 00000091: DUP1 00000092: CALLDATACOPY 00000093: PUSH1 0x00 00000095: DUP1 00000096: CALLDATASIZE 00000097: PUSH1 0x00 00000099: DUP5 0000009a: GAS 0000009b: DELEGATECALL 0000009c: RETURNDATASIZE 0000009d: PUSH1 0x00 0000009f: DUP1 000000a0: RETURNDATACOPY 000000a1: DUP1 000000a2: DUP1 000000a3: ISZERO 000000a4: PUSH2 0x00ac 000000a7: JUMPI 000000a8: RETURNDATASIZE 000000a9: PUSH1 0x00 000000ab: RETURN 000000ac: JUMPDEST 000000ad: RETURNDATASIZE 000000ae: PUSH1 0x00 000000b0: REVERT 000000b1: JUMPDEST 000000b2: CALLVALUE 000000b3: DUP1 000000b4: ISZERO 000000b5: PUSH2 0x00bd 000000b8: JUMPI 000000b9: PUSH1 0x00 000000bb: DUP1 000000bc: REVERT 000000bd: JUMPDEST 000000be: POP 000000bf: PUSH2 0x00c6 000000c2: PUSH2 0x0138 000000c5: JUMP 000000c6: JUMPDEST 000000c7: STOP 000000c8: JUMPDEST 000000c9: CALLVALUE 000000ca: DUP1 000000cb: ISZERO 000000cc: PUSH2 0x00d4 000000cf: JUMPI 000000d0: PUSH1 0x00 000000d2: DUP1 000000d3: REVERT 000000d4: JUMPDEST 000000d5: POP 000000d6: PUSH1 0x00 000000d8: SLOAD 000000d9: PUSH1 0x40 000000db: DUP1 000000dc: MLOAD 000000dd: PUSH1 0x01 000000df: PUSH1 0x01 000000e1: PUSH1 0xa0 000000e3: SHL 000000e4: SUB 000000e5: SWAP1 000000e6: SWAP3 000000e7: AND 000000e8: DUP3 000000e9: MSTORE 000000ea: MLOAD 000000eb: SWAP1 000000ec: DUP2 000000ed: SWAP1 000000ee: SUB 000000ef: PUSH1 0x20 000000f1: ADD 000000f2: SWAP1 000000f3: RETURN 000000f4: JUMPDEST 000000f5: CALLVALUE 000000f6: DUP1 000000f7: ISZERO 000000f8: PUSH2 0x0100 000000fb: JUMPI 000000fc: PUSH1 0x00 000000fe: DUP1 000000ff: REVERT 00000100: JUMPDEST 00000101: POP 00000102: PUSH2 0x00c6 00000105: PUSH2 0x010f 00000108: CALLDATASIZE 00000109: PUSH1 0x04 0000010b: PUSH2 0x02e1 0000010e: JUMP 0000010f: JUMPDEST 00000110: PUSH2 0x014c 00000113: JUMP 00000114: JUMPDEST 00000115: PUSH32 0x8618056e8e7c46bf73cccb98ba2d7cba0df9a6dfd69a0a034cc4b00b442b1af5 00000136: SWAP1 00000137: JUMP 00000138: JUMPDEST 00000139: PUSH2 0x0140 0000013c: PUSH2 0x01e8 0000013f: JUMP 00000140: JUMPDEST 00000141: PUSH2 0x014a 00000144: PUSH1 0x00 00000146: PUSH2 0x0242 00000149: JUMP 0000014a: JUMPDEST 0000014b: JUMP 0000014c: JUMPDEST 0000014d: PUSH2 0x0154 00000150: PUSH2 0x01e8 00000153: JUMP 00000154: JUMPDEST 00000155: PUSH1 0x01 00000157: PUSH1 0x01 00000159: PUSH1 0xa0 0000015b: SHL 0000015c: SUB 0000015d: DUP2 0000015e: AND 0000015f: PUSH2 0x01be 00000162: JUMPI 00000163: PUSH1 0x40 00000165: MLOAD 00000166: PUSH3 0x461bcd 0000016a: PUSH1 0xe5 0000016c: SHL 0000016d: DUP2 0000016e: MSTORE 0000016f: PUSH1 0x20 00000171: PUSH1 0x04 00000173: DUP3 00000174: ADD 00000175: MSTORE 00000176: PUSH1 0x26 00000178: PUSH1 0x24 0000017a: DUP3 0000017b: ADD 0000017c: MSTORE 0000017d: PUSH32 0x4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061 0000019e: PUSH1 0x44 000001a0: DUP3 000001a1: ADD 000001a2: MSTORE 000001a3: PUSH6 0x646472657373 000001aa: PUSH1 0xd0 000001ac: SHL 000001ad: PUSH1 0x64 000001af: DUP3 000001b0: ADD 000001b1: MSTORE 000001b2: PUSH1 0x84 000001b4: ADD 000001b5: JUMPDEST 000001b6: PUSH1 0x40 000001b8: MLOAD 000001b9: DUP1 000001ba: SWAP2 000001bb: SUB 000001bc: SWAP1 000001bd: REVERT 000001be: JUMPDEST 000001bf: PUSH2 0x01c7 000001c2: DUP2 000001c3: PUSH2 0x0242 000001c6: JUMP 000001c7: JUMPDEST 000001c8: POP 000001c9: JUMP 000001ca: JUMPDEST 000001cb: PUSH1 0x00 000001cd: PUSH2 0x01df 000001d0: DUP4 000001d1: PUSH1 0x01 000001d3: PUSH1 0x01 000001d5: PUSH1 0xa0 000001d7: SHL 000001d8: SUB 000001d9: DUP5 000001da: AND 000001db: PUSH2 0x0292 000001de: JUMP 000001df: JUMPDEST 000001e0: SWAP1 000001e1: POP 000001e2: JUMPDEST 000001e3: SWAP3 000001e4: SWAP2 000001e5: POP 000001e6: POP 000001e7: JUMP 000001e8: JUMPDEST 000001e9: PUSH1 0x00 000001eb: SLOAD 000001ec: PUSH1 0x01 000001ee: PUSH1 0x01 000001f0: PUSH1 0xa0 000001f2: SHL 000001f3: SUB 000001f4: AND 000001f5: CALLER 000001f6: EQ 000001f7: PUSH2 0x014a 000001fa: JUMPI 000001fb: PUSH1 0x40 000001fd: MLOAD 000001fe: PUSH3 0x461bcd 00000202: PUSH1 0xe5 00000204: SHL 00000205: DUP2 00000206: MSTORE 00000207: PUSH1 0x20 00000209: PUSH1 0x04 0000020b: DUP3 0000020c: ADD 0000020d: DUP2 0000020e: SWAP1 0000020f: MSTORE 00000210: PUSH1 0x24 00000212: DUP3 00000213: ADD 00000214: MSTORE 00000215: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572 00000236: PUSH1 0x44 00000238: DUP3 00000239: ADD 0000023a: MSTORE 0000023b: PUSH1 0x64 0000023d: ADD 0000023e: PUSH2 0x01b5 00000241: JUMP 00000242: JUMPDEST 00000243: PUSH1 0x00 00000245: DUP1 00000246: SLOAD 00000247: PUSH1 0x01 00000249: PUSH1 0x01 0000024b: PUSH1 0xa0 0000024d: SHL 0000024e: SUB 0000024f: DUP4 00000250: DUP2 00000251: AND 00000252: PUSH1 0x01 00000254: PUSH1 0x01 00000256: PUSH1 0xa0 00000258: SHL 00000259: SUB 0000025a: NOT 0000025b: DUP4 0000025c: AND 0000025d: DUP2 0000025e: OR 0000025f: DUP5 00000260: SSTORE 00000261: PUSH1 0x40 00000263: MLOAD 00000264: SWAP2 00000265: SWAP1 00000266: SWAP3 00000267: AND 00000268: SWAP3 00000269: DUP4 0000026a: SWAP2 0000026b: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 0000028c: SWAP2 0000028d: SWAP1 0000028e: LOG3 0000028f: POP 00000290: POP 00000291: JUMP 00000292: JUMPDEST 00000293: PUSH1 0x00 00000295: DUP2 00000296: DUP2 00000297: MSTORE 00000298: PUSH1 0x01 0000029a: DUP4 0000029b: ADD 0000029c: PUSH1 0x20 0000029e: MSTORE 0000029f: PUSH1 0x40 000002a1: DUP2 000002a2: KECCAK256 000002a3: SLOAD 000002a4: PUSH2 0x02d9 000002a7: JUMPI 000002a8: POP 000002a9: DUP2 000002aa: SLOAD 000002ab: PUSH1 0x01 000002ad: DUP2 000002ae: DUP2 000002af: ADD 000002b0: DUP5 000002b1: SSTORE 000002b2: PUSH1 0x00 000002b4: DUP5 000002b5: DUP2 000002b6: MSTORE 000002b7: PUSH1 0x20 000002b9: DUP1 000002ba: DUP3 000002bb: KECCAK256 000002bc: SWAP1 000002bd: SWAP4 000002be: ADD 000002bf: DUP5 000002c0: SWAP1 000002c1: SSTORE 000002c2: DUP5 000002c3: SLOAD 000002c4: DUP5 000002c5: DUP3 000002c6: MSTORE 000002c7: DUP3 000002c8: DUP7 000002c9: ADD 000002ca: SWAP1 000002cb: SWAP4 000002cc: MSTORE 000002cd: PUSH1 0x40 000002cf: SWAP1 000002d0: KECCAK256 000002d1: SWAP2 000002d2: SWAP1 000002d3: SWAP2 000002d4: SSTORE 000002d5: PUSH2 0x01e2 000002d8: JUMP 000002d9: JUMPDEST 000002da: POP 000002db: PUSH1 0x00 000002dd: PUSH2 0x01e2 000002e0: JUMP 000002e1: JUMPDEST 000002e2: PUSH1 0x00 000002e4: PUSH1 0x20 000002e6: DUP3 000002e7: DUP5 000002e8: SUB 000002e9: SLT 000002ea: ISZERO 000002eb: PUSH2 0x02f3 000002ee: JUMPI 000002ef: PUSH1 0x00 000002f1: DUP1 000002f2: REVERT 000002f3: JUMPDEST 000002f4: DUP2 000002f5: CALLDATALOAD 000002f6: PUSH1 0x01 000002f8: PUSH1 0x01 000002fa: PUSH1 0xa0 000002fc: SHL 000002fd: SUB 000002fe: DUP2 000002ff: AND 00000300: DUP2 00000301: EQ 00000302: PUSH2 0x030a 00000305: JUMPI 00000306: PUSH1 0x00 00000308: DUP1 00000309: REVERT 0000030a: JUMPDEST 0000030b: SWAP4 0000030c: SWAP3 0000030d: POP 0000030e: POP 0000030f: POP 00000310: JUMP 00000311: INVALID 00000312: LOG2 00000313: PUSH5 0x6970667358 00000319: UNKNOWN(0x22) 0000031a: SLT 0000031b: KECCAK256 0000031c: UNKNOWN(0xE2) 0000031d: PUSH30 0xd289ceaeb1584af9c1d1b0cfec58418dc2f8e7fcbce9192ac267afa0d2ca 0000033c: PUSH5 0x736f6c6343 00000342: STOP 00000343: ADDMOD 00000344: UNKNOWN(0x0C) 00000345: STOP 00000346: CALLER
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 |
|---|---|---|---|---|---|---|---|
| critical | upgradeability | detector | Untrusted DELEGATECALL target reachable | 70 | no | no |
viewtrace_id: 0x7bcccfd22738d5ded079d98f99d2f0b212b0c4d3fc070998434aecec50d394d7
validation_json{
"sink": "DELEGATECALL",
"errors": 0,
"status": "unknown",
"attempts": 36,
"trace_id": "0x7bcccfd22738d5ded079d98f99d2f0b212b0c4d3fc070998434aecec50d394d7",
"confirmed": false,
"trace_mode": "callTracer",
"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": "0x715018a6",
"selector": "0x715018a6",
"calldata_variants": [
"0x715018a6",
"0x715018a60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8da5cb5b",
"selector": "0x8da5cb5b",
"calldata_variants": [
"0x8da5cb5b",
"0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 155,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
}
],
"guards_detected": [],
"delegatecall_count": 1,
"untrusted_delegatecall_count": 1
}
|