019b3836-5848-734a-9871-1a3e6e40ed37
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 |
|---|---|---|---|---|
| 8617 | artifact.fetch | complete | 1 / 3 | 3 months ago |
| 8618 | tool.cast_disasm | complete | 1 / 3 | 3 months ago |
| 98474 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 98475 | capability.graph | complete | 1 / 3 | 1 week ago |
| 98476 | detector.run | complete | 1 / 3 | 1 week ago |
| 98477 | validation.fork | complete | 1 / 3 | 1 week ago |
| 113853 | report.consolidate | complete | 1 / 6 | 1 week ago |
No slither job recorded yet.
OpenAI Codex v0.118.0 (research preview) -------- workdir: /tmp/codex-psw0sup8 model: gpt-5.4 provider: openai approval: never sandbox: read-only reasoning effort: high reasoning summaries: none session id: 019d5ca0-d305-70d1-a4bd-0b67ca15053f -------- 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:52:18.579067+00:00",
"returncode": 1
},
"project": {
"mode": "bytecode",
"bytecode_length": 2542,
"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 0x008d 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 0x0098 0000001e: JUMPI 0000001f: DUP1 00000020: PUSH4 0x13330d7e 00000025: EQ 00000026: PUSH2 0x00f3 00000029: JUMPI 0000002a: DUP1 0000002b: PUSH4 0x18160ddd 00000030: EQ 00000031: PUSH2 0x0118 00000034: JUMPI 00000035: DUP1 00000036: PUSH4 0x313ce567 0000003b: EQ 0000003c: PUSH2 0x0121 0000003f: JUMPI 00000040: DUP1 00000041: PUSH4 0x4ef83a70 00000046: EQ 00000047: PUSH2 0x012d 0000004a: JUMPI 0000004b: DUP1 0000004c: PUSH4 0x70a08231 00000051: EQ 00000052: PUSH2 0x014c 00000055: JUMPI 00000056: DUP1 00000057: PUSH4 0x8da5cb5b 0000005c: EQ 0000005d: PUSH2 0x0171 00000060: JUMPI 00000061: DUP1 00000062: PUSH4 0x95d89b41 00000067: EQ 00000068: PUSH2 0x0183 0000006b: JUMPI 0000006c: DUP1 0000006d: PUSH4 0xa9059cbb 00000072: EQ 00000073: PUSH2 0x01e3 00000076: JUMPI 00000077: DUP1 00000078: PUSH4 0xb8491317 0000007d: EQ 0000007e: PUSH2 0x0212 00000081: JUMPI 00000082: DUP1 00000083: PUSH4 0xcdbb2e79 00000088: EQ 00000089: PUSH2 0x021b 0000008c: JUMPI 0000008d: JUMPDEST 0000008e: PUSH2 0x0224 00000091: PUSH2 0x0226 00000094: PUSH2 0x00f7 00000097: JUMP 00000098: JUMPDEST 00000099: PUSH1 0x40 0000009b: DUP1 0000009c: MLOAD 0000009d: PUSH1 0x02 0000009f: DUP1 000000a0: SLOAD 000000a1: PUSH1 0x20 000000a3: PUSH1 0x01 000000a5: DUP3 000000a6: AND 000000a7: ISZERO 000000a8: PUSH2 0x0100 000000ab: MUL 000000ac: PUSH1 0x00 000000ae: NOT 000000af: ADD 000000b0: SWAP1 000000b1: SWAP2 000000b2: AND 000000b3: DUP3 000000b4: SWAP1 000000b5: DIV 000000b6: PUSH1 0x1f 000000b8: DUP2 000000b9: ADD 000000ba: DUP3 000000bb: SWAP1 000000bc: DIV 000000bd: DUP3 000000be: MUL 000000bf: DUP5 000000c0: ADD 000000c1: DUP3 000000c2: ADD 000000c3: SWAP1 000000c4: SWAP5 000000c5: MSTORE 000000c6: DUP4 000000c7: DUP4 000000c8: MSTORE 000000c9: PUSH2 0x0229 000000cc: SWAP4 000000cd: SWAP1 000000ce: DUP4 000000cf: ADD 000000d0: DUP3 000000d1: DUP3 000000d2: DUP1 000000d3: ISZERO 000000d4: PUSH2 0x03f9 000000d7: JUMPI 000000d8: DUP1 000000d9: PUSH1 0x1f 000000db: LT 000000dc: PUSH2 0x03ce 000000df: JUMPI 000000e0: PUSH2 0x0100 000000e3: DUP1 000000e4: DUP4 000000e5: SLOAD 000000e6: DIV 000000e7: MUL 000000e8: DUP4 000000e9: MSTORE 000000ea: SWAP2 000000eb: PUSH1 0x20 000000ed: ADD 000000ee: SWAP2 000000ef: PUSH2 0x03f9 000000f2: JUMP 000000f3: JUMPDEST 000000f4: PUSH2 0x0297 000000f7: JUMPDEST 000000f8: PUSH1 0x01 000000fa: SLOAD 000000fb: PUSH1 0x00 000000fd: SWAP1 000000fe: DUP2 000000ff: SWAP1 00000100: CALLER 00000101: PUSH1 0x01 00000103: PUSH1 0xa0 00000105: PUSH1 0x02 00000107: EXP 00000108: SUB 00000109: SWAP1 0000010a: DUP2 0000010b: AND 0000010c: SWAP2 0000010d: AND 0000010e: EQ 0000010f: ISZERO 00000110: PUSH2 0x02f0 00000113: JUMPI 00000114: PUSH2 0x0002 00000117: JUMP 00000118: JUMPDEST 00000119: PUSH2 0x02ab 0000011c: PUSH1 0x05 0000011e: SLOAD 0000011f: DUP2 00000120: JUMP 00000121: JUMPDEST 00000122: PUSH2 0x02bd 00000125: PUSH1 0x04 00000127: SLOAD 00000128: PUSH1 0xff 0000012a: AND 0000012b: DUP2 0000012c: JUMP 0000012d: JUMPDEST 0000012e: PUSH2 0x0297 00000131: PUSH1 0x04 00000133: CALLDATALOAD 00000134: PUSH1 0x00 00000136: DUP2 00000137: ADDRESS 00000138: PUSH1 0x01 0000013a: PUSH1 0xa0 0000013c: PUSH1 0x02 0000013e: EXP 0000013f: SUB 00000140: AND 00000141: BALANCE 00000142: LT 00000143: ISZERO 00000144: PUSH2 0x0401 00000147: JUMPI 00000148: PUSH2 0x0002 0000014b: JUMP 0000014c: JUMPDEST 0000014d: PUSH2 0x02ab 00000150: PUSH1 0x04 00000152: CALLDATALOAD 00000153: PUSH1 0x01 00000155: PUSH1 0xa0 00000157: PUSH1 0x02 00000159: EXP 0000015a: SUB 0000015b: DUP2 0000015c: AND 0000015d: PUSH1 0x00 0000015f: SWAP1 00000160: DUP2 00000161: MSTORE 00000162: PUSH1 0x20 00000164: DUP2 00000165: SWAP1 00000166: MSTORE 00000167: PUSH1 0x40 00000169: SWAP1 0000016a: KECCAK256 0000016b: SLOAD 0000016c: JUMPDEST 0000016d: SWAP2 0000016e: SWAP1 0000016f: POP 00000170: JUMP 00000171: JUMPDEST 00000172: PUSH2 0x02d3 00000175: PUSH1 0x01 00000177: SLOAD 00000178: PUSH1 0x01 0000017a: PUSH1 0xa0 0000017c: PUSH1 0x02 0000017e: EXP 0000017f: SUB 00000180: AND 00000181: DUP2 00000182: JUMP 00000183: JUMPDEST 00000184: PUSH2 0x0229 00000187: PUSH1 0x03 00000189: DUP1 0000018a: SLOAD 0000018b: PUSH1 0x40 0000018d: DUP1 0000018e: MLOAD 0000018f: PUSH1 0x20 00000191: PUSH1 0x1f 00000193: PUSH1 0x02 00000195: PUSH1 0x00 00000197: NOT 00000198: PUSH1 0x01 0000019a: DUP8 0000019b: AND 0000019c: ISZERO 0000019d: PUSH2 0x0100 000001a0: MUL 000001a1: ADD 000001a2: SWAP1 000001a3: SWAP6 000001a4: AND 000001a5: SWAP5 000001a6: SWAP1 000001a7: SWAP5 000001a8: DIV 000001a9: SWAP4 000001aa: DUP5 000001ab: ADD 000001ac: DUP2 000001ad: SWAP1 000001ae: DIV 000001af: DUP2 000001b0: MUL 000001b1: DUP3 000001b2: ADD 000001b3: DUP2 000001b4: ADD 000001b5: SWAP1 000001b6: SWAP3 000001b7: MSTORE 000001b8: DUP3 000001b9: DUP2 000001ba: MSTORE 000001bb: SWAP3 000001bc: SWAP2 000001bd: SWAP1 000001be: DUP4 000001bf: ADD 000001c0: DUP3 000001c1: DUP3 000001c2: DUP1 000001c3: ISZERO 000001c4: PUSH2 0x03f9 000001c7: JUMPI 000001c8: DUP1 000001c9: PUSH1 0x1f 000001cb: LT 000001cc: PUSH2 0x03ce 000001cf: JUMPI 000001d0: PUSH2 0x0100 000001d3: DUP1 000001d4: DUP4 000001d5: SLOAD 000001d6: DIV 000001d7: MUL 000001d8: DUP4 000001d9: MSTORE 000001da: SWAP2 000001db: PUSH1 0x20 000001dd: ADD 000001de: SWAP2 000001df: PUSH2 0x03f9 000001e2: JUMP 000001e3: JUMPDEST 000001e4: PUSH2 0x0297 000001e7: PUSH1 0x04 000001e9: CALLDATALOAD 000001ea: PUSH1 0x24 000001ec: CALLDATALOAD 000001ed: CALLER 000001ee: PUSH1 0x01 000001f0: PUSH1 0xa0 000001f2: PUSH1 0x02 000001f4: EXP 000001f5: SUB 000001f6: AND 000001f7: PUSH1 0x00 000001f9: SWAP1 000001fa: DUP2 000001fb: MSTORE 000001fc: PUSH1 0x20 000001fe: DUP2 000001ff: SWAP1 00000200: MSTORE 00000201: PUSH1 0x40 00000203: DUP2 00000204: KECCAK256 00000205: SLOAD 00000206: DUP3 00000207: SWAP1 00000208: LT 00000209: ISZERO 0000020a: PUSH2 0x0452 0000020d: JUMPI 0000020e: PUSH2 0x0002 00000211: JUMP 00000212: JUMPDEST 00000213: PUSH2 0x02ab 00000216: PUSH1 0x06 00000218: SLOAD 00000219: DUP2 0000021a: JUMP 0000021b: JUMPDEST 0000021c: PUSH2 0x02ab 0000021f: PUSH1 0x07 00000221: SLOAD 00000222: DUP2 00000223: JUMP 00000224: JUMPDEST 00000225: STOP 00000226: JUMPDEST 00000227: POP 00000228: JUMP 00000229: JUMPDEST 0000022a: PUSH1 0x40 0000022c: MLOAD 0000022d: DUP1 0000022e: DUP1 0000022f: PUSH1 0x20 00000231: ADD 00000232: DUP3 00000233: DUP2 00000234: SUB 00000235: DUP3 00000236: MSTORE 00000237: DUP4 00000238: DUP2 00000239: DUP2 0000023a: MLOAD 0000023b: DUP2 0000023c: MSTORE 0000023d: PUSH1 0x20 0000023f: ADD 00000240: SWAP2 00000241: POP 00000242: DUP1 00000243: MLOAD 00000244: SWAP1 00000245: PUSH1 0x20 00000247: ADD 00000248: SWAP1 00000249: DUP1 0000024a: DUP4 0000024b: DUP4 0000024c: DUP3 0000024d: SWAP1 0000024e: PUSH1 0x00 00000250: PUSH1 0x04 00000252: PUSH1 0x20 00000254: DUP5 00000255: PUSH1 0x1f 00000257: ADD 00000258: DIV 00000259: PUSH1 0x0f 0000025b: MUL 0000025c: PUSH1 0x03 0000025e: ADD 0000025f: CALL 00000260: POP 00000261: SWAP1 00000262: POP 00000263: SWAP1 00000264: DUP2 00000265: ADD 00000266: SWAP1 00000267: PUSH1 0x1f 00000269: AND 0000026a: DUP1 0000026b: ISZERO 0000026c: PUSH2 0x0289 0000026f: JUMPI 00000270: DUP1 00000271: DUP3 00000272: SUB 00000273: DUP1 00000274: MLOAD 00000275: PUSH1 0x01 00000277: DUP4 00000278: PUSH1 0x20 0000027a: SUB 0000027b: PUSH2 0x0100 0000027e: EXP 0000027f: SUB 00000280: NOT 00000281: AND 00000282: DUP2 00000283: MSTORE 00000284: PUSH1 0x20 00000286: ADD 00000287: SWAP2 00000288: POP 00000289: JUMPDEST 0000028a: POP 0000028b: SWAP3 0000028c: POP 0000028d: POP 0000028e: POP 0000028f: PUSH1 0x40 00000291: MLOAD 00000292: DUP1 00000293: SWAP2 00000294: SUB 00000295: SWAP1 00000296: RETURN 00000297: JUMPDEST 00000298: PUSH1 0x40 0000029a: DUP1 0000029b: MLOAD 0000029c: SWAP2 0000029d: ISZERO 0000029e: ISZERO 0000029f: DUP3 000002a0: MSTORE 000002a1: MLOAD 000002a2: SWAP1 000002a3: DUP2 000002a4: SWAP1 000002a5: SUB 000002a6: PUSH1 0x20 000002a8: ADD 000002a9: SWAP1 000002aa: RETURN 000002ab: JUMPDEST 000002ac: PUSH1 0x40 000002ae: DUP1 000002af: MLOAD 000002b0: SWAP2 000002b1: DUP3 000002b2: MSTORE 000002b3: MLOAD 000002b4: SWAP1 000002b5: DUP2 000002b6: SWAP1 000002b7: SUB 000002b8: PUSH1 0x20 000002ba: ADD 000002bb: SWAP1 000002bc: RETURN 000002bd: JUMPDEST 000002be: PUSH1 0x40 000002c0: DUP1 000002c1: MLOAD 000002c2: PUSH1 0xff 000002c4: SWAP1 000002c5: SWAP3 000002c6: AND 000002c7: DUP3 000002c8: MSTORE 000002c9: MLOAD 000002ca: SWAP1 000002cb: DUP2 000002cc: SWAP1 000002cd: SUB 000002ce: PUSH1 0x20 000002d0: ADD 000002d1: SWAP1 000002d2: RETURN 000002d3: JUMPDEST 000002d4: PUSH1 0x40 000002d6: DUP1 000002d7: MLOAD 000002d8: PUSH1 0x01 000002da: PUSH1 0xa0 000002dc: PUSH1 0x02 000002de: EXP 000002df: SUB 000002e0: SWAP3 000002e1: SWAP1 000002e2: SWAP3 000002e3: AND 000002e4: DUP3 000002e5: MSTORE 000002e6: MLOAD 000002e7: SWAP1 000002e8: DUP2 000002e9: SWAP1 000002ea: SUB 000002eb: PUSH1 0x20 000002ed: ADD 000002ee: SWAP1 000002ef: RETURN 000002f0: JUMPDEST 000002f1: PUSH1 0x07 000002f3: SLOAD 000002f4: TIMESTAMP 000002f5: GT 000002f6: ISZERO 000002f7: PUSH2 0x02ff 000002fa: JUMPI 000002fb: PUSH2 0x0002 000002fe: JUMP 000002ff: JUMPDEST 00000300: PUSH1 0x00 00000302: SWAP1 00000303: POP 00000304: TIMESTAMP 00000305: PUSH3 0x1a5e00 00000309: PUSH1 0x07 0000030b: PUSH1 0x00 0000030d: POP 0000030e: SLOAD 0000030f: SUB 00000310: GT 00000311: ISZERO 00000312: PUSH2 0x031c 00000315: JUMPI 00000316: POP 00000317: CALLVALUE 00000318: PUSH2 0x0344 0000031b: JUMP 0000031c: JUMPDEST 0000031d: TIMESTAMP 0000031e: PUSH3 0x0d2f00 00000322: PUSH1 0x07 00000324: PUSH1 0x00 00000326: POP 00000327: SLOAD 00000328: SUB 00000329: GT 0000032a: ISZERO 0000032b: PUSH2 0x033b 0000032e: JUMPI 0000032f: POP 00000330: PUSH1 0x06 00000332: PUSH1 0x05 00000334: CALLVALUE 00000335: MUL 00000336: DIV 00000337: PUSH2 0x0344 0000033a: JUMP 0000033b: JUMPDEST 0000033c: POP 0000033d: PUSH1 0x07 0000033f: PUSH1 0x05 00000341: CALLVALUE 00000342: MUL 00000343: DIV 00000344: JUMPDEST 00000345: CALLER 00000346: PUSH1 0x01 00000348: PUSH1 0xa0 0000034a: PUSH1 0x02 0000034c: EXP 0000034d: SUB 0000034e: AND 0000034f: PUSH1 0x00 00000351: SWAP1 00000352: DUP2 00000353: MSTORE 00000354: PUSH1 0x20 00000356: DUP2 00000357: SWAP1 00000358: MSTORE 00000359: PUSH1 0x40 0000035b: SWAP1 0000035c: KECCAK256 0000035d: DUP1 0000035e: SLOAD 0000035f: DUP3 00000360: ADD 00000361: SWAP1 00000362: SSTORE 00000363: PUSH1 0x06 00000365: DUP1 00000366: SLOAD 00000367: DUP3 00000368: ADD 00000369: SWAP1 0000036a: DUP2 0000036b: SWAP1 0000036c: SSTORE 0000036d: PUSH1 0x05 0000036f: SLOAD 00000370: SWAP1 00000371: GT 00000372: ISZERO 00000373: PUSH2 0x037b 00000376: JUMPI 00000377: PUSH2 0x0002 0000037a: JUMP 0000037b: JUMPDEST 0000037c: CALLER 0000037d: PUSH1 0x01 0000037f: PUSH1 0xa0 00000381: PUSH1 0x02 00000383: EXP 00000384: SUB 00000385: AND 00000386: ADDRESS 00000387: PUSH1 0x01 00000389: PUSH1 0xa0 0000038b: PUSH1 0x02 0000038d: EXP 0000038e: SUB 0000038f: AND 00000390: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 000003b1: DUP4 000003b2: PUSH1 0x40 000003b4: MLOAD 000003b5: DUP1 000003b6: DUP3 000003b7: DUP2 000003b8: MSTORE 000003b9: PUSH1 0x20 000003bb: ADD 000003bc: SWAP2 000003bd: POP 000003be: POP 000003bf: PUSH1 0x40 000003c1: MLOAD 000003c2: DUP1 000003c3: SWAP2 000003c4: SUB 000003c5: SWAP1 000003c6: LOG3 000003c7: PUSH1 0x01 000003c9: SWAP2 000003ca: POP 000003cb: POP 000003cc: SWAP1 000003cd: JUMP 000003ce: JUMPDEST 000003cf: DUP3 000003d0: ADD 000003d1: SWAP2 000003d2: SWAP1 000003d3: PUSH1 0x00 000003d5: MSTORE 000003d6: PUSH1 0x20 000003d8: PUSH1 0x00 000003da: KECCAK256 000003db: SWAP1 000003dc: JUMPDEST 000003dd: DUP2 000003de: SLOAD 000003df: DUP2 000003e0: MSTORE 000003e1: SWAP1 000003e2: PUSH1 0x01 000003e4: ADD 000003e5: SWAP1 000003e6: PUSH1 0x20 000003e8: ADD 000003e9: DUP1 000003ea: DUP4 000003eb: GT 000003ec: PUSH2 0x03dc 000003ef: JUMPI 000003f0: DUP3 000003f1: SWAP1 000003f2: SUB 000003f3: PUSH1 0x1f 000003f5: AND 000003f6: DUP3 000003f7: ADD 000003f8: SWAP2 000003f9: JUMPDEST 000003fa: POP 000003fb: POP 000003fc: POP 000003fd: POP 000003fe: POP 000003ff: DUP2 00000400: JUMP 00000401: JUMPDEST 00000402: PUSH1 0x01 00000404: SLOAD 00000405: CALLER 00000406: PUSH1 0x01 00000408: PUSH1 0xa0 0000040a: PUSH1 0x02 0000040c: EXP 0000040d: SUB 0000040e: SWAP1 0000040f: DUP2 00000410: AND 00000411: SWAP2 00000412: AND 00000413: EQ 00000414: PUSH2 0x041c 00000417: JUMPI 00000418: PUSH2 0x0002 0000041b: JUMP 0000041c: JUMPDEST 0000041d: PUSH1 0x40 0000041f: MLOAD 00000420: CALLER 00000421: PUSH1 0x01 00000423: PUSH1 0xa0 00000425: PUSH1 0x02 00000427: EXP 00000428: SUB 00000429: AND 0000042a: SWAP1 0000042b: PUSH1 0x00 0000042d: SWAP1 0000042e: DUP5 0000042f: SWAP1 00000430: DUP3 00000431: DUP2 00000432: DUP2 00000433: DUP2 00000434: DUP6 00000435: DUP9 00000436: DUP4 00000437: CALL 00000438: SWAP4 00000439: POP 0000043a: POP 0000043b: POP 0000043c: POP 0000043d: ISZERO 0000043e: ISZERO 0000043f: PUSH2 0x044a 00000442: JUMPI 00000443: POP 00000444: PUSH1 0x00 00000446: PUSH2 0x016c 00000449: JUMP 0000044a: JUMPDEST 0000044b: POP 0000044c: PUSH1 0x01 0000044e: PUSH2 0x016c 00000451: JUMP 00000452: JUMPDEST 00000453: PUSH1 0x01 00000455: PUSH1 0xa0 00000457: PUSH1 0x02 00000459: EXP 0000045a: SUB 0000045b: DUP4 0000045c: AND 0000045d: PUSH1 0x00 0000045f: SWAP1 00000460: DUP2 00000461: MSTORE 00000462: PUSH1 0x20 00000464: DUP2 00000465: SWAP1 00000466: MSTORE 00000467: PUSH1 0x40 00000469: SWAP1 0000046a: KECCAK256 0000046b: SLOAD 0000046c: DUP1 0000046d: DUP4 0000046e: ADD 0000046f: LT 00000470: ISZERO 00000471: PUSH2 0x0479 00000474: JUMPI 00000475: PUSH2 0x0002 00000478: JUMP 00000479: JUMPDEST 0000047a: PUSH1 0x07 0000047c: SLOAD 0000047d: TIMESTAMP 0000047e: LT 0000047f: ISZERO 00000480: PUSH2 0x0488 00000483: JUMPI 00000484: PUSH2 0x0002 00000487: JUMP 00000488: JUMPDEST 00000489: PUSH1 0x01 0000048b: PUSH1 0xa0 0000048d: PUSH1 0x02 0000048f: EXP 00000490: SUB 00000491: CALLER 00000492: DUP2 00000493: AND 00000494: PUSH1 0x00 00000496: DUP2 00000497: DUP2 00000498: MSTORE 00000499: PUSH1 0x20 0000049b: DUP2 0000049c: DUP2 0000049d: MSTORE 0000049e: PUSH1 0x40 000004a0: DUP1 000004a1: DUP4 000004a2: KECCAK256 000004a3: DUP1 000004a4: SLOAD 000004a5: DUP9 000004a6: SWAP1 000004a7: SUB 000004a8: SWAP1 000004a9: SSTORE 000004aa: SWAP4 000004ab: DUP8 000004ac: AND 000004ad: DUP1 000004ae: DUP4 000004af: MSTORE 000004b0: SWAP2 000004b1: DUP5 000004b2: SWAP1 000004b3: KECCAK256 000004b4: DUP1 000004b5: SLOAD 000004b6: DUP8 000004b7: ADD 000004b8: SWAP1 000004b9: SSTORE 000004ba: DUP4 000004bb: MLOAD 000004bc: DUP7 000004bd: DUP2 000004be: MSTORE 000004bf: SWAP4 000004c0: MLOAD 000004c1: SWAP2 000004c2: SWAP4 000004c3: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 000004e4: SWAP3 000004e5: SWAP1 000004e6: DUP2 000004e7: SWAP1 000004e8: SUB 000004e9: SWAP1 000004ea: SWAP2 000004eb: ADD 000004ec: SWAP1 000004ed: LOG3 000004ee: POP 000004ef: PUSH1 0x01 000004f1: SWAP3 000004f2: SWAP2 000004f3: POP 000004f4: POP 000004f5: 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: 0x33cc3a23215d9ca5cd54680a7b9e717e9b534a929994580df210934380f441ba
call_targets:
0x0000000000000000000000000000000000000004, 0x1fccde3ab21f442c72d70902dc4b8bf662ea3691
target_varies:
yes
classification:
target_varies
validation_json{
"sink": "CALL",
"errors": 0,
"status": "confirmed",
"attempts": 1,
"trace_id": "0x33cc3a23215d9ca5cd54680a7b9e717e9b534a929994580df210934380f441ba",
"confirmed": true,
"trace_mode": "callTracer",
"call_targets": [
"0x0000000000000000000000000000000000000004",
"0x1fccde3ab21f442c72d70902dc4b8bf662ea3691"
],
"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": "0x13330d7e",
"selector": "0x13330d7e",
"calldata_variants": [
"0x13330d7e",
"0x13330d7e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x18160ddd",
"selector": "0x18160ddd",
"calldata_variants": [
"0x18160ddd",
"0x18160ddd0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x313ce567",
"selector": "0x313ce567",
"calldata_variants": [
"0x313ce567",
"0x313ce5670000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4ef83a70",
"selector": "0x4ef83a70",
"calldata_variants": [
"0x4ef83a70",
"0x4ef83a700000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x70a08231",
"selector": "0x70a08231",
"calldata_variants": [
"0x70a08231",
"0x70a082310000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8da5cb5b",
"selector": "0x8da5cb5b",
"calldata_variants": [
"0x8da5cb5b",
"0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x95d89b41",
"selector": "0x95d89b41",
"calldata_variants": [
"0x95d89b41",
"0x95d89b410000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 607,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1079,
"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: 0x33cc3a23215d9ca5cd54680a7b9e717e9b534a929994580df210934380f441ba
call_targets:
0x0000000000000000000000000000000000000004, 0x1fccde3ab21f442c72d70902dc4b8bf662ea3691
target_varies:
yes
classification:
target_varies
validation_json{
"sink": "CALL",
"errors": 0,
"status": "confirmed",
"attempts": 1,
"trace_id": "0x33cc3a23215d9ca5cd54680a7b9e717e9b534a929994580df210934380f441ba",
"confirmed": true,
"trace_mode": "callTracer",
"call_targets": [
"0x0000000000000000000000000000000000000004",
"0x1fccde3ab21f442c72d70902dc4b8bf662ea3691"
],
"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": "0x13330d7e",
"selector": "0x13330d7e",
"calldata_variants": [
"0x13330d7e",
"0x13330d7e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x18160ddd",
"selector": "0x18160ddd",
"calldata_variants": [
"0x18160ddd",
"0x18160ddd0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x313ce567",
"selector": "0x313ce567",
"calldata_variants": [
"0x313ce567",
"0x313ce5670000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4ef83a70",
"selector": "0x4ef83a70",
"calldata_variants": [
"0x4ef83a70",
"0x4ef83a700000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x70a08231",
"selector": "0x70a08231",
"calldata_variants": [
"0x70a08231",
"0x70a082310000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8da5cb5b",
"selector": "0x8da5cb5b",
"calldata_variants": [
"0x8da5cb5b",
"0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x95d89b41",
"selector": "0x95d89b41",
"calldata_variants": [
"0x95d89b41",
"0x95d89b410000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 607,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1079,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 2,
"guards_detected": []
}
|