019b3836-29fa-7233-b74a-07e520aaf1eb
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 |
|---|---|---|---|---|
| 1523 | artifact.fetch | complete | 1 / 3 | 4 months ago |
| 1524 | tool.cast_disasm | complete | 1 / 3 | 4 months ago |
| 79387 | analysis.bundle | complete | 1 / 3 | 2 weeks ago |
| 79388 | capability.graph | complete | 1 / 3 | 2 weeks ago |
| 79389 | detector.run | complete | 1 / 3 | 2 weeks ago |
| 79390 | validation.fork | complete | 1 / 3 | 2 weeks ago |
No slither job recorded yet.
No codex job recorded yet.
00000000: PUSH1 0x60 00000002: PUSH1 0x40 00000004: MSTORE 00000005: CALLDATASIZE 00000006: ISZERO 00000007: PUSH2 0x0035 0000000a: JUMPI 0000000b: PUSH1 0xe0 0000000d: PUSH1 0x02 0000000f: EXP 00000010: PUSH1 0x00 00000012: CALLDATALOAD 00000013: DIV 00000014: PUSH4 0x2004dff6 00000019: DUP2 0000001a: EQ 0000001b: PUSH2 0x01bd 0000001e: JUMPI 0000001f: DUP1 00000020: PUSH4 0x84ebde52 00000025: EQ 00000026: PUSH2 0x0202 00000029: JUMPI 0000002a: DUP1 0000002b: PUSH4 0xc0aa18e7 00000030: EQ 00000031: PUSH2 0x0210 00000034: JUMPI 00000035: JUMPDEST 00000036: PUSH2 0x02b1 00000039: PUSH7 0x038d7ea4c67fff 00000041: CALLVALUE 00000042: GT 00000043: ISZERO 00000044: PUSH2 0x01bb 00000047: JUMPI 00000048: PUSH1 0x01 0000004a: DUP1 0000004b: SLOAD 0000004c: DUP2 0000004d: ADD 0000004e: DUP2 0000004f: SSTORE 00000050: PUSH1 0x02 00000052: DUP1 00000053: SLOAD 00000054: SWAP1 00000055: SWAP2 00000056: ADD 00000057: SWAP1 00000058: SSTORE 00000059: NUMBER 0000005a: PUSH1 0x05 0000005c: SSTORE 0000005d: CALLVALUE 0000005e: PUSH1 0x06 00000060: DUP2 00000061: SWAP1 00000062: SSTORE 00000063: PUSH1 0x07 00000065: DUP1 00000066: SLOAD 00000067: PUSH1 0x01 00000069: PUSH1 0xa0 0000006b: PUSH1 0x02 0000006d: EXP 0000006e: SUB 0000006f: NOT 00000070: AND 00000071: CALLER 00000072: OR 00000073: SWAP1 00000074: SSTORE 00000075: PUSH1 0x0b 00000077: SLOAD 00000078: SWAP1 00000079: GT 0000007a: ISZERO 0000007b: PUSH2 0x0095 0000007e: JUMPI 0000007f: CALLVALUE 00000080: PUSH1 0x0b 00000082: SSTORE 00000083: PUSH1 0x0c 00000085: DUP1 00000086: SLOAD 00000087: PUSH1 0x01 00000089: PUSH1 0xa0 0000008b: PUSH1 0x02 0000008d: EXP 0000008e: SUB 0000008f: NOT 00000090: AND 00000091: CALLER 00000092: OR 00000093: SWAP1 00000094: SSTORE 00000095: JUMPDEST 00000096: PUSH1 0x10 00000098: DUP1 00000099: SLOAD 0000009a: PUSH21 0x36ce80b791850e292b0f092bb007da906561520482 000000b0: NUMBER 000000b1: PUSH1 0x00 000000b3: NOT 000000b4: DUP2 000000b5: ADD 000000b6: BLOCKHASH 000000b7: TIMESTAMP 000000b8: SWAP4 000000b9: DUP5 000000ba: SWAP1 000000bb: MOD 000000bc: ADD 000000bd: DIFFICULTY 000000be: SWAP4 000000bf: SWAP1 000000c0: SWAP4 000000c1: MUL 000000c2: MUL 000000c3: SWAP2 000000c4: SWAP1 000000c5: SWAP2 000000c6: ADD 000000c7: PUSH1 0x01 000000c9: ADD 000000ca: MOD 000000cb: SWAP1 000000cc: DUP2 000000cd: SWAP1 000000ce: SSTORE 000000cf: CALLVALUE 000000d0: PUSH8 0x8ac7230489e80000 000000d9: DIV 000000da: PUSH1 0x0a 000000dc: ADD 000000dd: PUSH1 0x11 000000df: DUP2 000000e0: SWAP1 000000e1: SSTORE 000000e2: SWAP1 000000e3: MOD 000000e4: PUSH1 0x0f 000000e6: DUP2 000000e7: SWAP1 000000e8: SSTORE 000000e9: PUSH1 0x00 000000eb: EQ 000000ec: ISZERO 000000ed: PUSH2 0x01bb 000000f0: JUMPI 000000f1: PUSH1 0x00 000000f3: PUSH1 0x02 000000f5: SSTORE 000000f6: PUSH1 0x0a 000000f8: ADDRESS 000000f9: PUSH1 0x01 000000fb: PUSH1 0xa0 000000fd: PUSH1 0x02 000000ff: EXP 00000100: SUB 00000101: AND 00000102: DUP1 00000103: BALANCE 00000104: DUP3 00000105: SWAP1 00000106: DIV 00000107: PUSH1 0x08 00000109: SSTORE 0000010a: CALLVALUE 0000010b: PUSH1 0x09 0000010d: SSTORE 0000010e: DUP2 0000010f: SLOAD 00000110: PUSH1 0x01 00000112: PUSH1 0xa0 00000114: PUSH1 0x02 00000116: EXP 00000117: SUB 00000118: NOT 00000119: AND 0000011a: CALLER 0000011b: OR 0000011c: DUP3 0000011d: SSTORE 0000011e: PUSH1 0x0d 00000120: SLOAD 00000121: SWAP1 00000122: BALANCE 00000123: SWAP2 00000124: SWAP1 00000125: SWAP2 00000126: DIV 00000127: GT 00000128: ISZERO 00000129: PUSH2 0x0150 0000012c: JUMPI 0000012d: PUSH1 0x0a 0000012f: ADDRESS 00000130: PUSH1 0x01 00000132: PUSH1 0xa0 00000134: PUSH1 0x02 00000136: EXP 00000137: SUB 00000138: AND 00000139: BALANCE 0000013a: DIV 0000013b: PUSH1 0x0d 0000013d: SSTORE 0000013e: PUSH1 0x0e 00000140: DUP1 00000141: SLOAD 00000142: PUSH1 0x01 00000144: PUSH1 0xa0 00000146: PUSH1 0x02 00000148: EXP 00000149: SUB 0000014a: NOT 0000014b: AND 0000014c: CALLER 0000014d: OR 0000014e: SWAP1 0000014f: SSTORE 00000150: JUMPDEST 00000151: PUSH1 0x03 00000153: DUP1 00000154: SLOAD 00000155: PUSH1 0x0a 00000157: PUSH1 0x01 00000159: PUSH1 0xa0 0000015b: PUSH1 0x02 0000015d: EXP 0000015e: SUB 0000015f: ADDRESS 00000160: DUP2 00000161: AND 00000162: DUP1 00000163: BALANCE 00000164: DUP4 00000165: SWAP1 00000166: DIV 00000167: SWAP1 00000168: SWAP4 00000169: ADD 0000016a: SWAP1 0000016b: SWAP4 0000016c: SSTORE 0000016d: CALLER 0000016e: SWAP3 0000016f: SWAP1 00000170: SWAP3 00000171: AND 00000172: SWAP2 00000173: PUSH1 0x00 00000175: SWAP2 00000176: BALANCE 00000177: DIV 00000178: PUSH1 0x60 0000017a: DUP3 0000017b: DUP2 0000017c: DUP2 0000017d: DUP2 0000017e: DUP6 0000017f: DUP9 00000180: DUP4 00000181: CALL 00000182: POP 00000183: POP 00000184: PUSH1 0x04 00000186: DUP1 00000187: SLOAD 00000188: PUSH1 0x14 0000018a: PUSH1 0x01 0000018c: PUSH1 0xa0 0000018e: PUSH1 0x02 00000190: EXP 00000191: SUB 00000192: ADDRESS 00000193: DUP2 00000194: AND 00000195: DUP1 00000196: BALANCE 00000197: DUP4 00000198: SWAP1 00000199: DIV 0000019a: SWAP1 0000019b: SWAP4 0000019c: ADD 0000019d: SWAP1 0000019e: SWAP4 0000019f: SSTORE 000001a0: DUP5 000001a1: SLOAD 000001a2: PUSH1 0x40 000001a4: MLOAD 000001a5: SWAP4 000001a6: AND 000001a7: SWAP6 000001a8: POP 000001a9: SWAP1 000001aa: BALANCE 000001ab: DIV 000001ac: SWAP2 000001ad: POP 000001ae: DUP3 000001af: DUP2 000001b0: DUP2 000001b1: DUP2 000001b2: DUP6 000001b3: DUP9 000001b4: DUP4 000001b5: CALL 000001b6: POP 000001b7: POP 000001b8: POP 000001b9: POP 000001ba: POP 000001bb: JUMPDEST 000001bc: JUMP 000001bd: JUMPDEST 000001be: PUSH1 0x00 000001c0: SLOAD 000001c1: PUSH7 0x038d7ea4c68000 000001c9: PUSH1 0x0a 000001cb: PUSH1 0x01 000001cd: PUSH1 0xa0 000001cf: PUSH1 0x02 000001d1: EXP 000001d2: SUB 000001d3: ADDRESS 000001d4: DUP2 000001d5: AND 000001d6: DUP1 000001d7: BALANCE 000001d8: SWAP3 000001d9: SWAP1 000001da: SWAP3 000001db: DIV 000001dc: DUP4 000001dd: SWAP1 000001de: DIV 000001df: SWAP4 000001e0: PUSH1 0xc8 000001e2: SWAP3 000001e3: BALANCE 000001e4: PUSH1 0x09 000001e6: MUL 000001e7: SWAP3 000001e8: SWAP1 000001e9: SWAP3 000001ea: DIV 000001eb: SWAP3 000001ec: SWAP1 000001ed: SWAP3 000001ee: DIV 000001ef: SWAP2 000001f0: AND 000001f1: JUMPDEST 000001f2: PUSH1 0x60 000001f4: SWAP3 000001f5: DUP4 000001f6: MSTORE 000001f7: PUSH1 0x80 000001f9: SWAP2 000001fa: SWAP1 000001fb: SWAP2 000001fc: MSTORE 000001fd: PUSH1 0xa0 000001ff: MSTORE 00000200: DUP1 00000201: RETURN 00000202: JUMPDEST 00000203: PUSH1 0x0f 00000205: SLOAD 00000206: PUSH1 0x10 00000208: SLOAD 00000209: PUSH1 0x11 0000020b: SLOAD 0000020c: PUSH2 0x01f1 0000020f: JUMP 00000210: JUMPDEST 00000211: PUSH1 0x01 00000213: SLOAD 00000214: PUSH1 0x02 00000216: SLOAD 00000217: PUSH1 0x03 00000219: SLOAD 0000021a: PUSH1 0x04 0000021c: SLOAD 0000021d: PUSH1 0x05 0000021f: SLOAD 00000220: PUSH1 0x06 00000222: SLOAD 00000223: PUSH1 0x07 00000225: SLOAD 00000226: PUSH1 0x08 00000228: SLOAD 00000229: PUSH1 0x09 0000022b: SLOAD 0000022c: PUSH1 0x0a 0000022e: SLOAD 0000022f: PUSH1 0x0b 00000231: SLOAD 00000232: PUSH1 0x0c 00000234: SLOAD 00000235: PUSH1 0x0d 00000237: SLOAD 00000238: PUSH1 0x0e 0000023a: SLOAD 0000023b: PUSH1 0x60 0000023d: SWAP14 0000023e: DUP15 0000023f: MSTORE 00000240: PUSH1 0x80 00000242: SWAP13 00000243: SWAP1 00000244: SWAP13 00000245: MSTORE 00000246: PUSH7 0x038d7ea4c68000 0000024e: SWAP11 0000024f: DUP12 00000250: SWAP1 00000251: DIV 00000252: PUSH1 0xa0 00000254: MSTORE 00000255: SWAP9 00000256: DUP11 00000257: SWAP1 00000258: DIV 00000259: PUSH1 0xc0 0000025b: MSTORE 0000025c: PUSH1 0xe0 0000025e: SWAP8 0000025f: SWAP1 00000260: SWAP8 00000261: MSTORE 00000262: SWAP5 00000263: DUP9 00000264: SWAP1 00000265: DIV 00000266: PUSH2 0x0100 00000269: MSTORE 0000026a: PUSH1 0x01 0000026c: PUSH1 0xa0 0000026e: PUSH1 0x02 00000270: EXP 00000271: SUB 00000272: SWAP4 00000273: DUP5 00000274: AND 00000275: PUSH2 0x0120 00000278: MSTORE 00000279: SWAP2 0000027a: DUP8 0000027b: SWAP1 0000027c: DIV 0000027d: PUSH2 0x0140 00000280: MSTORE 00000281: DUP7 00000282: SWAP1 00000283: DIV 00000284: PUSH2 0x0160 00000287: MSTORE 00000288: DUP2 00000289: AND 0000028a: PUSH2 0x0180 0000028d: MSTORE 0000028e: SWAP1 0000028f: DUP5 00000290: SWAP1 00000291: DIV 00000292: PUSH2 0x01a0 00000295: MSTORE 00000296: SWAP1 00000297: DUP2 00000298: AND 00000299: PUSH2 0x01c0 0000029c: SWAP1 0000029d: DUP2 0000029e: MSTORE 0000029f: SWAP3 000002a0: SWAP1 000002a1: SWAP2 000002a2: DIV 000002a3: PUSH2 0x01e0 000002a6: MSTORE 000002a7: SWAP2 000002a8: SWAP1 000002a9: SWAP2 000002aa: AND 000002ab: PUSH2 0x0200 000002ae: MSTORE 000002af: SWAP1 000002b0: RETURN 000002b1: JUMPDEST 000002b2: STOP
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 | no | no |
viewtrace_id: 0x529a2fc727fe7dbfa5b584b9b2ff6740790a57d21ead38519f887e09982ec4d2
call_targets:
0x233820087a752349ee20daab1c18e0b7c546d3f6
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x529a2fc727fe7dbfa5b584b9b2ff6740790a57d21ead38519f887e09982ec4d2",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x233820087a752349ee20daab1c18e0b7c546d3f6"
],
"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": "0x2004dff6",
"selector": "0x2004dff6",
"calldata_variants": [
"0x2004dff6",
"0x2004dff60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x84ebde52",
"selector": "0x84ebde52",
"calldata_variants": [
"0x84ebde52",
"0x84ebde520000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc0aa18e7",
"selector": "0xc0aa18e7",
"calldata_variants": [
"0xc0aa18e7",
"0xc0aa18e70000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 385,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 437,
"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 | no | no |
viewtrace_id: 0x529a2fc727fe7dbfa5b584b9b2ff6740790a57d21ead38519f887e09982ec4d2
call_targets:
0x233820087a752349ee20daab1c18e0b7c546d3f6
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x529a2fc727fe7dbfa5b584b9b2ff6740790a57d21ead38519f887e09982ec4d2",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x233820087a752349ee20daab1c18e0b7c546d3f6"
],
"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": "0x2004dff6",
"selector": "0x2004dff6",
"calldata_variants": [
"0x2004dff6",
"0x2004dff60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x84ebde52",
"selector": "0x84ebde52",
"calldata_variants": [
"0x84ebde52",
"0x84ebde520000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc0aa18e7",
"selector": "0xc0aa18e7",
"calldata_variants": [
"0xc0aa18e7",
"0xc0aa18e70000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 385,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 437,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 2,
"guards_detected": []
}
|