019b3844-94d5-725a-937f-9e570c0d2472
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 |
|---|---|---|---|---|
| 13263 | artifact.fetch | complete | 1 / 3 | 3 months ago |
| 13264 | tool.cast_disasm | complete | 1 / 3 | 3 months ago |
| 112318 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 112319 | capability.graph | complete | 1 / 3 | 1 week ago |
| 112320 | detector.run | complete | 1 / 3 | 1 week ago |
| 112321 | 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 0x006c 0000000c: JUMPI 0000000d: PUSH4 0xffffffff 00000012: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 00000030: PUSH1 0x00 00000032: CALLDATALOAD 00000033: DIV 00000034: AND 00000035: PUSH4 0x4555d5c9 0000003a: DUP2 0000003b: EQ 0000003c: PUSH2 0x012b 0000003f: JUMPI 00000040: DUP1 00000041: PUSH4 0x48a0c8dd 00000046: EQ 00000047: PUSH2 0x0152 0000004a: JUMPI 0000004b: DUP1 0000004c: PUSH4 0x5c60da1b 00000051: EQ 00000052: PUSH2 0x017b 00000055: JUMPI 00000056: DUP1 00000057: PUSH4 0x80afdea8 0000005c: EQ 0000005d: PUSH2 0x01b9 00000060: JUMPI 00000061: DUP1 00000062: PUSH4 0xd4aae0c4 00000067: EQ 00000068: PUSH2 0x01ce 0000006b: JUMPI 0000006c: JUMPDEST 0000006d: PUSH2 0x2710 00000070: PUSH32 0x665fd576fbbe6f247aff98f5c94a561e3f71ec2d3c988d56f12d342396c50cea 00000091: PUSH1 0x00 00000093: DUP3 00000094: GAS 00000095: LT 00000096: ISZERO 00000097: PUSH2 0x00e1 0000009a: JUMPI 0000009b: PUSH1 0x00 0000009d: CALLVALUE 0000009e: GT 0000009f: CALLDATASIZE 000000a0: ISZERO 000000a1: DUP4 000000a2: SLOAD 000000a3: AND 000000a4: AND 000000a5: ISZERO 000000a6: PUSH2 0x00dc 000000a9: JUMPI 000000aa: PUSH1 0x40 000000ac: MLOAD 000000ad: CALLER 000000ae: DUP2 000000af: MSTORE 000000b0: CALLVALUE 000000b1: PUSH1 0x20 000000b3: DUP3 000000b4: ADD 000000b5: MSTORE 000000b6: PUSH32 0x15eeaa57c7bd188c1388020bcadc2c436ec60d647d36ef5b9eb3c742217ddee1 000000d7: PUSH1 0x40 000000d9: DUP3 000000da: LOG1 000000db: STOP 000000dc: JUMPDEST 000000dd: PUSH1 0x00 000000df: DUP1 000000e0: REVERT 000000e1: JUMPDEST 000000e2: PUSH2 0x00e9 000000e5: PUSH2 0x01e3 000000e8: JUMP 000000e9: JUMPDEST 000000ea: SWAP1 000000eb: POP 000000ec: PUSH2 0x0126 000000ef: DUP2 000000f0: PUSH1 0x00 000000f2: CALLDATASIZE 000000f3: DUP1 000000f4: DUP1 000000f5: PUSH1 0x1f 000000f7: ADD 000000f8: PUSH1 0x20 000000fa: DUP1 000000fb: SWAP2 000000fc: DIV 000000fd: MUL 000000fe: PUSH1 0x20 00000100: ADD 00000101: PUSH1 0x40 00000103: MLOAD 00000104: SWAP1 00000105: DUP2 00000106: ADD 00000107: PUSH1 0x40 00000109: MSTORE 0000010a: DUP1 0000010b: SWAP4 0000010c: SWAP3 0000010d: SWAP2 0000010e: SWAP1 0000010f: DUP2 00000110: DUP2 00000111: MSTORE 00000112: PUSH1 0x20 00000114: ADD 00000115: DUP4 00000116: DUP4 00000117: DUP1 00000118: DUP3 00000119: DUP5 0000011a: CALLDATACOPY 0000011b: POP 0000011c: PUSH2 0x01fa 0000011f: SWAP5 00000120: POP 00000121: POP 00000122: POP 00000123: POP 00000124: POP 00000125: JUMP 00000126: JUMPDEST 00000127: POP 00000128: POP 00000129: POP 0000012a: STOP 0000012b: JUMPDEST 0000012c: CALLVALUE 0000012d: DUP1 0000012e: ISZERO 0000012f: PUSH2 0x0137 00000132: JUMPI 00000133: PUSH1 0x00 00000135: DUP1 00000136: REVERT 00000137: JUMPDEST 00000138: POP 00000139: PUSH2 0x0140 0000013c: PUSH2 0x023b 0000013f: JUMP 00000140: JUMPDEST 00000141: PUSH1 0x40 00000143: DUP1 00000144: MLOAD 00000145: SWAP2 00000146: DUP3 00000147: MSTORE 00000148: MLOAD 00000149: SWAP1 0000014a: DUP2 0000014b: SWAP1 0000014c: SUB 0000014d: PUSH1 0x20 0000014f: ADD 00000150: SWAP1 00000151: RETURN 00000152: JUMPDEST 00000153: CALLVALUE 00000154: DUP1 00000155: ISZERO 00000156: PUSH2 0x015e 00000159: JUMPI 0000015a: PUSH1 0x00 0000015c: DUP1 0000015d: REVERT 0000015e: JUMPDEST 0000015f: POP 00000160: PUSH2 0x0167 00000163: PUSH2 0x0240 00000166: JUMP 00000167: JUMPDEST 00000168: PUSH1 0x40 0000016a: DUP1 0000016b: MLOAD 0000016c: SWAP2 0000016d: ISZERO 0000016e: ISZERO 0000016f: DUP3 00000170: MSTORE 00000171: MLOAD 00000172: SWAP1 00000173: DUP2 00000174: SWAP1 00000175: SUB 00000176: PUSH1 0x20 00000178: ADD 00000179: SWAP1 0000017a: RETURN 0000017b: JUMPDEST 0000017c: CALLVALUE 0000017d: DUP1 0000017e: ISZERO 0000017f: PUSH2 0x0187 00000182: JUMPI 00000183: PUSH1 0x00 00000185: DUP1 00000186: REVERT 00000187: JUMPDEST 00000188: POP 00000189: PUSH2 0x0190 0000018c: PUSH2 0x01e3 0000018f: JUMP 00000190: JUMPDEST 00000191: PUSH1 0x40 00000193: DUP1 00000194: MLOAD 00000195: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000001aa: SWAP1 000001ab: SWAP3 000001ac: AND 000001ad: DUP3 000001ae: MSTORE 000001af: MLOAD 000001b0: SWAP1 000001b1: DUP2 000001b2: SWAP1 000001b3: SUB 000001b4: PUSH1 0x20 000001b6: ADD 000001b7: SWAP1 000001b8: RETURN 000001b9: JUMPDEST 000001ba: CALLVALUE 000001bb: DUP1 000001bc: ISZERO 000001bd: PUSH2 0x01c5 000001c0: JUMPI 000001c1: PUSH1 0x00 000001c3: DUP1 000001c4: REVERT 000001c5: JUMPDEST 000001c6: POP 000001c7: PUSH2 0x0140 000001ca: PUSH2 0x026b 000001cd: JUMP 000001ce: JUMPDEST 000001cf: CALLVALUE 000001d0: DUP1 000001d1: ISZERO 000001d2: PUSH2 0x01da 000001d5: JUMPI 000001d6: PUSH1 0x00 000001d8: DUP1 000001d9: REVERT 000001da: JUMPDEST 000001db: POP 000001dc: PUSH2 0x0190 000001df: PUSH2 0x0296 000001e2: JUMP 000001e3: JUMPDEST 000001e4: PUSH1 0x00 000001e6: PUSH2 0x01f5 000001e9: PUSH2 0x01f0 000001ec: PUSH2 0x026b 000001ef: JUMP 000001f0: JUMPDEST 000001f1: PUSH2 0x02c1 000001f4: JUMP 000001f5: JUMPDEST 000001f6: SWAP1 000001f7: POP 000001f8: SWAP1 000001f9: JUMP 000001fa: JUMPDEST 000001fb: PUSH1 0x00 000001fd: PUSH2 0x0205 00000200: DUP4 00000201: PUSH2 0x0395 00000204: JUMP 00000205: JUMPDEST 00000206: ISZERO 00000207: ISZERO 00000208: PUSH2 0x0210 0000020b: JUMPI 0000020c: PUSH1 0x00 0000020e: DUP1 0000020f: REVERT 00000210: JUMPDEST 00000211: PUSH2 0x2710 00000214: SWAP1 00000215: POP 00000216: PUSH1 0x00 00000218: DUP1 00000219: DUP4 0000021a: MLOAD 0000021b: PUSH1 0x20 0000021d: DUP6 0000021e: ADD 0000021f: DUP7 00000220: DUP6 00000221: GAS 00000222: SUB 00000223: DELEGATECALL 00000224: RETURNDATASIZE 00000225: PUSH1 0x40 00000227: MLOAD 00000228: DUP2 00000229: PUSH1 0x00 0000022b: DUP3 0000022c: RETURNDATACOPY 0000022d: DUP3 0000022e: DUP1 0000022f: ISZERO 00000230: PUSH2 0x0237 00000233: JUMPI 00000234: DUP3 00000235: DUP3 00000236: RETURN 00000237: JUMPDEST 00000238: DUP3 00000239: DUP3 0000023a: REVERT 0000023b: JUMPDEST 0000023c: PUSH1 0x02 0000023e: SWAP1 0000023f: JUMP 00000240: JUMPDEST 00000241: PUSH1 0x00 00000243: PUSH2 0x01f5 00000246: PUSH32 0x665fd576fbbe6f247aff98f5c94a561e3f71ec2d3c988d56f12d342396c50cea 00000267: PUSH2 0x03cf 0000026a: JUMP 0000026b: JUMPDEST 0000026c: PUSH1 0x00 0000026e: PUSH2 0x01f5 00000271: PUSH32 0xd625496217aa6a3453eecb9c3489dc5a53e6c67b444329ea2b2cbc9ff547639b 00000292: PUSH2 0x03cf 00000295: JUMP 00000296: JUMPDEST 00000297: PUSH1 0x00 00000299: PUSH2 0x01f5 0000029c: PUSH32 0x4172f0f7d2289153072b0a6ca36959e0cbe2efc3afe50fc81636caa96338137b 000002bd: PUSH2 0x03cf 000002c0: JUMP 000002c1: JUMPDEST 000002c2: PUSH1 0x00 000002c4: PUSH2 0x02cb 000002c7: PUSH2 0x0296 000002ca: JUMP 000002cb: JUMPDEST 000002cc: PUSH1 0x40 000002ce: DUP1 000002cf: MLOAD 000002d0: PUSH32 0xbe00bbd800000000000000000000000000000000000000000000000000000000 000002f1: DUP2 000002f2: MSTORE 000002f3: PUSH32 0xf1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f 00000314: PUSH1 0x04 00000316: DUP3 00000317: ADD 00000318: MSTORE 00000319: PUSH1 0x24 0000031b: DUP2 0000031c: ADD 0000031d: DUP6 0000031e: SWAP1 0000031f: MSTORE 00000320: SWAP1 00000321: MLOAD 00000322: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000337: SWAP3 00000338: SWAP1 00000339: SWAP3 0000033a: AND 0000033b: SWAP2 0000033c: PUSH4 0xbe00bbd8 00000341: SWAP2 00000342: PUSH1 0x44 00000344: DUP1 00000345: DUP3 00000346: ADD 00000347: SWAP3 00000348: PUSH1 0x20 0000034a: SWAP3 0000034b: SWAP1 0000034c: SWAP2 0000034d: SWAP1 0000034e: DUP3 0000034f: SWAP1 00000350: SUB 00000351: ADD 00000352: DUP2 00000353: PUSH1 0x00 00000355: DUP8 00000356: DUP1 00000357: EXTCODESIZE 00000358: ISZERO 00000359: DUP1 0000035a: ISZERO 0000035b: PUSH2 0x0363 0000035e: JUMPI 0000035f: PUSH1 0x00 00000361: DUP1 00000362: REVERT 00000363: JUMPDEST 00000364: POP 00000365: GAS 00000366: CALL 00000367: ISZERO 00000368: DUP1 00000369: ISZERO 0000036a: PUSH2 0x0377 0000036d: JUMPI 0000036e: RETURNDATASIZE 0000036f: PUSH1 0x00 00000371: DUP1 00000372: RETURNDATACOPY 00000373: RETURNDATASIZE 00000374: PUSH1 0x00 00000376: REVERT 00000377: JUMPDEST 00000378: POP 00000379: POP 0000037a: POP 0000037b: POP 0000037c: PUSH1 0x40 0000037e: MLOAD 0000037f: RETURNDATASIZE 00000380: PUSH1 0x20 00000382: DUP2 00000383: LT 00000384: ISZERO 00000385: PUSH2 0x038d 00000388: JUMPI 00000389: PUSH1 0x00 0000038b: DUP1 0000038c: REVERT 0000038d: JUMPDEST 0000038e: POP 0000038f: MLOAD 00000390: SWAP3 00000391: SWAP2 00000392: POP 00000393: POP 00000394: JUMP 00000395: JUMPDEST 00000396: PUSH1 0x00 00000398: DUP1 00000399: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000003ae: DUP4 000003af: AND 000003b0: ISZERO 000003b1: ISZERO 000003b2: PUSH2 0x03be 000003b5: JUMPI 000003b6: PUSH1 0x00 000003b8: SWAP2 000003b9: POP 000003ba: PUSH2 0x03c9 000003bd: JUMP 000003be: JUMPDEST 000003bf: DUP3 000003c0: EXTCODESIZE 000003c1: SWAP1 000003c2: POP 000003c3: PUSH1 0x00 000003c5: DUP2 000003c6: GT 000003c7: SWAP2 000003c8: POP 000003c9: JUMPDEST 000003ca: POP 000003cb: SWAP2 000003cc: SWAP1 000003cd: POP 000003ce: JUMP 000003cf: JUMPDEST 000003d0: SLOAD 000003d1: SWAP1 000003d2: JUMP 000003d3: JUMPDEST 000003d4: SLOAD 000003d5: SWAP1 000003d6: JUMP 000003d7: JUMPDEST 000003d8: SWAP1 000003d9: SSTORE 000003da: JUMP 000003db: JUMPDEST 000003dc: SWAP1 000003dd: SSTORE 000003de: JUMP 000003df: STOP 000003e0: LOG1 000003e1: PUSH6 0x627a7a723058 000003e8: KECCAK256 000003e9: SWAP8 000003ea: PUSH12 0xd9d6f6ad7a0d339ea3b37370 000003f7: BASEFEE 000003f8: TIMESTAMP 000003f9: UNKNOWN(0xCD) 000003fa: UNKNOWN(0xB3) 000003fb: UNKNOWN(0xD9) 000003fc: UNKNOWN(0xE1) 000003fd: MCOPY 000003fe: PUSH21
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: 0xe17e093ebebf1385573091b483b1cae2a09b9c97d7419428b40b0bb1a5b37b0c
call_targets:
0x2b33cf282f867a7ff693a66e11b0fcc5552e4425
target_varies:
no
classification:
constant_target
validation_json{
"sink": "DELEGATECALL",
"errors": 0,
"status": "sink_reached",
"attempts": 25,
"trace_id": "0xe17e093ebebf1385573091b483b1cae2a09b9c97d7419428b40b0bb1a5b37b0c",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x2b33cf282f867a7ff693a66e11b0fcc5552e4425"
],
"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": "0x4555d5c9",
"selector": "0x4555d5c9",
"calldata_variants": [
"0x4555d5c9",
"0x4555d5c90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x48a0c8dd",
"selector": "0x48a0c8dd",
"calldata_variants": [
"0x48a0c8dd",
"0x48a0c8dd0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x5c60da1b",
"selector": "0x5c60da1b",
"calldata_variants": [
"0x5c60da1b",
"0x5c60da1b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x80afdea8",
"selector": "0x80afdea8",
"calldata_variants": [
"0x80afdea8",
"0x80afdea80000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd4aae0c4",
"selector": "0xd4aae0c4",
"calldata_variants": [
"0xd4aae0c4",
"0xd4aae0c40000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 547,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
}
],
"guards_detected": [],
"delegatecall_count": 1,
"untrusted_delegatecall_count": 1
}
|
| high | other | detector | Untrusted CALL target/value reachable | 60 | no | no |
viewtrace_id: 0x26ad4cf791d070dbc84490b0f37df46b66ff9fc0ec31746c409ed2f365657351
call_targets:
0x9a6ebe7e2a7722f8200d0ffb63a1f6406a0d7dce
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x26ad4cf791d070dbc84490b0f37df46b66ff9fc0ec31746c409ed2f365657351",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x9a6ebe7e2a7722f8200d0ffb63a1f6406a0d7dce"
],
"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": "0x4555d5c9",
"selector": "0x4555d5c9",
"calldata_variants": [
"0x4555d5c9",
"0x4555d5c90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x48a0c8dd",
"selector": "0x48a0c8dd",
"calldata_variants": [
"0x48a0c8dd",
"0x48a0c8dd0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x5c60da1b",
"selector": "0x5c60da1b",
"calldata_variants": [
"0x5c60da1b",
"0x5c60da1b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x80afdea8",
"selector": "0x80afdea8",
"calldata_variants": [
"0x80afdea8",
"0x80afdea80000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd4aae0c4",
"selector": "0xd4aae0c4",
"calldata_variants": [
"0xd4aae0c4",
"0xd4aae0c40000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 870,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 1,
"guards_detected": [],
"untrusted_call_count": 1
}
|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_id: 0x26ad4cf791d070dbc84490b0f37df46b66ff9fc0ec31746c409ed2f365657351
call_targets:
0x9a6ebe7e2a7722f8200d0ffb63a1f6406a0d7dce
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x26ad4cf791d070dbc84490b0f37df46b66ff9fc0ec31746c409ed2f365657351",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x9a6ebe7e2a7722f8200d0ffb63a1f6406a0d7dce"
],
"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": "0x4555d5c9",
"selector": "0x4555d5c9",
"calldata_variants": [
"0x4555d5c9",
"0x4555d5c90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x48a0c8dd",
"selector": "0x48a0c8dd",
"calldata_variants": [
"0x48a0c8dd",
"0x48a0c8dd0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x5c60da1b",
"selector": "0x5c60da1b",
"calldata_variants": [
"0x5c60da1b",
"0x5c60da1b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x80afdea8",
"selector": "0x80afdea8",
"calldata_variants": [
"0x80afdea8",
"0x80afdea80000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd4aae0c4",
"selector": "0xd4aae0c4",
"calldata_variants": [
"0xd4aae0c4",
"0xd4aae0c40000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 870,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 1,
"guards_detected": []
}
|