019b3836-5d7d-7355-87c3-cda815ee49af
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 |
|---|---|---|---|---|
| 9339 | artifact.fetch | complete | 1 / 3 | 3 months ago |
| 9340 | tool.cast_disasm | complete | 1 / 3 | 3 months ago |
| 83056 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 83057 | capability.graph | complete | 1 / 3 | 1 week ago |
| 83058 | detector.run | complete | 1 / 3 | 1 week ago |
| 83059 | validation.fork | complete | 1 / 3 | 1 week ago |
| 113671 | report.consolidate | complete | 1 / 6 | 1 week ago |
No slither job recorded yet.
OpenAI Codex v0.118.0 (research preview) -------- workdir: /tmp/codex-v_2awabv model: gpt-5.4 provider: openai approval: never sandbox: read-only reasoning effort: high reasoning summaries: none session id: 019d5c9b-124b-78c2-9126-708f8e8fe6ef -------- user You are a security auditor. You ONLY have runtime bytecode + analysis artifacts. You MUST read `BYTECODE_BUNDLE.json` before concluding; it contains the bytecode summary, evidence bundle, callsites, storage slots, and detector findings. Special cases when reasoning from bytecode (be explicit about uncertainty): - Selector inference is best-effort; missing selectors are common. - Fallback/receive paths may be the only entrypoints. - CALL vs DELEGATECALL semantics differ; DELEGATECALL executes in caller storage. - Proxy patterns (EIP-1967, minimal proxies, beacon) change which storage is authoritative. - Storage slots are raw; mappings/arrays appear via keccak patterns, names are unknown. - Guard detection is heuristic; absence of guards does NOT mean unguarded. - Returndata checking is unknown unless explicitly shown in evidence. - Precompiles (0x1..0x9) and common ERC20 transfer selectors may appear; do not over-claim. Output MUST be valid JSON matching the provided schema. - If you find nothing meaningful: set no_findings=true and findings=[]. - Otherwise: set no_findings=false and include findings with severity/category/title. - Locations can be pc references like "pc:0x123" or selectors like "selector:0xa9059cbb". Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, accounting/invariant breaks, dangerous delegatecall, and untrusted external calls. Be conservative: if evidence is weak, mark severity low/medium and explain why. warning: Codex could not find system bubblewrap on PATH. Please install bubblewrap with your package manager. Codex will use the vendored bubblewrap in the meantime. ERROR: You've hit your usage limit. Visit https://chatgpt.com/codex/settings/usage to purchase more credits or try again at Apr 8th, 2026 9:11 AM. ERROR: You've hit your usage limit. Visit https://chatgpt.com/codex/settings/usage to purchase more credits or try again at Apr 8th, 2026 9:11 AM.
{
"codex": {
"ran_at": "2026-04-05T07:46:01.380129+00:00",
"returncode": 1
},
"project": {
"mode": "bytecode",
"bytecode_length": 3564,
"bytecode_truncated": false,
"capability_graph_present": true,
"analysis_artifact_present": true
},
"summary": null,
"no_findings": null,
"schema_version": 1
}
00000000: PUSH1 0x60 00000002: PUSH1 0x40 00000004: MSTORE 00000005: CALLDATASIZE 00000006: ISZERO 00000007: PUSH2 0x00ae 0000000a: JUMPI 0000000b: PUSH1 0xe0 0000000d: PUSH1 0x02 0000000f: EXP 00000010: PUSH1 0x00 00000012: CALLDATALOAD 00000013: DIV 00000014: PUSH4 0x06fdde03 00000019: DUP2 0000001a: EQ 0000001b: PUSH2 0x00ba 0000001e: JUMPI 0000001f: DUP1 00000020: PUSH4 0x095ea7b3 00000025: EQ 00000026: PUSH2 0x0118 00000029: JUMPI 0000002a: DUP1 0000002b: PUSH4 0x23b872dd 00000030: EQ 00000031: PUSH2 0x018c 00000034: JUMPI 00000035: DUP1 00000036: PUSH4 0x313ce567 0000003b: EQ 0000003c: PUSH2 0x0277 0000003f: JUMPI 00000040: DUP1 00000041: PUSH4 0x6f0b5180 00000046: EQ 00000047: PUSH2 0x0283 0000004a: JUMPI 0000004b: DUP1 0000004c: PUSH4 0x70a08231 00000051: EQ 00000052: PUSH2 0x029c 00000055: JUMPI 00000056: DUP1 00000057: PUSH4 0x95d89b41 0000005c: EQ 0000005d: PUSH2 0x02ca 00000060: JUMPI 00000061: DUP1 00000062: PUSH4 0x98d5fdca 00000067: EQ 00000068: PUSH2 0x0328 0000006b: JUMPI 0000006c: DUP1 0000006d: PUSH4 0xa6f9dae1 00000072: EQ 00000073: PUSH2 0x0343 00000076: JUMPI 00000077: DUP1 00000078: PUSH4 0xa9059cbb 0000007d: EQ 0000007e: PUSH2 0x0385 00000081: JUMPI 00000082: DUP1 00000083: PUSH4 0xbbe4fd50 00000088: EQ 00000089: PUSH2 0x042b 0000008c: JUMPI 0000008d: DUP1 0000008e: PUSH4 0xc4e41b22 00000093: EQ 00000094: PUSH2 0x0433 00000097: JUMPI 00000098: DUP1 00000099: PUSH4 0xdd62ed3e 0000009e: EQ 0000009f: PUSH2 0x043e 000000a2: JUMPI 000000a3: DUP1 000000a4: PUSH4 0xf3fef3a3 000000a9: EQ 000000aa: PUSH2 0x0472 000000ad: JUMPI 000000ae: JUMPDEST 000000af: PUSH2 0x04ab 000000b2: PUSH2 0x04ad 000000b5: CALLER 000000b6: PUSH2 0x028a 000000b9: JUMP 000000ba: JUMPDEST 000000bb: PUSH1 0x40 000000bd: DUP1 000000be: MLOAD 000000bf: PUSH1 0x04 000000c1: DUP1 000000c2: SLOAD 000000c3: PUSH1 0x20 000000c5: PUSH1 0x02 000000c7: PUSH1 0x01 000000c9: DUP4 000000ca: AND 000000cb: ISZERO 000000cc: PUSH2 0x0100 000000cf: MUL 000000d0: PUSH1 0x00 000000d2: NOT 000000d3: ADD 000000d4: SWAP1 000000d5: SWAP3 000000d6: AND 000000d7: SWAP2 000000d8: SWAP1 000000d9: SWAP2 000000da: DIV 000000db: PUSH1 0x1f 000000dd: DUP2 000000de: ADD 000000df: DUP3 000000e0: SWAP1 000000e1: DIV 000000e2: DUP3 000000e3: MUL 000000e4: DUP5 000000e5: ADD 000000e6: DUP3 000000e7: ADD 000000e8: SWAP1 000000e9: SWAP5 000000ea: MSTORE 000000eb: DUP4 000000ec: DUP4 000000ed: MSTORE 000000ee: PUSH2 0x04af 000000f1: SWAP4 000000f2: SWAP1 000000f3: DUP4 000000f4: ADD 000000f5: DUP3 000000f6: DUP3 000000f7: DUP1 000000f8: ISZERO 000000f9: PUSH2 0x05d4 000000fc: JUMPI 000000fd: DUP1 000000fe: PUSH1 0x1f 00000100: LT 00000101: PUSH2 0x05a9 00000104: JUMPI 00000105: PUSH2 0x0100 00000108: DUP1 00000109: DUP4 0000010a: SLOAD 0000010b: DIV 0000010c: MUL 0000010d: DUP4 0000010e: MSTORE 0000010f: SWAP2 00000110: PUSH1 0x20 00000112: ADD 00000113: SWAP2 00000114: PUSH2 0x05d4 00000117: JUMP 00000118: JUMPDEST 00000119: PUSH2 0x051d 0000011c: PUSH1 0x04 0000011e: CALLDATALOAD 0000011f: PUSH1 0x24 00000121: CALLDATALOAD 00000122: PUSH1 0x01 00000124: PUSH1 0xa0 00000126: PUSH1 0x02 00000128: EXP 00000129: SUB 0000012a: CALLER 0000012b: DUP2 0000012c: AND 0000012d: PUSH1 0x00 0000012f: DUP2 00000130: DUP2 00000131: MSTORE 00000132: PUSH1 0x02 00000134: PUSH1 0x20 00000136: SWAP1 00000137: DUP2 00000138: MSTORE 00000139: PUSH1 0x40 0000013b: DUP1 0000013c: DUP4 0000013d: KECCAK256 0000013e: SWAP5 0000013f: DUP8 00000140: AND 00000141: DUP1 00000142: DUP5 00000143: MSTORE 00000144: SWAP5 00000145: DUP3 00000146: MSTORE 00000147: DUP1 00000148: DUP4 00000149: KECCAK256 0000014a: DUP7 0000014b: SWAP1 0000014c: SSTORE 0000014d: DUP1 0000014e: MLOAD 0000014f: DUP7 00000150: DUP2 00000151: MSTORE 00000152: SWAP1 00000153: MLOAD 00000154: SWAP3 00000155: SWAP5 00000156: SWAP4 00000157: SWAP3 00000158: PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925 00000179: SWAP3 0000017a: SWAP2 0000017b: DUP2 0000017c: SWAP1 0000017d: SUB 0000017e: SWAP1 0000017f: SWAP2 00000180: ADD 00000181: SWAP1 00000182: LOG3 00000183: POP 00000184: PUSH1 0x01 00000186: JUMPDEST 00000187: SWAP3 00000188: SWAP2 00000189: POP 0000018a: POP 0000018b: JUMP 0000018c: JUMPDEST 0000018d: PUSH2 0x051d 00000190: PUSH1 0x04 00000192: CALLDATALOAD 00000193: PUSH1 0x24 00000195: CALLDATALOAD 00000196: PUSH1 0x44 00000198: CALLDATALOAD 00000199: PUSH1 0x01 0000019b: PUSH1 0xa0 0000019d: PUSH1 0x02 0000019f: EXP 000001a0: SUB 000001a1: DUP4 000001a2: AND 000001a3: PUSH1 0x00 000001a5: SWAP1 000001a6: DUP2 000001a7: MSTORE 000001a8: PUSH1 0x01 000001aa: PUSH1 0x20 000001ac: MSTORE 000001ad: PUSH1 0x40 000001af: DUP2 000001b0: KECCAK256 000001b1: SLOAD 000001b2: DUP3 000001b3: SWAP1 000001b4: LT 000001b5: DUP1 000001b6: ISZERO 000001b7: SWAP1 000001b8: PUSH2 0x01df 000001bb: JUMPI 000001bc: POP 000001bd: PUSH1 0x02 000001bf: PUSH1 0x20 000001c1: SWAP1 000001c2: DUP2 000001c3: MSTORE 000001c4: PUSH1 0x40 000001c6: DUP1 000001c7: DUP4 000001c8: KECCAK256 000001c9: PUSH1 0x01 000001cb: PUSH1 0xa0 000001cd: PUSH1 0x02 000001cf: EXP 000001d0: SUB 000001d1: CALLER 000001d2: AND 000001d3: DUP5 000001d4: MSTORE 000001d5: SWAP1 000001d6: SWAP2 000001d7: MSTORE 000001d8: DUP2 000001d9: KECCAK256 000001da: SLOAD 000001db: DUP3 000001dc: SWAP1 000001dd: LT 000001de: ISZERO 000001df: JUMPDEST 000001e0: DUP1 000001e1: ISZERO 000001e2: PUSH2 0x01eb 000001e5: JUMPI 000001e6: POP 000001e7: PUSH1 0x00 000001e9: DUP3 000001ea: GT 000001eb: JUMPDEST 000001ec: ISZERO 000001ed: PUSH2 0x05dc 000001f0: JUMPI 000001f1: PUSH1 0x01 000001f3: PUSH1 0xa0 000001f5: PUSH1 0x02 000001f7: EXP 000001f8: SUB 000001f9: DUP5 000001fa: DUP2 000001fb: AND 000001fc: PUSH1 0x00 000001fe: DUP2 000001ff: DUP2 00000200: MSTORE 00000201: PUSH1 0x01 00000203: PUSH1 0x20 00000205: SWAP1 00000206: DUP2 00000207: MSTORE 00000208: PUSH1 0x40 0000020a: DUP1 0000020b: DUP4 0000020c: KECCAK256 0000020d: DUP1 0000020e: SLOAD 0000020f: DUP9 00000210: SWAP1 00000211: SUB 00000212: SWAP1 00000213: SSTORE 00000214: DUP8 00000215: DUP6 00000216: AND 00000217: DUP1 00000218: DUP5 00000219: MSTORE 0000021a: DUP2 0000021b: DUP5 0000021c: KECCAK256 0000021d: DUP9 0000021e: SWAP1 0000021f: SSTORE 00000220: DUP5 00000221: DUP5 00000222: MSTORE 00000223: PUSH1 0x02 00000225: DUP4 00000226: MSTORE 00000227: DUP2 00000228: DUP5 00000229: KECCAK256 0000022a: CALLER 0000022b: SWAP7 0000022c: SWAP1 0000022d: SWAP7 0000022e: AND 0000022f: DUP5 00000230: MSTORE 00000231: SWAP5 00000232: DUP3 00000233: MSTORE 00000234: SWAP2 00000235: DUP3 00000236: SWAP1 00000237: KECCAK256 00000238: DUP1 00000239: SLOAD 0000023a: DUP8 0000023b: SWAP1 0000023c: SUB 0000023d: SWAP1 0000023e: SSTORE 0000023f: DUP2 00000240: MLOAD 00000241: DUP7 00000242: DUP2 00000243: MSTORE 00000244: SWAP2 00000245: MLOAD 00000246: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 00000267: SWAP3 00000268: DUP2 00000269: SWAP1 0000026a: SUB 0000026b: SWAP1 0000026c: SWAP2 0000026d: ADD 0000026e: SWAP1 0000026f: LOG3 00000270: POP 00000271: PUSH1 0x01 00000273: PUSH2 0x05e0 00000276: JUMP 00000277: JUMPDEST 00000278: PUSH2 0x0531 0000027b: PUSH1 0x05 0000027d: SLOAD 0000027e: PUSH1 0xff 00000280: AND 00000281: DUP2 00000282: JUMP 00000283: JUMPDEST 00000284: PUSH2 0x04ab 00000287: PUSH1 0x04 00000289: CALLDATALOAD 0000028a: JUMPDEST 0000028b: PUSH1 0x08 0000028d: SLOAD 0000028e: PUSH1 0x00 00000290: SWAP1 00000291: TIMESTAMP 00000292: LT 00000293: ISZERO 00000294: PUSH2 0x057c 00000297: JUMPI 00000298: PUSH2 0x0002 0000029b: JUMP 0000029c: JUMPDEST 0000029d: PUSH1 0x04 0000029f: CALLDATALOAD 000002a0: PUSH1 0x01 000002a2: PUSH1 0xa0 000002a4: PUSH1 0x02 000002a6: EXP 000002a7: SUB 000002a8: AND 000002a9: PUSH1 0x00 000002ab: SWAP1 000002ac: DUP2 000002ad: MSTORE 000002ae: PUSH1 0x01 000002b0: PUSH1 0x20 000002b2: MSTORE 000002b3: PUSH1 0x40 000002b5: SWAP1 000002b6: KECCAK256 000002b7: SLOAD 000002b8: JUMPDEST 000002b9: PUSH1 0x40 000002bb: DUP1 000002bc: MLOAD 000002bd: SWAP2 000002be: DUP3 000002bf: MSTORE 000002c0: MLOAD 000002c1: SWAP1 000002c2: DUP2 000002c3: SWAP1 000002c4: SUB 000002c5: PUSH1 0x20 000002c7: ADD 000002c8: SWAP1 000002c9: RETURN 000002ca: JUMPDEST 000002cb: PUSH2 0x04af 000002ce: PUSH1 0x06 000002d0: DUP1 000002d1: SLOAD 000002d2: PUSH1 0x40 000002d4: DUP1 000002d5: MLOAD 000002d6: PUSH1 0x20 000002d8: PUSH1 0x02 000002da: PUSH1 0x00 000002dc: NOT 000002dd: PUSH1 0x01 000002df: DUP7 000002e0: AND 000002e1: ISZERO 000002e2: PUSH2 0x0100 000002e5: MUL 000002e6: ADD 000002e7: SWAP1 000002e8: SWAP5 000002e9: AND 000002ea: SWAP4 000002eb: SWAP1 000002ec: SWAP4 000002ed: DIV 000002ee: PUSH1 0x1f 000002f0: DUP2 000002f1: ADD 000002f2: DUP5 000002f3: SWAP1 000002f4: DIV 000002f5: DUP5 000002f6: MUL 000002f7: DUP3 000002f8: ADD 000002f9: DUP5 000002fa: ADD 000002fb: SWAP1 000002fc: SWAP3 000002fd: MSTORE 000002fe: DUP2 000002ff: DUP2 00000300: MSTORE 00000301: SWAP3 00000302: SWAP2 00000303: DUP4 00000304: ADD 00000305: DUP3 00000306: DUP3 00000307: DUP1 00000308: ISZERO 00000309: PUSH2 0x05d4 0000030c: JUMPI 0000030d: DUP1 0000030e: PUSH1 0x1f 00000310: LT 00000311: PUSH2 0x05a9 00000314: JUMPI 00000315: PUSH2 0x0100 00000318: DUP1 00000319: DUP4 0000031a: SLOAD 0000031b: DIV 0000031c: MUL 0000031d: DUP4 0000031e: MSTORE 0000031f: SWAP2 00000320: PUSH1 0x20 00000322: ADD 00000323: SWAP2 00000324: PUSH2 0x05d4 00000327: JUMP 00000328: JUMPDEST 00000329: PUSH2 0x02b8 0000032c: JUMPDEST 0000032d: PUSH1 0x08 0000032f: SLOAD 00000330: PUSH1 0x00 00000332: SWAP1 00000333: DUP2 00000334: SWAP1 00000335: DUP2 00000336: SWAP1 00000337: TIMESTAMP 00000338: LT 00000339: ISZERO 0000033a: PUSH2 0x05e7 0000033d: JUMPI 0000033e: JUMPDEST 0000033f: POP 00000340: POP 00000341: SWAP1 00000342: JUMP 00000343: JUMPDEST 00000344: PUSH2 0x04ab 00000347: PUSH1 0x04 00000349: CALLDATALOAD 0000034a: PUSH1 0x03 0000034c: SLOAD 0000034d: PUSH1 0x01 0000034f: PUSH1 0xa0 00000351: PUSH1 0x02 00000353: EXP 00000354: SUB 00000355: SWAP1 00000356: DUP2 00000357: AND 00000358: CALLER 00000359: SWAP2 0000035a: SWAP1 0000035b: SWAP2 0000035c: AND 0000035d: EQ 0000035e: ISZERO 0000035f: PUSH2 0x0382 00000362: JUMPI 00000363: PUSH1 0x03 00000365: DUP1 00000366: SLOAD 00000367: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000037c: NOT 0000037d: AND 0000037e: DUP3 0000037f: OR 00000380: SWAP1 00000381: SSTORE 00000382: JUMPDEST 00000383: POP 00000384: JUMP 00000385: JUMPDEST 00000386: PUSH2 0x051d 00000389: PUSH1 0x04 0000038b: CALLDATALOAD 0000038c: PUSH1 0x24 0000038e: CALLDATALOAD 0000038f: PUSH1 0x01 00000391: PUSH1 0xa0 00000393: PUSH1 0x02 00000395: EXP 00000396: SUB 00000397: CALLER 00000398: AND 00000399: PUSH1 0x00 0000039b: SWAP1 0000039c: DUP2 0000039d: MSTORE 0000039e: PUSH1 0x01 000003a0: PUSH1 0x20 000003a2: MSTORE 000003a3: PUSH1 0x40 000003a5: DUP2 000003a6: KECCAK256 000003a7: SLOAD 000003a8: DUP3 000003a9: SWAP1 000003aa: LT 000003ab: DUP1 000003ac: ISZERO 000003ad: SWAP1 000003ae: PUSH2 0x03b7 000003b1: JUMPI 000003b2: POP 000003b3: PUSH1 0x00 000003b5: DUP3 000003b6: GT 000003b7: JUMPDEST 000003b8: ISZERO 000003b9: PUSH2 0x06c2 000003bc: JUMPI 000003bd: PUSH1 0x01 000003bf: PUSH1 0xa0 000003c1: PUSH1 0x02 000003c3: EXP 000003c4: SUB 000003c5: CALLER 000003c6: DUP2 000003c7: AND 000003c8: PUSH1 0x00 000003ca: DUP2 000003cb: DUP2 000003cc: MSTORE 000003cd: PUSH1 0x01 000003cf: PUSH1 0x20 000003d1: SWAP1 000003d2: DUP2 000003d3: MSTORE 000003d4: PUSH1 0x40 000003d6: DUP1 000003d7: DUP4 000003d8: KECCAK256 000003d9: DUP1 000003da: SLOAD 000003db: DUP9 000003dc: SWAP1 000003dd: SUB 000003de: SWAP1 000003df: SSTORE 000003e0: SWAP4 000003e1: DUP8 000003e2: AND 000003e3: DUP1 000003e4: DUP4 000003e5: MSTORE 000003e6: SWAP2 000003e7: DUP5 000003e8: SWAP1 000003e9: KECCAK256 000003ea: DUP1 000003eb: SLOAD 000003ec: DUP8 000003ed: ADD 000003ee: SWAP1 000003ef: SSTORE 000003f0: DUP4 000003f1: MLOAD 000003f2: DUP7 000003f3: DUP2 000003f4: MSTORE 000003f5: SWAP4 000003f6: MLOAD 000003f7: SWAP2 000003f8: SWAP4 000003f9: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 0000041a: SWAP3 0000041b: SWAP1 0000041c: DUP2 0000041d: SWAP1 0000041e: SUB 0000041f: SWAP1 00000420: SWAP2 00000421: ADD 00000422: SWAP1 00000423: LOG3 00000424: POP 00000425: PUSH1 0x01 00000427: PUSH2 0x0186 0000042a: JUMP 0000042b: JUMPDEST 0000042c: PUSH2 0x02b8 0000042f: TIMESTAMP 00000430: JUMPDEST 00000431: SWAP1 00000432: JUMP 00000433: JUMPDEST 00000434: PUSH2 0x02b8 00000437: PUSH1 0x00 00000439: SLOAD 0000043a: PUSH2 0x0430 0000043d: JUMP 0000043e: JUMPDEST 0000043f: PUSH2 0x02b8 00000442: PUSH1 0x04 00000444: CALLDATALOAD 00000445: PUSH1 0x24 00000447: CALLDATALOAD 00000448: PUSH1 0x01 0000044a: PUSH1 0xa0 0000044c: PUSH1 0x02 0000044e: EXP 0000044f: SUB 00000450: DUP3 00000451: DUP2 00000452: AND 00000453: PUSH1 0x00 00000455: SWAP1 00000456: DUP2 00000457: MSTORE 00000458: PUSH1 0x02 0000045a: PUSH1 0x20 0000045c: SWAP1 0000045d: DUP2 0000045e: MSTORE 0000045f: PUSH1 0x40 00000461: DUP1 00000462: DUP4 00000463: KECCAK256 00000464: SWAP4 00000465: DUP6 00000466: AND 00000467: DUP4 00000468: MSTORE 00000469: SWAP3 0000046a: SWAP1 0000046b: MSTORE 0000046c: KECCAK256 0000046d: SLOAD 0000046e: PUSH2 0x0186 00000471: JUMP 00000472: JUMPDEST 00000473: PUSH2 0x04ab 00000476: PUSH1 0x04 00000478: CALLDATALOAD 00000479: PUSH1 0x24 0000047b: CALLDATALOAD 0000047c: PUSH1 0x03 0000047e: SLOAD 0000047f: PUSH1 0x01 00000481: PUSH1 0xa0 00000483: PUSH1 0x02 00000485: EXP 00000486: SUB 00000487: SWAP1 00000488: DUP2 00000489: AND 0000048a: CALLER 0000048b: SWAP2 0000048c: SWAP1 0000048d: SWAP2 0000048e: AND 0000048f: EQ 00000490: ISZERO 00000491: PUSH2 0x0578 00000494: JUMPI 00000495: DUP1 00000496: ADDRESS 00000497: PUSH1 0x01 00000499: PUSH1 0xa0 0000049b: PUSH1 0x02 0000049d: EXP 0000049e: SUB 0000049f: AND 000004a0: BALANCE 000004a1: LT 000004a2: ISZERO 000004a3: PUSH2 0x06ca 000004a6: JUMPI 000004a7: PUSH2 0x0002 000004aa: JUMP 000004ab: JUMPDEST 000004ac: STOP 000004ad: JUMPDEST 000004ae: JUMP 000004af: JUMPDEST 000004b0: PUSH1 0x40 000004b2: MLOAD 000004b3: DUP1 000004b4: DUP1 000004b5: PUSH1 0x20 000004b7: ADD 000004b8: DUP3 000004b9: DUP2 000004ba: SUB 000004bb: DUP3 000004bc: MSTORE 000004bd: DUP4 000004be: DUP2 000004bf: DUP2 000004c0: MLOAD 000004c1: DUP2 000004c2: MSTORE 000004c3: PUSH1 0x20 000004c5: ADD 000004c6: SWAP2 000004c7: POP 000004c8: DUP1 000004c9: MLOAD 000004ca: SWAP1 000004cb: PUSH1 0x20 000004cd: ADD 000004ce: SWAP1 000004cf: DUP1 000004d0: DUP4 000004d1: DUP4 000004d2: DUP3 000004d3: SWAP1 000004d4: PUSH1 0x00 000004d6: PUSH1 0x04 000004d8: PUSH1 0x20 000004da: DUP5 000004db: PUSH1 0x1f 000004dd: ADD 000004de: DIV 000004df: PUSH1 0x0f 000004e1: MUL 000004e2: PUSH1 0x03 000004e4: ADD 000004e5: CALL 000004e6: POP 000004e7: SWAP1 000004e8: POP 000004e9: SWAP1 000004ea: DUP2 000004eb: ADD 000004ec: SWAP1 000004ed: PUSH1 0x1f 000004ef: AND 000004f0: DUP1 000004f1: ISZERO 000004f2: PUSH2 0x050f 000004f5: JUMPI 000004f6: DUP1 000004f7: DUP3 000004f8: SUB 000004f9: DUP1 000004fa: MLOAD 000004fb: PUSH1 0x01 000004fd: DUP4 000004fe: PUSH1 0x20 00000500: SUB 00000501: PUSH2 0x0100 00000504: EXP 00000505: SUB 00000506: NOT 00000507: AND 00000508: DUP2 00000509: MSTORE 0000050a: PUSH1 0x20 0000050c: ADD 0000050d: SWAP2 0000050e: POP 0000050f: JUMPDEST 00000510: POP 00000511: SWAP3 00000512: POP 00000513: POP 00000514: POP 00000515: PUSH1 0x40 00000517: MLOAD 00000518: DUP1 00000519: SWAP2 0000051a: SUB 0000051b: SWAP1 0000051c: RETURN 0000051d: JUMPDEST 0000051e: PUSH1 0x40 00000520: DUP1 00000521: MLOAD 00000522: SWAP2 00000523: ISZERO 00000524: ISZERO 00000525: DUP3 00000526: MSTORE 00000527: MLOAD 00000528: SWAP1 00000529: DUP2 0000052a: SWAP1 0000052b: SUB 0000052c: PUSH1 0x20 0000052e: ADD 0000052f: SWAP1 00000530: RETURN 00000531: JUMPDEST 00000532: PUSH1 0x40 00000534: DUP1 00000535: MLOAD 00000536: PUSH1 0xff 00000538: SWAP1 00000539: SWAP3 0000053a: AND 0000053b: DUP3 0000053c: MSTORE 0000053d: MLOAD 0000053e: SWAP1 0000053f: DUP2 00000540: SWAP1 00000541: SUB 00000542: PUSH1 0x20 00000544: ADD 00000545: SWAP1 00000546: RETURN 00000547: JUMPDEST 00000548: PUSH1 0x00 0000054a: DUP1 0000054b: SLOAD 0000054c: CALLVALUE 0000054d: SWAP3 0000054e: SWAP1 0000054f: SWAP3 00000550: MUL 00000551: SWAP3 00000552: SWAP1 00000553: SWAP3 00000554: DIV 00000555: SWAP1 00000556: DUP2 00000557: ADD 00000558: DUP3 00000559: SSTORE 0000055a: PUSH1 0x01 0000055c: PUSH1 0xa0 0000055e: PUSH1 0x02 00000560: EXP 00000561: SUB 00000562: DUP5 00000563: AND 00000564: DUP3 00000565: MSTORE 00000566: PUSH1 0x01 00000568: PUSH1 0x20 0000056a: MSTORE 0000056b: PUSH1 0x40 0000056d: SWAP1 0000056e: SWAP2 0000056f: KECCAK256 00000570: DUP1 00000571: SLOAD 00000572: DUP3 00000573: ADD 00000574: SWAP1 00000575: SSTORE 00000576: SWAP1 00000577: POP 00000578: JUMPDEST 00000579: POP 0000057a: POP 0000057b: JUMP 0000057c: JUMPDEST 0000057d: PUSH1 0x09 0000057f: SLOAD 00000580: TIMESTAMP 00000581: LT 00000582: PUSH2 0x058a 00000585: JUMPI 00000586: PUSH2 0x0002 00000589: JUMP 0000058a: JUMPDEST 0000058b: CALLVALUE 0000058c: PUSH1 0x00 0000058e: EQ 0000058f: ISZERO 00000590: PUSH2 0x0598 00000593: JUMPI 00000594: PUSH2 0x0002 00000597: JUMP 00000598: JUMPDEST 00000599: PUSH8 0x0de0b6b3a7640000 000005a2: PUSH2 0x0547 000005a5: PUSH2 0x032c 000005a8: JUMP 000005a9: JUMPDEST 000005aa: DUP3 000005ab: ADD 000005ac: SWAP2 000005ad: SWAP1 000005ae: PUSH1 0x00 000005b0: MSTORE 000005b1: PUSH1 0x20 000005b3: PUSH1 0x00 000005b5: KECCAK256 000005b6: SWAP1 000005b7: JUMPDEST 000005b8: DUP2 000005b9: SLOAD 000005ba: DUP2 000005bb: MSTORE 000005bc: SWAP1 000005bd: PUSH1 0x01 000005bf: ADD 000005c0: SWAP1 000005c1: PUSH1 0x20 000005c3: ADD 000005c4: DUP1 000005c5: DUP4 000005c6: GT 000005c7: PUSH2 0x05b7 000005ca: JUMPI 000005cb: DUP3 000005cc: SWAP1 000005cd: SUB 000005ce: PUSH1 0x1f 000005d0: AND 000005d1: DUP3 000005d2: ADD 000005d3: SWAP2 000005d4: JUMPDEST 000005d5: POP 000005d6: POP 000005d7: POP 000005d8: POP 000005d9: POP 000005da: DUP2 000005db: JUMP 000005dc: JUMPDEST 000005dd: POP 000005de: PUSH1 0x00 000005e0: JUMPDEST 000005e1: SWAP4 000005e2: SWAP3 000005e3: POP 000005e4: POP 000005e5: POP 000005e6: JUMP 000005e7: JUMPDEST 000005e8: PUSH1 0x08 000005ea: SLOAD 000005eb: TIMESTAMP 000005ec: LT 000005ed: DUP1 000005ee: ISZERO 000005ef: SWAP1 000005f0: PUSH2 0x05fa 000005f3: JUMPI 000005f4: POP 000005f5: PUSH1 0x09 000005f7: SLOAD 000005f8: TIMESTAMP 000005f9: LT 000005fa: JUMPDEST 000005fb: ISZERO 000005fc: PUSH2 0x0609 000005ff: JUMPI 00000600: PUSH1 0x07 00000602: SLOAD 00000603: SWAP3 00000604: POP 00000605: PUSH2 0x033e 00000608: JUMP 00000609: JUMPDEST 0000060a: PUSH1 0x09 0000060c: SLOAD 0000060d: TIMESTAMP 0000060e: LT 0000060f: DUP1 00000610: ISZERO 00000611: SWAP1 00000612: PUSH2 0x061c 00000615: JUMPI 00000616: POP 00000617: PUSH1 0x0a 00000619: SLOAD 0000061a: TIMESTAMP 0000061b: LT 0000061c: JUMPDEST 0000061d: ISZERO 0000061e: PUSH2 0x0648 00000621: JUMPI 00000622: POP 00000623: POP 00000624: PUSH1 0x09 00000626: SLOAD 00000627: PUSH1 0x07 00000629: SLOAD 0000062a: PUSH3 0x015180 0000062e: TIMESTAMP 0000062f: SWAP3 00000630: SWAP1 00000631: SWAP3 00000632: SUB 00000633: SWAP2 00000634: SWAP1 00000635: SWAP2 00000636: DIV 00000637: PUSH1 0x01 00000639: ADD 0000063a: PUSH1 0x05 0000063c: DUP2 0000063d: DUP2 0000063e: MUL 0000063f: SWAP1 00000640: SWAP3 00000641: SUB 00000642: SWAP3 00000643: POP 00000644: PUSH2 0x033e 00000647: JUMP 00000648: JUMPDEST 00000649: PUSH1 0x0a 0000064b: SLOAD 0000064c: TIMESTAMP 0000064d: LT 0000064e: DUP1 0000064f: ISZERO 00000650: SWAP1 00000651: PUSH2 0x065b 00000654: JUMPI 00000655: POP 00000656: PUSH1 0x0b 00000658: SLOAD 00000659: TIMESTAMP 0000065a: LT 0000065b: JUMPDEST 0000065c: ISZERO 0000065d: PUSH2 0x066e 00000660: JUMPI 00000661: PUSH1 0x07 00000663: SLOAD 00000664: PUSH1 0x02 00000666: SWAP1 00000667: DIV 00000668: SWAP3 00000669: POP 0000066a: PUSH2 0x033e 0000066d: JUMP 0000066e: JUMPDEST 0000066f: PUSH1 0x0b 00000671: SLOAD 00000672: TIMESTAMP 00000673: LT 00000674: DUP1 00000675: ISZERO 00000676: SWAP1 00000677: PUSH2 0x0681 0000067a: JUMPI 0000067b: POP 0000067c: PUSH1 0x0c 0000067e: SLOAD 0000067f: TIMESTAMP 00000680: LT 00000681: JUMPDEST 00000682: ISZERO 00000683: PUSH2 0x06b0 00000686: JUMPI 00000687: POP 00000688: POP 00000689: PUSH1 0x07 0000068b: SLOAD 0000068c: PUSH1 0x0b 0000068e: SLOAD 0000068f: PUSH3 0x015180 00000693: TIMESTAMP 00000694: SWAP2 00000695: SWAP1 00000696: SWAP2 00000697: SUB 00000698: DIV 00000699: PUSH1 0x01 0000069b: ADD 0000069c: PUSH1 0x03 0000069e: DUP2 0000069f: DUP2 000006a0: MUL 000006a1: PUSH1 0x02 000006a3: SWAP1 000006a4: SWAP4 000006a5: DIV 000006a6: SWAP3 000006a7: SWAP1 000006a8: SWAP3 000006a9: SUB 000006aa: SWAP3 000006ab: POP 000006ac: PUSH2 0x033e 000006af: JUMP 000006b0: JUMPDEST 000006b1: PUSH1 0x0c 000006b3: SLOAD 000006b4: TIMESTAMP 000006b5: LT 000006b6: PUSH2 0x033e 000006b9: JUMPI 000006ba: PUSH1 0x00 000006bc: SWAP3 000006bd: POP 000006be: PUSH2 0x033e 000006c1: JUMP 000006c2: JUMPDEST 000006c3: POP 000006c4: PUSH1 0x00 000006c6: PUSH2 0x0186 000006c9: JUMP 000006ca: JUMPDEST 000006cb: PUSH1 0x40 000006cd: MLOAD 000006ce: PUSH1 0x01 000006d0: PUSH1 0xa0 000006d2: PUSH1 0x02 000006d4: EXP 000006d5: SUB 000006d6: DUP4 000006d7: AND 000006d8: SWAP1 000006d9: PUSH1 0x00 000006db: SWAP1 000006dc: DUP4 000006dd: SWAP1 000006de: DUP3 000006df: DUP2 000006e0: DUP2 000006e1: DUP2 000006e2: DUP6 000006e3: DUP9 000006e4: DUP4 000006e5: CALL 000006e6: SWAP4 000006e7: POP 000006e8: POP 000006e9: POP 000006ea: POP 000006eb: ISZERO 000006ec: ISZERO 000006ed: PUSH2 0x0578 000006f0: JUMPI 000006f1: PUSH2 0x0002 000006f4: 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 | yes | yes |
viewtrace_id: 0x074928ffdd7a27e1d326eeccf495e66417ea322305cd584702843a6c7d0fe0e2
call_targets:
0x0000000000000000000000000000000000000004, 0xeaa5cc34c1e17fd9a6eec88c3b210d9a3700fe03
target_varies:
yes
classification:
target_varies
validation_json{
"sink": "CALL",
"errors": 0,
"status": "confirmed",
"attempts": 1,
"trace_id": "0x074928ffdd7a27e1d326eeccf495e66417ea322305cd584702843a6c7d0fe0e2",
"confirmed": true,
"trace_mode": "callTracer",
"call_targets": [
"0x0000000000000000000000000000000000000004",
"0xeaa5cc34c1e17fd9a6eec88c3b210d9a3700fe03"
],
"matched_probe": null,
"target_varies": true,
"classification": "target_varies"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x06fdde03",
"selector": "0x06fdde03",
"calldata_variants": [
"0x06fdde03",
"0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x095ea7b3",
"selector": "0x095ea7b3",
"calldata_variants": [
"0x095ea7b3",
"0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x23b872dd",
"selector": "0x23b872dd",
"calldata_variants": [
"0x23b872dd",
"0x23b872dd0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x313ce567",
"selector": "0x313ce567",
"calldata_variants": [
"0x313ce567",
"0x313ce5670000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x6f0b5180",
"selector": "0x6f0b5180",
"calldata_variants": [
"0x6f0b5180",
"0x6f0b51800000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x70a08231",
"selector": "0x70a08231",
"calldata_variants": [
"0x70a08231",
"0x70a082310000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x95d89b41",
"selector": "0x95d89b41",
"calldata_variants": [
"0x95d89b41",
"0x95d89b410000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x98d5fdca",
"selector": "0x98d5fdca",
"calldata_variants": [
"0x98d5fdca",
"0x98d5fdca0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 1253,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1765,
"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 | yes | yes |
viewtrace_id: 0x074928ffdd7a27e1d326eeccf495e66417ea322305cd584702843a6c7d0fe0e2
call_targets:
0x0000000000000000000000000000000000000004, 0xeaa5cc34c1e17fd9a6eec88c3b210d9a3700fe03
target_varies:
yes
classification:
target_varies
validation_json{
"sink": "CALL",
"errors": 0,
"status": "confirmed",
"attempts": 1,
"trace_id": "0x074928ffdd7a27e1d326eeccf495e66417ea322305cd584702843a6c7d0fe0e2",
"confirmed": true,
"trace_mode": "callTracer",
"call_targets": [
"0x0000000000000000000000000000000000000004",
"0xeaa5cc34c1e17fd9a6eec88c3b210d9a3700fe03"
],
"matched_probe": null,
"target_varies": true,
"classification": "target_varies"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x06fdde03",
"selector": "0x06fdde03",
"calldata_variants": [
"0x06fdde03",
"0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x095ea7b3",
"selector": "0x095ea7b3",
"calldata_variants": [
"0x095ea7b3",
"0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x23b872dd",
"selector": "0x23b872dd",
"calldata_variants": [
"0x23b872dd",
"0x23b872dd0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x313ce567",
"selector": "0x313ce567",
"calldata_variants": [
"0x313ce567",
"0x313ce5670000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x6f0b5180",
"selector": "0x6f0b5180",
"calldata_variants": [
"0x6f0b5180",
"0x6f0b51800000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x70a08231",
"selector": "0x70a08231",
"calldata_variants": [
"0x70a08231",
"0x70a082310000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x95d89b41",
"selector": "0x95d89b41",
"calldata_variants": [
"0x95d89b41",
"0x95d89b410000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x98d5fdca",
"selector": "0x98d5fdca",
"calldata_variants": [
"0x98d5fdca",
"0x98d5fdca0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 1253,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1765,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 2,
"guards_detected": []
}
|