019b3836-4c94-7364-9e63-9bc351291a01
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 |
|---|---|---|---|---|
| 7079 | artifact.fetch | complete | 1 / 3 | 4 months ago |
| 7080 | tool.cast_disasm | complete | 1 / 3 | 4 months ago |
| 50548 | analysis.bundle | complete | 1 / 3 | 2 weeks ago |
| 50549 | capability.graph | complete | 1 / 3 | 2 weeks ago |
| 50550 | detector.run | complete | 1 / 3 | 2 weeks ago |
| 50551 | 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 0x0040 0000000a: JUMPI 0000000b: PUSH1 0xe0 0000000d: PUSH1 0x02 0000000f: EXP 00000010: PUSH1 0x00 00000012: CALLDATALOAD 00000013: DIV 00000014: PUSH4 0x329bfc33 00000019: DUP2 0000001a: EQ 0000001b: PUSH2 0x0052 0000001e: JUMPI 0000001f: DUP1 00000020: PUSH4 0xb88a802f 00000025: EQ 00000026: PUSH2 0x0065 00000029: JUMPI 0000002a: DUP1 0000002b: PUSH4 0xd2b0d554 00000030: EQ 00000031: PUSH2 0x0085 00000034: JUMPI 00000035: DUP1 00000036: PUSH4 0xf1b3f968 0000003b: EQ 0000003c: PUSH2 0x00ee 0000003f: JUMPI 00000040: JUMPDEST 00000041: PUSH2 0x00f9 00000044: PUSH1 0x03 00000046: SLOAD 00000047: NUMBER 00000048: GT 00000049: ISZERO 0000004a: PUSH2 0x0170 0000004d: JUMPI 0000004e: PUSH2 0x0002 00000051: JUMP 00000052: JUMPDEST 00000053: PUSH2 0x017e 00000056: PUSH1 0x01 00000058: SLOAD 00000059: PUSH1 0x01 0000005b: PUSH1 0xa0 0000005d: PUSH1 0x02 0000005f: EXP 00000060: SUB 00000061: AND 00000062: JUMPDEST 00000063: SWAP1 00000064: JUMP 00000065: JUMPDEST 00000066: PUSH2 0x00f9 00000069: PUSH1 0x01 0000006b: SLOAD 0000006c: PUSH1 0x01 0000006e: PUSH1 0xa0 00000070: PUSH1 0x02 00000072: EXP 00000073: SUB 00000074: SWAP1 00000075: DUP2 00000076: AND 00000077: CALLER 00000078: SWAP2 00000079: SWAP1 0000007a: SWAP2 0000007b: AND 0000007c: EQ 0000007d: PUSH2 0x0252 00000080: JUMPI 00000081: PUSH2 0x0002 00000084: JUMP 00000085: JUMPDEST 00000086: PUSH1 0x40 00000088: DUP1 00000089: MLOAD 0000008a: PUSH1 0x20 0000008c: DUP2 0000008d: DUP2 0000008e: ADD 0000008f: DUP4 00000090: MSTORE 00000091: PUSH1 0x00 00000093: DUP1 00000094: DUP4 00000095: MSTORE 00000096: DUP1 00000097: SLOAD 00000098: DUP5 00000099: MLOAD 0000009a: PUSH1 0x02 0000009c: PUSH2 0x0100 0000009f: PUSH1 0x01 000000a1: DUP5 000000a2: AND 000000a3: ISZERO 000000a4: MUL 000000a5: PUSH1 0x00 000000a7: NOT 000000a8: ADD 000000a9: SWAP1 000000aa: SWAP3 000000ab: AND 000000ac: SWAP2 000000ad: SWAP1 000000ae: SWAP2 000000af: DIV 000000b0: PUSH1 0x1f 000000b2: DUP2 000000b3: ADD 000000b4: DUP5 000000b5: SWAP1 000000b6: DIV 000000b7: DUP5 000000b8: MUL 000000b9: DUP3 000000ba: ADD 000000bb: DUP5 000000bc: ADD 000000bd: SWAP1 000000be: SWAP6 000000bf: MSTORE 000000c0: DUP5 000000c1: DUP2 000000c2: MSTORE 000000c3: PUSH2 0x019b 000000c6: SWAP5 000000c7: SWAP1 000000c8: SWAP3 000000c9: DUP4 000000ca: ADD 000000cb: DUP3 000000cc: DUP3 000000cd: DUP1 000000ce: ISZERO 000000cf: PUSH2 0x0246 000000d2: JUMPI 000000d3: DUP1 000000d4: PUSH1 0x1f 000000d6: LT 000000d7: PUSH2 0x021b 000000da: JUMPI 000000db: PUSH2 0x0100 000000de: DUP1 000000df: DUP4 000000e0: SLOAD 000000e1: DIV 000000e2: MUL 000000e3: DUP4 000000e4: MSTORE 000000e5: SWAP2 000000e6: PUSH1 0x20 000000e8: ADD 000000e9: SWAP2 000000ea: PUSH2 0x0246 000000ed: JUMP 000000ee: JUMPDEST 000000ef: PUSH2 0x0209 000000f2: PUSH1 0x03 000000f4: SLOAD 000000f5: PUSH2 0x0062 000000f8: JUMP 000000f9: JUMPDEST 000000fa: STOP 000000fb: JUMPDEST 000000fc: PUSH1 0x01 000000fe: SLOAD 000000ff: CALLER 00000100: PUSH1 0x01 00000102: PUSH1 0xa0 00000104: PUSH1 0x02 00000106: EXP 00000107: SUB 00000108: SWAP1 00000109: DUP2 0000010a: AND 0000010b: SWAP2 0000010c: AND 0000010d: EQ 0000010e: PUSH2 0x014e 00000111: JUMPI 00000112: PUSH1 0x40 00000114: DUP1 00000115: MLOAD 00000116: PUSH1 0x01 00000118: PUSH1 0xa0 0000011a: PUSH1 0x02 0000011c: EXP 0000011d: SUB 0000011e: CALLER 0000011f: AND 00000120: DUP2 00000121: MSTORE 00000122: SWAP1 00000123: MLOAD 00000124: PUSH32 0x480e2f8ed54cce3a269fcf0aecaf35ab71057a802b39207a40bac0b2d4b6eb2c 00000145: SWAP2 00000146: DUP2 00000147: SWAP1 00000148: SUB 00000149: PUSH1 0x20 0000014b: ADD 0000014c: SWAP1 0000014d: LOG1 0000014e: JUMPDEST 0000014f: PUSH1 0x01 00000151: DUP1 00000152: SLOAD 00000153: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000168: NOT 00000169: AND 0000016a: CALLER 0000016b: OR 0000016c: SWAP1 0000016d: SSTORE 0000016e: JUMPDEST 0000016f: JUMP 00000170: JUMPDEST 00000171: PUSH1 0x02 00000173: SLOAD 00000174: CALLVALUE 00000175: EQ 00000176: PUSH2 0x00fb 00000179: JUMPI 0000017a: PUSH2 0x0002 0000017d: JUMP 0000017e: JUMPDEST 0000017f: PUSH1 0x40 00000181: DUP1 00000182: MLOAD 00000183: PUSH1 0x01 00000185: PUSH1 0xa0 00000187: PUSH1 0x02 00000189: EXP 0000018a: SUB 0000018b: SWAP3 0000018c: SWAP1 0000018d: SWAP3 0000018e: AND 0000018f: DUP3 00000190: MSTORE 00000191: MLOAD 00000192: SWAP1 00000193: DUP2 00000194: SWAP1 00000195: SUB 00000196: PUSH1 0x20 00000198: ADD 00000199: SWAP1 0000019a: RETURN 0000019b: JUMPDEST 0000019c: PUSH1 0x40 0000019e: MLOAD 0000019f: DUP1 000001a0: DUP1 000001a1: PUSH1 0x20 000001a3: ADD 000001a4: DUP3 000001a5: DUP2 000001a6: SUB 000001a7: DUP3 000001a8: MSTORE 000001a9: DUP4 000001aa: DUP2 000001ab: DUP2 000001ac: MLOAD 000001ad: DUP2 000001ae: MSTORE 000001af: PUSH1 0x20 000001b1: ADD 000001b2: SWAP2 000001b3: POP 000001b4: DUP1 000001b5: MLOAD 000001b6: SWAP1 000001b7: PUSH1 0x20 000001b9: ADD 000001ba: SWAP1 000001bb: DUP1 000001bc: DUP4 000001bd: DUP4 000001be: DUP3 000001bf: SWAP1 000001c0: PUSH1 0x00 000001c2: PUSH1 0x04 000001c4: PUSH1 0x20 000001c6: DUP5 000001c7: PUSH1 0x1f 000001c9: ADD 000001ca: DIV 000001cb: PUSH1 0x0f 000001cd: MUL 000001ce: PUSH1 0x03 000001d0: ADD 000001d1: CALL 000001d2: POP 000001d3: SWAP1 000001d4: POP 000001d5: SWAP1 000001d6: DUP2 000001d7: ADD 000001d8: SWAP1 000001d9: PUSH1 0x1f 000001db: AND 000001dc: DUP1 000001dd: ISZERO 000001de: PUSH2 0x01fb 000001e1: JUMPI 000001e2: DUP1 000001e3: DUP3 000001e4: SUB 000001e5: DUP1 000001e6: MLOAD 000001e7: PUSH1 0x01 000001e9: DUP4 000001ea: PUSH1 0x20 000001ec: SUB 000001ed: PUSH2 0x0100 000001f0: EXP 000001f1: SUB 000001f2: NOT 000001f3: AND 000001f4: DUP2 000001f5: MSTORE 000001f6: PUSH1 0x20 000001f8: ADD 000001f9: SWAP2 000001fa: POP 000001fb: JUMPDEST 000001fc: POP 000001fd: SWAP3 000001fe: POP 000001ff: POP 00000200: POP 00000201: PUSH1 0x40 00000203: MLOAD 00000204: DUP1 00000205: SWAP2 00000206: SUB 00000207: SWAP1 00000208: RETURN 00000209: JUMPDEST 0000020a: PUSH1 0x40 0000020c: DUP1 0000020d: MLOAD 0000020e: SWAP2 0000020f: DUP3 00000210: MSTORE 00000211: MLOAD 00000212: SWAP1 00000213: DUP2 00000214: SWAP1 00000215: SUB 00000216: PUSH1 0x20 00000218: ADD 00000219: SWAP1 0000021a: RETURN 0000021b: JUMPDEST 0000021c: DUP3 0000021d: ADD 0000021e: SWAP2 0000021f: SWAP1 00000220: PUSH1 0x00 00000222: MSTORE 00000223: PUSH1 0x20 00000225: PUSH1 0x00 00000227: KECCAK256 00000228: SWAP1 00000229: JUMPDEST 0000022a: DUP2 0000022b: SLOAD 0000022c: DUP2 0000022d: MSTORE 0000022e: SWAP1 0000022f: PUSH1 0x01 00000231: ADD 00000232: SWAP1 00000233: PUSH1 0x20 00000235: ADD 00000236: DUP1 00000237: DUP4 00000238: GT 00000239: PUSH2 0x0229 0000023c: JUMPI 0000023d: DUP3 0000023e: SWAP1 0000023f: SUB 00000240: PUSH1 0x1f 00000242: AND 00000243: DUP3 00000244: ADD 00000245: SWAP2 00000246: JUMPDEST 00000247: POP 00000248: POP 00000249: POP 0000024a: POP 0000024b: POP 0000024c: SWAP1 0000024d: POP 0000024e: PUSH2 0x0062 00000251: JUMP 00000252: JUMPDEST 00000253: PUSH1 0x03 00000255: SLOAD 00000256: NUMBER 00000257: LT 00000258: ISZERO 00000259: PUSH2 0x0261 0000025c: JUMPI 0000025d: PUSH2 0x0002 00000260: JUMP 00000261: JUMPDEST 00000262: PUSH1 0x00 00000264: ADDRESS 00000265: PUSH1 0x01 00000267: PUSH1 0xa0 00000269: PUSH1 0x02 0000026b: EXP 0000026c: SUB 0000026d: AND 0000026e: BALANCE 0000026f: GT 00000270: ISZERO 00000271: PUSH2 0x016e 00000274: JUMPI 00000275: PUSH1 0x01 00000277: SLOAD 00000278: PUSH1 0x40 0000027a: MLOAD 0000027b: PUSH1 0x01 0000027d: PUSH1 0xa0 0000027f: PUSH1 0x02 00000281: EXP 00000282: SUB 00000283: SWAP2 00000284: DUP3 00000285: AND 00000286: SWAP2 00000287: PUSH1 0x00 00000289: SWAP2 0000028a: ADDRESS 0000028b: SWAP1 0000028c: SWAP2 0000028d: AND 0000028e: BALANCE 0000028f: SWAP1 00000290: DUP3 00000291: DUP2 00000292: DUP2 00000293: DUP2 00000294: DUP6 00000295: DUP9 00000296: DUP4 00000297: CALL 00000298: POP 00000299: POP 0000029a: POP 0000029b: POP 0000029c: POP 0000029d: 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 | no | no |
viewtrace_id: 0x09b69a5157e040491e1120fb964f323ef72c2d39d1e8b78b1f36087b0c0edc28
call_targets:
0x02e01e9a73ed2cb24b32628c935256e455b0a078
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x09b69a5157e040491e1120fb964f323ef72c2d39d1e8b78b1f36087b0c0edc28",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x02e01e9a73ed2cb24b32628c935256e455b0a078"
],
"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": "0x329bfc33",
"selector": "0x329bfc33",
"calldata_variants": [
"0x329bfc33",
"0x329bfc330000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb88a802f",
"selector": "0xb88a802f",
"calldata_variants": [
"0xb88a802f",
"0xb88a802f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd2b0d554",
"selector": "0xd2b0d554",
"calldata_variants": [
"0xd2b0d554",
"0xd2b0d5540000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf1b3f968",
"selector": "0xf1b3f968",
"calldata_variants": [
"0xf1b3f968",
"0xf1b3f9680000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 465,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 663,
"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: 0x09b69a5157e040491e1120fb964f323ef72c2d39d1e8b78b1f36087b0c0edc28
call_targets:
0x02e01e9a73ed2cb24b32628c935256e455b0a078
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x09b69a5157e040491e1120fb964f323ef72c2d39d1e8b78b1f36087b0c0edc28",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x02e01e9a73ed2cb24b32628c935256e455b0a078"
],
"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": "0x329bfc33",
"selector": "0x329bfc33",
"calldata_variants": [
"0x329bfc33",
"0x329bfc330000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb88a802f",
"selector": "0xb88a802f",
"calldata_variants": [
"0xb88a802f",
"0xb88a802f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd2b0d554",
"selector": "0xd2b0d554",
"calldata_variants": [
"0xd2b0d554",
"0xd2b0d5540000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf1b3f968",
"selector": "0xf1b3f968",
"calldata_variants": [
"0xf1b3f968",
"0xf1b3f9680000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 465,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 663,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 2,
"guards_detected": []
}
|