019b3836-2ddd-7385-9faf-23f25b7ed9ea
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 |
|---|---|---|---|---|
| 2169 | artifact.fetch | complete | 1 / 3 | 3 months ago |
| 2170 | tool.cast_disasm | complete | 1 / 3 | 3 months ago |
| 96426 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 96427 | capability.graph | complete | 1 / 3 | 1 week ago |
| 96428 | detector.run | complete | 1 / 3 | 1 week ago |
| 96429 | validation.fork | complete | 1 / 3 | 1 week ago |
| 113812 | report.consolidate | complete | 1 / 6 | 1 week ago |
No slither job recorded yet.
OpenAI Codex v0.118.0 (research preview) -------- workdir: /tmp/codex-ue00hduy model: gpt-5.4 provider: openai approval: never sandbox: read-only reasoning effort: high reasoning summaries: none session id: 019d5c9f-6300-71c1-9ed8-bf359d19cd84 -------- 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:50:44.220291+00:00",
"returncode": 1
},
"project": {
"mode": "bytecode",
"bytecode_length": 3750,
"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 0x0095 0000000a: JUMPI 0000000b: PUSH1 0x00 0000000d: CALLDATALOAD 0000000e: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 0000002c: SWAP1 0000002d: DIV 0000002e: DUP1 0000002f: PUSH4 0x35f46994 00000034: EQ 00000035: PUSH2 0x0161 00000038: JUMPI 00000039: DUP1 0000003a: PUSH4 0x3f9effdc 0000003f: EQ 00000040: PUSH2 0x0170 00000043: JUMPI 00000044: DUP1 00000045: PUSH4 0x4049700f 0000004a: EQ 0000004b: PUSH2 0x019c 0000004e: JUMPI 0000004f: DUP1 00000050: PUSH4 0xa6f9dae1 00000055: EQ 00000056: PUSH2 0x01bf 00000059: JUMPI 0000005a: DUP1 0000005b: PUSH4 0xb3364a26 00000060: EQ 00000061: PUSH2 0x01d7 00000064: JUMPI 00000065: DUP1 00000066: PUSH4 0xbf76c0ef 0000006b: EQ 0000006c: PUSH2 0x01fa 0000006f: JUMPI 00000070: DUP1 00000071: PUSH4 0xd59933d5 00000076: EQ 00000077: PUSH2 0x0212 0000007a: JUMPI 0000007b: DUP1 0000007c: PUSH4 0xdb29fe12 00000081: EQ 00000082: PUSH2 0x0221 00000085: JUMPI 00000086: DUP1 00000087: PUSH4 0xde88a342 0000008c: EQ 0000008d: PUSH2 0x0239 00000090: JUMPI 00000091: PUSH2 0x0095 00000094: JUMP 00000095: JUMPDEST 00000096: PUSH2 0x015f 00000099: JUMPDEST 0000009a: PUSH1 0x00 0000009c: PUSH1 0x00 0000009e: PUSH1 0x00 000000a0: NUMBER 000000a1: PUSH32 0x5d6ac9b7defd8fbb29ef2ab0f08c3744192b3777466dd98d1fd7daed5064b6db 000000c2: CALLER 000000c3: CALLVALUE 000000c4: TIMESTAMP 000000c5: PUSH1 0x40 000000c7: MLOAD 000000c8: DUP1 000000c9: DUP5 000000ca: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000000df: AND 000000e0: DUP2 000000e1: MSTORE 000000e2: PUSH1 0x20 000000e4: ADD 000000e5: DUP4 000000e6: DUP2 000000e7: MSTORE 000000e8: PUSH1 0x20 000000ea: ADD 000000eb: DUP3 000000ec: DUP2 000000ed: MSTORE 000000ee: PUSH1 0x20 000000f0: ADD 000000f1: SWAP4 000000f2: POP 000000f3: POP 000000f4: POP 000000f5: POP 000000f6: PUSH1 0x40 000000f8: MLOAD 000000f9: DUP1 000000fa: SWAP2 000000fb: SUB 000000fc: SWAP1 000000fd: LOG2 000000fe: PUSH1 0x02 00000100: PUSH1 0x00 00000102: POP 00000103: SLOAD 00000104: PUSH1 0x00 00000106: CALLVALUE 00000107: MUL 00000108: DIV 00000109: SWAP3 0000010a: POP 0000010b: PUSH1 0x00 0000010d: SWAP2 0000010e: POP 0000010f: JUMPDEST 00000110: PUSH1 0x02 00000112: PUSH1 0x00 00000114: POP 00000115: SLOAD 00000116: DUP3 00000117: LT 00000118: ISZERO 00000119: PUSH2 0x0159 0000011c: JUMPI 0000011d: PUSH1 0x04 0000011f: PUSH1 0x00 00000121: POP 00000122: PUSH1 0x00 00000124: DUP4 00000125: DUP2 00000126: MSTORE 00000127: PUSH1 0x20 00000129: ADD 0000012a: SWAP1 0000012b: DUP2 0000012c: MSTORE 0000012d: PUSH1 0x20 0000012f: ADD 00000130: PUSH1 0x00 00000132: KECCAK256 00000133: PUSH1 0x00 00000135: POP 00000136: SWAP1 00000137: POP 00000138: DUP3 00000139: DUP2 0000013a: PUSH1 0x01 0000013c: ADD 0000013d: PUSH1 0x00 0000013f: DUP3 00000140: DUP3 00000141: DUP3 00000142: POP 00000143: SLOAD 00000144: ADD 00000145: SWAP3 00000146: POP 00000147: POP 00000148: DUP2 00000149: SWAP1 0000014a: SSTORE 0000014b: POP 0000014c: JUMPDEST 0000014d: DUP2 0000014e: DUP1 0000014f: PUSH1 0x01 00000151: ADD 00000152: SWAP3 00000153: POP 00000154: POP 00000155: PUSH2 0x010f 00000158: JUMP 00000159: JUMPDEST 0000015a: JUMPDEST 0000015b: POP 0000015c: POP 0000015d: POP 0000015e: JUMP 0000015f: JUMPDEST 00000160: STOP 00000161: JUMPDEST 00000162: PUSH2 0x016e 00000165: PUSH1 0x04 00000167: DUP1 00000168: POP 00000169: POP 0000016a: PUSH2 0x0715 0000016d: JUMP 0000016e: JUMPDEST 0000016f: STOP 00000170: JUMPDEST 00000171: PUSH2 0x0186 00000174: PUSH1 0x04 00000176: DUP1 00000177: DUP1 00000178: CALLDATALOAD 00000179: SWAP1 0000017a: PUSH1 0x20 0000017c: ADD 0000017d: SWAP1 0000017e: SWAP2 0000017f: SWAP1 00000180: POP 00000181: POP 00000182: PUSH2 0x02fc 00000185: JUMP 00000186: JUMPDEST 00000187: PUSH1 0x40 00000189: MLOAD 0000018a: DUP1 0000018b: DUP3 0000018c: DUP2 0000018d: MSTORE 0000018e: PUSH1 0x20 00000190: ADD 00000191: SWAP2 00000192: POP 00000193: POP 00000194: PUSH1 0x40 00000196: MLOAD 00000197: DUP1 00000198: SWAP2 00000199: SUB 0000019a: SWAP1 0000019b: RETURN 0000019c: JUMPDEST 0000019d: PUSH2 0x01a9 000001a0: PUSH1 0x04 000001a2: DUP1 000001a3: POP 000001a4: POP 000001a5: PUSH2 0x02ce 000001a8: JUMP 000001a9: JUMPDEST 000001aa: PUSH1 0x40 000001ac: MLOAD 000001ad: DUP1 000001ae: DUP3 000001af: DUP2 000001b0: MSTORE 000001b1: PUSH1 0x20 000001b3: ADD 000001b4: SWAP2 000001b5: POP 000001b6: POP 000001b7: PUSH1 0x40 000001b9: MLOAD 000001ba: DUP1 000001bb: SWAP2 000001bc: SUB 000001bd: SWAP1 000001be: RETURN 000001bf: JUMPDEST 000001c0: PUSH2 0x01d5 000001c3: PUSH1 0x04 000001c5: DUP1 000001c6: DUP1 000001c7: CALLDATALOAD 000001c8: SWAP1 000001c9: PUSH1 0x20 000001cb: ADD 000001cc: SWAP1 000001cd: SWAP2 000001ce: SWAP1 000001cf: POP 000001d0: POP 000001d1: PUSH2 0x0248 000001d4: JUMP 000001d5: JUMPDEST 000001d6: STOP 000001d7: JUMPDEST 000001d8: PUSH2 0x01e4 000001db: PUSH1 0x04 000001dd: DUP1 000001de: POP 000001df: POP 000001e0: PUSH2 0x02e5 000001e3: JUMP 000001e4: JUMPDEST 000001e5: PUSH1 0x40 000001e7: MLOAD 000001e8: DUP1 000001e9: DUP3 000001ea: DUP2 000001eb: MSTORE 000001ec: PUSH1 0x20 000001ee: ADD 000001ef: SWAP2 000001f0: POP 000001f1: POP 000001f2: PUSH1 0x40 000001f4: MLOAD 000001f5: DUP1 000001f6: SWAP2 000001f7: SUB 000001f8: SWAP1 000001f9: RETURN 000001fa: JUMPDEST 000001fb: PUSH2 0x0210 000001fe: PUSH1 0x04 00000200: DUP1 00000201: DUP1 00000202: CALLDATALOAD 00000203: SWAP1 00000204: PUSH1 0x20 00000206: ADD 00000207: SWAP1 00000208: SWAP2 00000209: SWAP1 0000020a: POP 0000020b: POP 0000020c: PUSH2 0x03e5 0000020f: JUMP 00000210: JUMPDEST 00000211: STOP 00000212: JUMPDEST 00000213: PUSH2 0x021f 00000216: PUSH1 0x04 00000218: DUP1 00000219: POP 0000021a: POP 0000021b: PUSH2 0x049a 0000021e: JUMP 0000021f: JUMPDEST 00000220: STOP 00000221: JUMPDEST 00000222: PUSH2 0x0237 00000225: PUSH1 0x04 00000227: DUP1 00000228: DUP1 00000229: CALLDATALOAD 0000022a: SWAP1 0000022b: PUSH1 0x20 0000022d: ADD 0000022e: SWAP1 0000022f: SWAP2 00000230: SWAP1 00000231: POP 00000232: POP 00000233: PUSH2 0x0330 00000236: JUMP 00000237: JUMPDEST 00000238: STOP 00000239: JUMPDEST 0000023a: PUSH2 0x0246 0000023d: PUSH1 0x04 0000023f: DUP1 00000240: POP 00000241: POP 00000242: PUSH2 0x0560 00000245: JUMP 00000246: JUMPDEST 00000247: STOP 00000248: JUMPDEST 00000249: PUSH1 0x00 0000024b: PUSH1 0x01 0000024d: SWAP1 0000024e: SLOAD 0000024f: SWAP1 00000250: PUSH2 0x0100 00000253: EXP 00000254: SWAP1 00000255: DIV 00000256: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000026b: AND 0000026c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000281: AND 00000282: CALLER 00000283: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000298: AND 00000299: EQ 0000029a: ISZERO 0000029b: PUSH2 0x02ca 0000029e: JUMPI 0000029f: DUP1 000002a0: PUSH1 0x00 000002a2: PUSH1 0x01 000002a4: PUSH2 0x0100 000002a7: EXP 000002a8: DUP2 000002a9: SLOAD 000002aa: DUP2 000002ab: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000002c0: MUL 000002c1: NOT 000002c2: AND 000002c3: SWAP1 000002c4: DUP4 000002c5: MUL 000002c6: OR 000002c7: SWAP1 000002c8: SSTORE 000002c9: POP 000002ca: JUMPDEST 000002cb: JUMPDEST 000002cc: POP 000002cd: JUMP 000002ce: JUMPDEST 000002cf: PUSH1 0x00 000002d1: PUSH1 0x01 000002d3: PUSH1 0x00 000002d5: POP 000002d6: SLOAD 000002d7: SWAP1 000002d8: POP 000002d9: DUP1 000002da: POP 000002db: DUP1 000002dc: SWAP1 000002dd: POP 000002de: PUSH2 0x02e2 000002e1: JUMP 000002e2: JUMPDEST 000002e3: SWAP1 000002e4: JUMP 000002e5: JUMPDEST 000002e6: PUSH1 0x00 000002e8: PUSH1 0x02 000002ea: PUSH1 0x00 000002ec: POP 000002ed: SLOAD 000002ee: SWAP1 000002ef: POP 000002f0: DUP1 000002f1: POP 000002f2: DUP1 000002f3: SWAP1 000002f4: POP 000002f5: PUSH2 0x02f9 000002f8: JUMP 000002f9: JUMPDEST 000002fa: SWAP1 000002fb: JUMP 000002fc: JUMPDEST 000002fd: PUSH1 0x00 000002ff: PUSH1 0x00 00000301: PUSH1 0x04 00000303: PUSH1 0x00 00000305: POP 00000306: PUSH1 0x00 00000308: DUP5 00000309: DUP2 0000030a: MSTORE 0000030b: PUSH1 0x20 0000030d: ADD 0000030e: SWAP1 0000030f: DUP2 00000310: MSTORE 00000311: PUSH1 0x20 00000313: ADD 00000314: PUSH1 0x00 00000316: KECCAK256 00000317: PUSH1 0x00 00000319: POP 0000031a: SWAP1 0000031b: POP 0000031c: DUP1 0000031d: PUSH1 0x01 0000031f: ADD 00000320: PUSH1 0x00 00000322: POP 00000323: SLOAD 00000324: SWAP2 00000325: POP 00000326: PUSH2 0x032a 00000329: JUMP 0000032a: JUMPDEST 0000032b: POP 0000032c: SWAP2 0000032d: SWAP1 0000032e: POP 0000032f: JUMP 00000330: JUMPDEST 00000331: PUSH1 0x00 00000333: PUSH1 0x01 00000335: PUSH1 0x00 00000337: DUP2 00000338: DUP2 00000339: POP 0000033a: SLOAD 0000033b: PUSH1 0x01 0000033d: ADD 0000033e: SWAP2 0000033f: SWAP1 00000340: POP 00000341: DUP2 00000342: SWAP1 00000343: SSTORE 00000344: SWAP1 00000345: POP 00000346: PUSH1 0x80 00000348: PUSH1 0x40 0000034a: MLOAD 0000034b: SWAP1 0000034c: DUP2 0000034d: ADD 0000034e: PUSH1 0x40 00000350: MSTORE 00000351: DUP1 00000352: DUP4 00000353: DUP2 00000354: MSTORE 00000355: PUSH1 0x20 00000357: ADD 00000358: PUSH1 0x00 0000035a: DUP2 0000035b: MSTORE 0000035c: PUSH1 0x20 0000035e: ADD 0000035f: PUSH1 0x00 00000361: DUP2 00000362: MSTORE 00000363: PUSH1 0x20 00000365: ADD 00000366: DUP3 00000367: DUP2 00000368: MSTORE 00000369: PUSH1 0x20 0000036b: ADD 0000036c: POP 0000036d: PUSH1 0x04 0000036f: PUSH1 0x00 00000371: POP 00000372: PUSH1 0x00 00000374: DUP4 00000375: DUP2 00000376: MSTORE 00000377: PUSH1 0x20 00000379: ADD 0000037a: SWAP1 0000037b: DUP2 0000037c: MSTORE 0000037d: PUSH1 0x20 0000037f: ADD 00000380: PUSH1 0x00 00000382: KECCAK256 00000383: PUSH1 0x00 00000385: POP 00000386: PUSH1 0x00 00000388: DUP3 00000389: ADD 0000038a: MLOAD 0000038b: DUP2 0000038c: PUSH1 0x00 0000038e: ADD 0000038f: PUSH1 0x00 00000391: PUSH2 0x0100 00000394: EXP 00000395: DUP2 00000396: SLOAD 00000397: DUP2 00000398: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000003ad: MUL 000003ae: NOT 000003af: AND 000003b0: SWAP1 000003b1: DUP4 000003b2: MUL 000003b3: OR 000003b4: SWAP1 000003b5: SSTORE 000003b6: POP 000003b7: PUSH1 0x20 000003b9: DUP3 000003ba: ADD 000003bb: MLOAD 000003bc: DUP2 000003bd: PUSH1 0x01 000003bf: ADD 000003c0: PUSH1 0x00 000003c2: POP 000003c3: SSTORE 000003c4: PUSH1 0x40 000003c6: DUP3 000003c7: ADD 000003c8: MLOAD 000003c9: DUP2 000003ca: PUSH1 0x02 000003cc: ADD 000003cd: PUSH1 0x00 000003cf: POP 000003d0: SSTORE 000003d1: PUSH1 0x60 000003d3: DUP3 000003d4: ADD 000003d5: MLOAD 000003d6: DUP2 000003d7: PUSH1 0x03 000003d9: ADD 000003da: PUSH1 0x00 000003dc: POP 000003dd: SSTORE 000003de: SWAP1 000003df: POP 000003e0: POP 000003e1: JUMPDEST 000003e2: POP 000003e3: POP 000003e4: JUMP 000003e5: JUMPDEST 000003e6: PUSH1 0x00 000003e8: PUSH1 0x02 000003ea: PUSH1 0x00 000003ec: DUP2 000003ed: DUP2 000003ee: POP 000003ef: SLOAD 000003f0: PUSH1 0x01 000003f2: ADD 000003f3: SWAP2 000003f4: SWAP1 000003f5: POP 000003f6: DUP2 000003f7: SWAP1 000003f8: SSTORE 000003f9: SWAP1 000003fa: POP 000003fb: PUSH1 0x80 000003fd: PUSH1 0x40 000003ff: MLOAD 00000400: SWAP1 00000401: DUP2 00000402: ADD 00000403: PUSH1 0x40 00000405: MSTORE 00000406: DUP1 00000407: DUP4 00000408: DUP2 00000409: MSTORE 0000040a: PUSH1 0x20 0000040c: ADD 0000040d: PUSH1 0x00 0000040f: DUP2 00000410: MSTORE 00000411: PUSH1 0x20 00000413: ADD 00000414: PUSH1 0x00 00000416: DUP2 00000417: MSTORE 00000418: PUSH1 0x20 0000041a: ADD 0000041b: DUP3 0000041c: DUP2 0000041d: MSTORE 0000041e: PUSH1 0x20 00000420: ADD 00000421: POP 00000422: PUSH1 0x03 00000424: PUSH1 0x00 00000426: POP 00000427: PUSH1 0x00 00000429: DUP4 0000042a: DUP2 0000042b: MSTORE 0000042c: PUSH1 0x20 0000042e: ADD 0000042f: SWAP1 00000430: DUP2 00000431: MSTORE 00000432: PUSH1 0x20 00000434: ADD 00000435: PUSH1 0x00 00000437: KECCAK256 00000438: PUSH1 0x00 0000043a: POP 0000043b: PUSH1 0x00 0000043d: DUP3 0000043e: ADD 0000043f: MLOAD 00000440: DUP2 00000441: PUSH1 0x00 00000443: ADD 00000444: PUSH1 0x00 00000446: PUSH2 0x0100 00000449: EXP 0000044a: DUP2 0000044b: SLOAD 0000044c: DUP2 0000044d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000462: MUL 00000463: NOT 00000464: AND 00000465: SWAP1 00000466: DUP4 00000467: MUL 00000468: OR 00000469: SWAP1 0000046a: SSTORE 0000046b: POP 0000046c: PUSH1 0x20 0000046e: DUP3 0000046f: ADD 00000470: MLOAD 00000471: DUP2 00000472: PUSH1 0x01 00000474: ADD 00000475: PUSH1 0x00 00000477: POP 00000478: SSTORE 00000479: PUSH1 0x40 0000047b: DUP3 0000047c: ADD 0000047d: MLOAD 0000047e: DUP2 0000047f: PUSH1 0x02 00000481: ADD 00000482: PUSH1 0x00 00000484: POP 00000485: SSTORE 00000486: PUSH1 0x60 00000488: DUP3 00000489: ADD 0000048a: MLOAD 0000048b: DUP2 0000048c: PUSH1 0x03 0000048e: ADD 0000048f: PUSH1 0x00 00000491: POP 00000492: SSTORE 00000493: SWAP1 00000494: POP 00000495: POP 00000496: JUMPDEST 00000497: POP 00000498: POP 00000499: JUMP 0000049a: JUMPDEST 0000049b: PUSH1 0x00 0000049d: PUSH1 0x00 0000049f: PUSH1 0x00 000004a1: NUMBER 000004a2: PUSH32 0x5d6ac9b7defd8fbb29ef2ab0f08c3744192b3777466dd98d1fd7daed5064b6db 000004c3: CALLER 000004c4: CALLVALUE 000004c5: TIMESTAMP 000004c6: PUSH1 0x40 000004c8: MLOAD 000004c9: DUP1 000004ca: DUP5 000004cb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000004e0: AND 000004e1: DUP2 000004e2: MSTORE 000004e3: PUSH1 0x20 000004e5: ADD 000004e6: DUP4 000004e7: DUP2 000004e8: MSTORE 000004e9: PUSH1 0x20 000004eb: ADD 000004ec: DUP3 000004ed: DUP2 000004ee: MSTORE 000004ef: PUSH1 0x20 000004f1: ADD 000004f2: SWAP4 000004f3: POP 000004f4: POP 000004f5: POP 000004f6: POP 000004f7: PUSH1 0x40 000004f9: MLOAD 000004fa: DUP1 000004fb: SWAP2 000004fc: SUB 000004fd: SWAP1 000004fe: LOG2 000004ff: PUSH1 0x02 00000501: PUSH1 0x00 00000503: POP 00000504: SLOAD 00000505: PUSH1 0x00 00000507: CALLVALUE 00000508: MUL 00000509: DIV 0000050a: SWAP3 0000050b: POP 0000050c: PUSH1 0x00 0000050e: SWAP2 0000050f: POP 00000510: JUMPDEST 00000511: PUSH1 0x02 00000513: PUSH1 0x00 00000515: POP 00000516: SLOAD 00000517: DUP3 00000518: LT 00000519: ISZERO 0000051a: PUSH2 0x055a 0000051d: JUMPI 0000051e: PUSH1 0x04 00000520: PUSH1 0x00 00000522: POP 00000523: PUSH1 0x00 00000525: DUP4 00000526: DUP2 00000527: MSTORE 00000528: PUSH1 0x20 0000052a: ADD 0000052b: SWAP1 0000052c: DUP2 0000052d: MSTORE 0000052e: PUSH1 0x20 00000530: ADD 00000531: PUSH1 0x00 00000533: KECCAK256 00000534: PUSH1 0x00 00000536: POP 00000537: SWAP1 00000538: POP 00000539: DUP3 0000053a: DUP2 0000053b: PUSH1 0x01 0000053d: ADD 0000053e: PUSH1 0x00 00000540: DUP3 00000541: DUP3 00000542: DUP3 00000543: POP 00000544: SLOAD 00000545: ADD 00000546: SWAP3 00000547: POP 00000548: POP 00000549: DUP2 0000054a: SWAP1 0000054b: SSTORE 0000054c: POP 0000054d: JUMPDEST 0000054e: DUP2 0000054f: DUP1 00000550: PUSH1 0x01 00000552: ADD 00000553: SWAP3 00000554: POP 00000555: POP 00000556: PUSH2 0x0510 00000559: JUMP 0000055a: JUMPDEST 0000055b: JUMPDEST 0000055c: POP 0000055d: POP 0000055e: POP 0000055f: JUMP 00000560: JUMPDEST 00000561: PUSH1 0x00 00000563: PUSH1 0x00 00000565: PUSH1 0x00 00000567: PUSH1 0x01 00000569: SWAP1 0000056a: SLOAD 0000056b: SWAP1 0000056c: PUSH2 0x0100 0000056f: EXP 00000570: SWAP1 00000571: DIV 00000572: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000587: AND 00000588: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000059d: AND 0000059e: CALLER 0000059f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000005b4: AND 000005b5: EQ 000005b6: ISZERO 000005b7: PUSH2 0x0710 000005ba: JUMPI 000005bb: PUSH1 0x00 000005bd: SWAP2 000005be: POP 000005bf: JUMPDEST 000005c0: PUSH1 0x02 000005c2: PUSH1 0x00 000005c4: POP 000005c5: SLOAD 000005c6: DUP3 000005c7: LT 000005c8: ISZERO 000005c9: PUSH2 0x070f 000005cc: JUMPI 000005cd: PUSH1 0x04 000005cf: PUSH1 0x00 000005d1: POP 000005d2: PUSH1 0x00 000005d4: DUP4 000005d5: DUP2 000005d6: MSTORE 000005d7: PUSH1 0x20 000005d9: ADD 000005da: SWAP1 000005db: DUP2 000005dc: MSTORE 000005dd: PUSH1 0x20 000005df: ADD 000005e0: PUSH1 0x00 000005e2: KECCAK256 000005e3: PUSH1 0x00 000005e5: POP 000005e6: SWAP1 000005e7: POP 000005e8: PUSH1 0x00 000005ea: DUP2 000005eb: PUSH1 0x01 000005ed: ADD 000005ee: PUSH1 0x00 000005f0: POP 000005f1: SLOAD 000005f2: GT 000005f3: ISZERO 000005f4: PUSH2 0x0701 000005f7: JUMPI 000005f8: NUMBER 000005f9: PUSH32 0x5ab8dc610f1c5d672561a1c397fb11717ad7b220565f7916904984963a1f43ef 0000061a: DUP3 0000061b: PUSH1 0x00 0000061d: ADD 0000061e: PUSH1 0x00 00000620: SWAP1 00000621: SLOAD 00000622: SWAP1 00000623: PUSH2 0x0100 00000626: EXP 00000627: SWAP1 00000628: DIV 00000629: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000063e: AND 0000063f: DUP4 00000640: PUSH1 0x01 00000642: ADD 00000643: PUSH1 0x00 00000645: POP 00000646: SLOAD 00000647: TIMESTAMP 00000648: PUSH1 0x40 0000064a: MLOAD 0000064b: DUP1 0000064c: DUP5 0000064d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000662: AND 00000663: DUP2 00000664: MSTORE 00000665: PUSH1 0x20 00000667: ADD 00000668: DUP4 00000669: DUP2 0000066a: MSTORE 0000066b: PUSH1 0x20 0000066d: ADD 0000066e: DUP3 0000066f: DUP2 00000670: MSTORE 00000671: PUSH1 0x20 00000673: ADD 00000674: SWAP4 00000675: POP 00000676: POP 00000677: POP 00000678: POP 00000679: PUSH1 0x40 0000067b: MLOAD 0000067c: DUP1 0000067d: SWAP2 0000067e: SUB 0000067f: SWAP1 00000680: LOG2 00000681: DUP1 00000682: PUSH1 0x00 00000684: ADD 00000685: PUSH1 0x00 00000687: SWAP1 00000688: SLOAD 00000689: SWAP1 0000068a: PUSH2 0x0100 0000068d: EXP 0000068e: SWAP1 0000068f: DIV 00000690: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000006a5: AND 000006a6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000006bb: AND 000006bc: PUSH1 0x00 000006be: DUP3 000006bf: PUSH1 0x01 000006c1: ADD 000006c2: PUSH1 0x00 000006c4: POP 000006c5: SLOAD 000006c6: PUSH1 0x40 000006c8: MLOAD 000006c9: DUP1 000006ca: SWAP1 000006cb: POP 000006cc: PUSH1 0x00 000006ce: PUSH1 0x40 000006d0: MLOAD 000006d1: DUP1 000006d2: DUP4 000006d3: SUB 000006d4: DUP2 000006d5: DUP6 000006d6: DUP9 000006d7: DUP9 000006d8: CALL 000006d9: SWAP4 000006da: POP 000006db: POP 000006dc: POP 000006dd: POP 000006de: POP 000006df: PUSH1 0x00 000006e1: DUP2 000006e2: PUSH1 0x01 000006e4: ADD 000006e5: PUSH1 0x00 000006e7: POP 000006e8: DUP2 000006e9: SWAP1 000006ea: SSTORE 000006eb: POP 000006ec: PUSH1 0x01 000006ee: DUP2 000006ef: PUSH1 0x02 000006f1: ADD 000006f2: PUSH1 0x00 000006f4: DUP3 000006f5: DUP3 000006f6: DUP3 000006f7: POP 000006f8: SLOAD 000006f9: ADD 000006fa: SWAP3 000006fb: POP 000006fc: POP 000006fd: DUP2 000006fe: SWAP1 000006ff: SSTORE 00000700: POP 00000701: JUMPDEST 00000702: JUMPDEST 00000703: DUP2 00000704: DUP1 00000705: PUSH1 0x01 00000707: ADD 00000708: SWAP3 00000709: POP 0000070a: POP 0000070b: PUSH2 0x05bf 0000070e: JUMP 0000070f: JUMPDEST 00000710: JUMPDEST 00000711: JUMPDEST 00000712: POP 00000713: POP 00000714: JUMP 00000715: JUMPDEST 00000716: PUSH1 0x00 00000718: PUSH1 0x01 0000071a: SWAP1 0000071b: SLOAD 0000071c: SWAP1 0000071d: PUSH2 0x0100 00000720: EXP 00000721: SWAP1 00000722: DIV 00000723: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000738: AND 00000739: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000074e: AND 0000074f: SELFDESTRUCT 00000750: JUMPDEST 00000751: 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 |
|---|---|---|---|---|---|---|---|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0xbd711013a6ae3899e9f291045f4fd90425d68b902cd671966acaf7c351b3f46e
call_targets:
0x1c281836c40dce4d1d64b1df6714f5334c2d7f94
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xbd711013a6ae3899e9f291045f4fd90425d68b902cd671966acaf7c351b3f46e",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x1c281836c40dce4d1d64b1df6714f5334c2d7f94"
],
"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": "0x35f46994",
"selector": "0x35f46994",
"calldata_variants": [
"0x35f46994",
"0x35f469940000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x3f9effdc",
"selector": "0x3f9effdc",
"calldata_variants": [
"0x3f9effdc",
"0x3f9effdc0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4049700f",
"selector": "0x4049700f",
"calldata_variants": [
"0x4049700f",
"0x4049700f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa6f9dae1",
"selector": "0xa6f9dae1",
"calldata_variants": [
"0xa6f9dae1",
"0xa6f9dae10000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb3364a26",
"selector": "0xb3364a26",
"calldata_variants": [
"0xb3364a26",
"0xb3364a260000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbf76c0ef",
"selector": "0xbf76c0ef",
"calldata_variants": [
"0xbf76c0ef",
"0xbf76c0ef0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd59933d5",
"selector": "0xd59933d5",
"calldata_variants": [
"0xd59933d5",
"0xd59933d50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdb29fe12",
"selector": "0xdb29fe12",
"calldata_variants": [
"0xdb29fe12",
"0xdb29fe120000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 1752,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 1,
"guards_detected": [
{
"pc": 642,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 1438,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
],
"untrusted_call_count": 1
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0xbd711013a6ae3899e9f291045f4fd90425d68b902cd671966acaf7c351b3f46e
call_targets:
0x1c281836c40dce4d1d64b1df6714f5334c2d7f94
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xbd711013a6ae3899e9f291045f4fd90425d68b902cd671966acaf7c351b3f46e",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x1c281836c40dce4d1d64b1df6714f5334c2d7f94"
],
"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": "0x35f46994",
"selector": "0x35f46994",
"calldata_variants": [
"0x35f46994",
"0x35f469940000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x3f9effdc",
"selector": "0x3f9effdc",
"calldata_variants": [
"0x3f9effdc",
"0x3f9effdc0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4049700f",
"selector": "0x4049700f",
"calldata_variants": [
"0x4049700f",
"0x4049700f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa6f9dae1",
"selector": "0xa6f9dae1",
"calldata_variants": [
"0xa6f9dae1",
"0xa6f9dae10000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb3364a26",
"selector": "0xb3364a26",
"calldata_variants": [
"0xb3364a26",
"0xb3364a260000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbf76c0ef",
"selector": "0xbf76c0ef",
"calldata_variants": [
"0xbf76c0ef",
"0xbf76c0ef0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd59933d5",
"selector": "0xd59933d5",
"calldata_variants": [
"0xd59933d5",
"0xd59933d50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdb29fe12",
"selector": "0xdb29fe12",
"calldata_variants": [
"0xdb29fe12",
"0xdb29fe120000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 1752,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 1,
"guards_detected": [
{
"pc": 642,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 1438,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
]
}
|
| medium | other | detector | SELFDESTRUCT reachable | 45 | yes | yes |
viewtrace_id: 0x4e5952af19da2191459aea4e25101b44c5d4b256283fd0b0c7ccfca11a3ed93b
validation_json{
"sink": "SELFDESTRUCT",
"errors": 0,
"status": "confirmed",
"attempts": 1,
"trace_id": "0x4e5952af19da2191459aea4e25101b44c5d4b256283fd0b0c7ccfca11a3ed93b",
"confirmed": true,
"trace_mode": "structLogs",
"call_targets": null,
"matched_probe": null,
"target_varies": null,
"classification": "sink_reached"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x35f46994",
"selector": "0x35f46994",
"calldata_variants": [
"0x35f46994",
"0x35f469940000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x3f9effdc",
"selector": "0x3f9effdc",
"calldata_variants": [
"0x3f9effdc",
"0x3f9effdc0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4049700f",
"selector": "0x4049700f",
"calldata_variants": [
"0x4049700f",
"0x4049700f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa6f9dae1",
"selector": "0xa6f9dae1",
"calldata_variants": [
"0xa6f9dae1",
"0xa6f9dae10000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb3364a26",
"selector": "0xb3364a26",
"calldata_variants": [
"0xb3364a26",
"0xb3364a260000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbf76c0ef",
"selector": "0xbf76c0ef",
"calldata_variants": [
"0xbf76c0ef",
"0xbf76c0ef0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd59933d5",
"selector": "0xd59933d5",
"calldata_variants": [
"0xd59933d5",
"0xd59933d50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdb29fe12",
"selector": "0xdb29fe12",
"calldata_variants": [
"0xdb29fe12",
"0xdb29fe120000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 642,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 1438,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
],
"selfdestruct_count": 1
}
|