019b3844-a1d1-71e8-a541-699bc2277d2a
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 |
|---|---|---|---|---|
| 15529 | artifact.fetch | complete | 1 / 3 | 3 months ago |
| 15530 | tool.cast_disasm | complete | 1 / 3 | 3 months ago |
| 58825 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 58826 | capability.graph | complete | 1 / 3 | 1 week ago |
| 58827 | detector.run | complete | 1 / 3 | 1 week ago |
| 58828 | 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 0x0082 0000000c: JUMPI 0000000d: PUSH4 0xffffffff 00000012: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 00000030: PUSH1 0x00 00000032: CALLDATALOAD 00000033: DIV 00000034: AND 00000035: PUSH4 0x025313a2 0000003a: DUP2 0000003b: EQ 0000003c: PUSH2 0x00c8 0000003f: JUMPI 00000040: DUP1 00000041: PUSH4 0x3659cfe6 00000046: EQ 00000047: PUSH2 0x00f9 0000004a: JUMPI 0000004b: DUP1 0000004c: PUSH4 0x4555d5c9 00000051: EQ 00000052: PUSH2 0x011c 00000055: JUMPI 00000056: DUP1 00000057: PUSH4 0x4f1ef286 0000005c: EQ 0000005d: PUSH2 0x0143 00000060: JUMPI 00000061: DUP1 00000062: PUSH4 0x5c60da1b 00000067: EQ 00000068: PUSH2 0x019d 0000006b: JUMPI 0000006c: DUP1 0000006d: PUSH4 0x6fde8202 00000072: EQ 00000073: PUSH2 0x01b2 00000076: JUMPI 00000077: DUP1 00000078: PUSH4 0xf1739cae 0000007d: EQ 0000007e: PUSH2 0x01c7 00000081: JUMPI 00000082: JUMPDEST 00000083: PUSH1 0x00 00000085: PUSH2 0x008c 00000088: PUSH2 0x01e8 0000008b: JUMP 0000008c: JUMPDEST 0000008d: SWAP1 0000008e: POP 0000008f: PUSH1 0x01 00000091: PUSH1 0xa0 00000093: PUSH1 0x02 00000095: EXP 00000096: SUB 00000097: DUP2 00000098: AND 00000099: ISZERO 0000009a: ISZERO 0000009b: PUSH2 0x00a3 0000009e: JUMPI 0000009f: PUSH1 0x00 000000a1: DUP1 000000a2: REVERT 000000a3: JUMPDEST 000000a4: PUSH1 0x40 000000a6: MLOAD 000000a7: CALLDATASIZE 000000a8: PUSH1 0x00 000000aa: DUP3 000000ab: CALLDATACOPY 000000ac: PUSH1 0x00 000000ae: DUP1 000000af: CALLDATASIZE 000000b0: DUP4 000000b1: DUP6 000000b2: GAS 000000b3: DELEGATECALL 000000b4: RETURNDATASIZE 000000b5: DUP1 000000b6: PUSH1 0x00 000000b8: DUP5 000000b9: RETURNDATACOPY 000000ba: DUP2 000000bb: DUP1 000000bc: ISZERO 000000bd: PUSH2 0x00c4 000000c0: JUMPI 000000c1: DUP2 000000c2: DUP5 000000c3: RETURN 000000c4: JUMPDEST 000000c5: DUP2 000000c6: DUP5 000000c7: REVERT 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: PUSH2 0x00dd 000000d9: PUSH2 0x01f7 000000dc: JUMP 000000dd: JUMPDEST 000000de: PUSH1 0x40 000000e0: DUP1 000000e1: MLOAD 000000e2: PUSH1 0x01 000000e4: PUSH1 0xa0 000000e6: PUSH1 0x02 000000e8: EXP 000000e9: SUB 000000ea: SWAP1 000000eb: SWAP3 000000ec: AND 000000ed: DUP3 000000ee: MSTORE 000000ef: MLOAD 000000f0: SWAP1 000000f1: DUP2 000000f2: SWAP1 000000f3: SUB 000000f4: PUSH1 0x20 000000f6: ADD 000000f7: SWAP1 000000f8: RETURN 000000f9: JUMPDEST 000000fa: CALLVALUE 000000fb: DUP1 000000fc: ISZERO 000000fd: PUSH2 0x0105 00000100: JUMPI 00000101: PUSH1 0x00 00000103: DUP1 00000104: REVERT 00000105: JUMPDEST 00000106: POP 00000107: PUSH2 0x011a 0000010a: PUSH1 0x01 0000010c: PUSH1 0xa0 0000010e: PUSH1 0x02 00000110: EXP 00000111: SUB 00000112: PUSH1 0x04 00000114: CALLDATALOAD 00000115: AND 00000116: PUSH2 0x0206 00000119: JUMP 0000011a: JUMPDEST 0000011b: STOP 0000011c: JUMPDEST 0000011d: CALLVALUE 0000011e: DUP1 0000011f: ISZERO 00000120: PUSH2 0x0128 00000123: JUMPI 00000124: PUSH1 0x00 00000126: DUP1 00000127: REVERT 00000128: JUMPDEST 00000129: POP 0000012a: PUSH2 0x0131 0000012d: PUSH2 0x0239 00000130: JUMP 00000131: JUMPDEST 00000132: PUSH1 0x40 00000134: DUP1 00000135: MLOAD 00000136: SWAP2 00000137: DUP3 00000138: MSTORE 00000139: MLOAD 0000013a: SWAP1 0000013b: DUP2 0000013c: SWAP1 0000013d: SUB 0000013e: PUSH1 0x20 00000140: ADD 00000141: SWAP1 00000142: RETURN 00000143: JUMPDEST 00000144: PUSH1 0x40 00000146: DUP1 00000147: MLOAD 00000148: PUSH1 0x20 0000014a: PUSH1 0x04 0000014c: PUSH1 0x24 0000014e: DUP1 0000014f: CALLDATALOAD 00000150: DUP3 00000151: DUP2 00000152: ADD 00000153: CALLDATALOAD 00000154: PUSH1 0x1f 00000156: DUP2 00000157: ADD 00000158: DUP6 00000159: SWAP1 0000015a: DIV 0000015b: DUP6 0000015c: MUL 0000015d: DUP7 0000015e: ADD 0000015f: DUP6 00000160: ADD 00000161: SWAP1 00000162: SWAP7 00000163: MSTORE 00000164: DUP6 00000165: DUP6 00000166: MSTORE 00000167: PUSH2 0x011a 0000016a: SWAP6 0000016b: DUP4 0000016c: CALLDATALOAD 0000016d: PUSH1 0x01 0000016f: PUSH1 0xa0 00000171: PUSH1 0x02 00000173: EXP 00000174: SUB 00000175: AND 00000176: SWAP6 00000177: CALLDATASIZE 00000178: SWAP6 00000179: PUSH1 0x44 0000017b: SWAP5 0000017c: SWAP2 0000017d: SWAP4 0000017e: SWAP1 0000017f: SWAP2 00000180: ADD 00000181: SWAP2 00000182: SWAP1 00000183: DUP2 00000184: SWAP1 00000185: DUP5 00000186: ADD 00000187: DUP4 00000188: DUP3 00000189: DUP1 0000018a: DUP3 0000018b: DUP5 0000018c: CALLDATACOPY 0000018d: POP 0000018e: SWAP5 0000018f: SWAP8 00000190: POP 00000191: PUSH2 0x023e 00000194: SWAP7 00000195: POP 00000196: POP 00000197: POP 00000198: POP 00000199: POP 0000019a: POP 0000019b: POP 0000019c: JUMP 0000019d: JUMPDEST 0000019e: CALLVALUE 0000019f: DUP1 000001a0: ISZERO 000001a1: PUSH2 0x01a9 000001a4: JUMPI 000001a5: PUSH1 0x00 000001a7: DUP1 000001a8: REVERT 000001a9: JUMPDEST 000001aa: POP 000001ab: PUSH2 0x00dd 000001ae: PUSH2 0x01e8 000001b1: JUMP 000001b2: JUMPDEST 000001b3: CALLVALUE 000001b4: DUP1 000001b5: ISZERO 000001b6: PUSH2 0x01be 000001b9: JUMPI 000001ba: PUSH1 0x00 000001bc: DUP1 000001bd: REVERT 000001be: JUMPDEST 000001bf: POP 000001c0: PUSH2 0x00dd 000001c3: PUSH2 0x02f2 000001c6: JUMP 000001c7: JUMPDEST 000001c8: CALLVALUE 000001c9: DUP1 000001ca: ISZERO 000001cb: PUSH2 0x01d3 000001ce: JUMPI 000001cf: PUSH1 0x00 000001d1: DUP1 000001d2: REVERT 000001d3: JUMPDEST 000001d4: POP 000001d5: PUSH2 0x011a 000001d8: PUSH1 0x01 000001da: PUSH1 0xa0 000001dc: PUSH1 0x02 000001de: EXP 000001df: SUB 000001e0: PUSH1 0x04 000001e2: CALLDATALOAD 000001e3: AND 000001e4: PUSH2 0x0301 000001e7: JUMP 000001e8: JUMPDEST 000001e9: PUSH1 0x00 000001eb: SLOAD 000001ec: PUSH1 0x01 000001ee: PUSH1 0xa0 000001f0: PUSH1 0x02 000001f2: EXP 000001f3: SUB 000001f4: AND 000001f5: SWAP1 000001f6: JUMP 000001f7: JUMPDEST 000001f8: PUSH1 0x00 000001fa: PUSH2 0x0201 000001fd: PUSH2 0x02f2 00000200: JUMP 00000201: JUMPDEST 00000202: SWAP1 00000203: POP 00000204: SWAP1 00000205: JUMP 00000206: JUMPDEST 00000207: PUSH2 0x020e 0000020a: PUSH2 0x01f7 0000020d: JUMP 0000020e: JUMPDEST 0000020f: PUSH1 0x01 00000211: PUSH1 0xa0 00000213: PUSH1 0x02 00000215: EXP 00000216: SUB 00000217: AND 00000218: CALLER 00000219: PUSH1 0x01 0000021b: PUSH1 0xa0 0000021d: PUSH1 0x02 0000021f: EXP 00000220: SUB 00000221: AND 00000222: EQ 00000223: ISZERO 00000224: ISZERO 00000225: PUSH2 0x022d 00000228: JUMPI 00000229: PUSH1 0x00 0000022b: DUP1 0000022c: REVERT 0000022d: JUMPDEST 0000022e: PUSH2 0x0236 00000231: DUP2 00000232: PUSH2 0x0391 00000235: JUMP 00000236: JUMPDEST 00000237: POP 00000238: JUMP 00000239: JUMPDEST 0000023a: PUSH1 0x02 0000023c: SWAP1 0000023d: JUMP 0000023e: JUMPDEST 0000023f: PUSH2 0x0246 00000242: PUSH2 0x01f7 00000245: JUMP 00000246: JUMPDEST 00000247: PUSH1 0x01 00000249: PUSH1 0xa0 0000024b: PUSH1 0x02 0000024d: EXP 0000024e: SUB 0000024f: AND 00000250: CALLER 00000251: PUSH1 0x01 00000253: PUSH1 0xa0 00000255: PUSH1 0x02 00000257: EXP 00000258: SUB 00000259: AND 0000025a: EQ 0000025b: ISZERO 0000025c: ISZERO 0000025d: PUSH2 0x0265 00000260: JUMPI 00000261: PUSH1 0x00 00000263: DUP1 00000264: REVERT 00000265: JUMPDEST 00000266: PUSH2 0x026e 00000269: DUP3 0000026a: PUSH2 0x0206 0000026d: JUMP 0000026e: JUMPDEST 0000026f: ADDRESS 00000270: PUSH1 0x01 00000272: PUSH1 0xa0 00000274: PUSH1 0x02 00000276: EXP 00000277: SUB 00000278: AND 00000279: DUP2 0000027a: PUSH1 0x40 0000027c: MLOAD 0000027d: DUP1 0000027e: DUP3 0000027f: DUP1 00000280: MLOAD 00000281: SWAP1 00000282: PUSH1 0x20 00000284: ADD 00000285: SWAP1 00000286: DUP1 00000287: DUP4 00000288: DUP4 00000289: PUSH1 0x00 0000028b: JUMPDEST 0000028c: DUP4 0000028d: DUP2 0000028e: LT 0000028f: ISZERO 00000290: PUSH2 0x02a3 00000293: JUMPI 00000294: DUP2 00000295: DUP2 00000296: ADD 00000297: MLOAD 00000298: DUP4 00000299: DUP3 0000029a: ADD 0000029b: MSTORE 0000029c: PUSH1 0x20 0000029e: ADD 0000029f: PUSH2 0x028b 000002a2: JUMP 000002a3: JUMPDEST 000002a4: POP 000002a5: POP 000002a6: POP 000002a7: POP 000002a8: SWAP1 000002a9: POP 000002aa: SWAP1 000002ab: DUP2 000002ac: ADD 000002ad: SWAP1 000002ae: PUSH1 0x1f 000002b0: AND 000002b1: DUP1 000002b2: ISZERO 000002b3: PUSH2 0x02d0 000002b6: JUMPI 000002b7: DUP1 000002b8: DUP3 000002b9: SUB 000002ba: DUP1 000002bb: MLOAD 000002bc: PUSH1 0x01 000002be: DUP4 000002bf: PUSH1 0x20 000002c1: SUB 000002c2: PUSH2 0x0100 000002c5: EXP 000002c6: SUB 000002c7: NOT 000002c8: AND 000002c9: DUP2 000002ca: MSTORE 000002cb: PUSH1 0x20 000002cd: ADD 000002ce: SWAP2 000002cf: POP 000002d0: JUMPDEST 000002d1: POP 000002d2: SWAP2 000002d3: POP 000002d4: POP 000002d5: PUSH1 0x00 000002d7: PUSH1 0x40 000002d9: MLOAD 000002da: DUP1 000002db: DUP4 000002dc: SUB 000002dd: DUP2 000002de: DUP6 000002df: GAS 000002e0: DELEGATECALL 000002e1: SWAP2 000002e2: POP 000002e3: POP 000002e4: ISZERO 000002e5: ISZERO 000002e6: PUSH2 0x02ee 000002e9: JUMPI 000002ea: PUSH1 0x00 000002ec: DUP1 000002ed: REVERT 000002ee: JUMPDEST 000002ef: POP 000002f0: POP 000002f1: JUMP 000002f2: JUMPDEST 000002f3: PUSH1 0x01 000002f5: SLOAD 000002f6: PUSH1 0x01 000002f8: PUSH1 0xa0 000002fa: PUSH1 0x02 000002fc: EXP 000002fd: SUB 000002fe: AND 000002ff: SWAP1 00000300: JUMP 00000301: JUMPDEST 00000302: PUSH2 0x0309 00000305: PUSH2 0x01f7 00000308: JUMP 00000309: JUMPDEST 0000030a: PUSH1 0x01 0000030c: PUSH1 0xa0 0000030e: PUSH1 0x02 00000310: EXP 00000311: SUB 00000312: AND 00000313: CALLER 00000314: PUSH1 0x01 00000316: PUSH1 0xa0 00000318: PUSH1 0x02 0000031a: EXP 0000031b: SUB 0000031c: AND 0000031d: EQ 0000031e: ISZERO 0000031f: ISZERO 00000320: PUSH2 0x0328 00000323: JUMPI 00000324: PUSH1 0x00 00000326: DUP1 00000327: REVERT 00000328: JUMPDEST 00000329: PUSH1 0x01 0000032b: PUSH1 0xa0 0000032d: PUSH1 0x02 0000032f: EXP 00000330: SUB 00000331: DUP2 00000332: AND 00000333: ISZERO 00000334: ISZERO 00000335: PUSH2 0x033d 00000338: JUMPI 00000339: PUSH1 0x00 0000033b: DUP1 0000033c: REVERT 0000033d: JUMPDEST 0000033e: PUSH32 0x5a3e66efaa1e445ebd894728a69d6959842ea1e97bd79b892797106e270efcd9 0000035f: PUSH2 0x0366 00000362: PUSH2 0x01f7 00000365: JUMP 00000366: JUMPDEST 00000367: PUSH1 0x40 00000369: DUP1 0000036a: MLOAD 0000036b: PUSH1 0x01 0000036d: PUSH1 0xa0 0000036f: PUSH1 0x02 00000371: EXP 00000372: SUB 00000373: SWAP3 00000374: DUP4 00000375: AND 00000376: DUP2 00000377: MSTORE 00000378: SWAP2 00000379: DUP5 0000037a: AND 0000037b: PUSH1 0x20 0000037d: DUP4 0000037e: ADD 0000037f: MSTORE 00000380: DUP1 00000381: MLOAD 00000382: SWAP2 00000383: DUP3 00000384: SWAP1 00000385: SUB 00000386: ADD 00000387: SWAP1 00000388: LOG1 00000389: PUSH2 0x0236 0000038c: DUP2 0000038d: PUSH2 0x0401 00000390: JUMP 00000391: JUMPDEST 00000392: PUSH1 0x00 00000394: SLOAD 00000395: PUSH1 0x01 00000397: PUSH1 0xa0 00000399: PUSH1 0x02 0000039b: EXP 0000039c: SUB 0000039d: DUP3 0000039e: DUP2 0000039f: AND 000003a0: SWAP2 000003a1: AND 000003a2: EQ 000003a3: ISZERO 000003a4: PUSH2 0x03ac 000003a7: JUMPI 000003a8: PUSH1 0x00 000003aa: DUP1 000003ab: REVERT 000003ac: JUMPDEST 000003ad: PUSH1 0x00 000003af: DUP1 000003b0: SLOAD 000003b1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000003c6: NOT 000003c7: AND 000003c8: PUSH1 0x01 000003ca: PUSH1 0xa0 000003cc: PUSH1 0x02 000003ce: EXP 000003cf: SUB 000003d0: DUP4 000003d1: AND 000003d2: SWAP1 000003d3: DUP2 000003d4: OR 000003d5: DUP3 000003d6: SSTORE 000003d7: PUSH1 0x40 000003d9: MLOAD 000003da: SWAP1 000003db: SWAP2 000003dc: PUSH32 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b 000003fd: SWAP2 000003fe: LOG2 000003ff: POP 00000400: JUMP 00000401: JUMPDEST 00000402: PUSH1 0x01 00000404: DUP1 00000405: SLOAD 00000406: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000041b: NOT 0000041c: AND 0000041d: PUSH1 0x01 0000041f: PUSH1 0xa0 00000421: PUSH1 0x02 00000423: EXP 00000424: SUB 00000425: SWAP3 00000426: SWAP1 00000427: SWAP3 00000428: AND 00000429: SWAP2 0000042a: SWAP1 0000042b: SWAP2 0000042c: OR 0000042d: SWAP1 0000042e: SSTORE 0000042f: JUMP 00000430: STOP 00000431: LOG1 00000432: PUSH6 0x627a7a723058 00000439: KECCAK256 0000043a: PUSH0 0000043b: UNKNOWN(0x26) 0000043c: DIV 0000043d: SWAP12 0000043e: UNKNOWN(0xBC) 0000043f: PUSH26 0x4226b505f589b2ee1130db54310d79dd8a635c6f6c61e305a777 0000045a: STOP 0000045b: UNKNOWN(0x29)
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: 0xde5f49acb121dceaa357f0ae65115e3fcea81ef301bf65a687cd18bac809d7c5
validation_json{
"sink": "DELEGATECALL",
"errors": 0,
"status": "unknown",
"attempts": 84,
"trace_id": "0xde5f49acb121dceaa357f0ae65115e3fcea81ef301bf65a687cd18bac809d7c5",
"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": "0x025313a2",
"selector": "0x025313a2",
"calldata_variants": [
"0x025313a2",
"0x025313a20000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x3659cfe6",
"selector": "0x3659cfe6",
"calldata_variants": [
"0x3659cfe6",
"0x3659cfe60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4555d5c9",
"selector": "0x4555d5c9",
"calldata_variants": [
"0x4555d5c9",
"0x4555d5c90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4f1ef286",
"selector": "0x4f1ef286",
"calldata_variants": [
"0x4f1ef286",
"0x4f1ef2860000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x5c60da1b",
"selector": "0x5c60da1b",
"calldata_variants": [
"0x5c60da1b",
"0x5c60da1b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x6fde8202",
"selector": "0x6fde8202",
"calldata_variants": [
"0x6fde8202",
"0x6fde82020000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf1739cae",
"selector": "0xf1739cae",
"calldata_variants": [
"0xf1739cae",
"0xf1739cae0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 179,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
},
{
"pc": 736,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
}
],
"guards_detected": [],
"delegatecall_count": 2,
"untrusted_delegatecall_count": 2
}
|