019b3836-3b94-7315-a591-70e093e7e29e
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 |
|---|---|---|---|---|
| 4417 | artifact.fetch | complete | 1 / 3 | 3 months ago |
| 4418 | tool.cast_disasm | complete | 1 / 3 | 3 months ago |
| 47740 | analysis.bundle | complete | 1 / 3 | 2 weeks ago |
| 47741 | capability.graph | complete | 1 / 3 | 2 weeks ago |
| 47742 | detector.run | complete | 1 / 3 | 2 weeks ago |
| 47743 | 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: PUSH1 0xe0 00000007: PUSH1 0x02 00000009: EXP 0000000a: PUSH1 0x00 0000000c: CALLDATALOAD 0000000d: DIV 0000000e: PUSH4 0x17c51080 00000013: DUP2 00000014: EQ 00000015: PUSH2 0x003c 00000018: JUMPI 00000019: DUP1 0000001a: PUSH4 0x52774565 0000001f: EQ 00000020: PUSH2 0x005f 00000023: JUMPI 00000024: DUP1 00000025: PUSH4 0xc2052403 0000002a: EQ 0000002b: PUSH2 0x0080 0000002e: JUMPI 0000002f: DUP1 00000030: PUSH4 0xdf78c1dd 00000035: EQ 00000036: PUSH2 0x00ec 00000039: JUMPI 0000003a: JUMPDEST 0000003b: STOP 0000003c: JUMPDEST 0000003d: PUSH2 0x011f 00000040: PUSH1 0x01 00000042: PUSH1 0xa0 00000044: PUSH1 0x02 00000046: EXP 00000047: SUB 00000048: CALLER 00000049: AND 0000004a: PUSH1 0x00 0000004c: SWAP1 0000004d: DUP2 0000004e: MSTORE 0000004f: PUSH1 0x20 00000051: DUP2 00000052: SWAP1 00000053: MSTORE 00000054: PUSH1 0x40 00000056: SWAP1 00000057: KECCAK256 00000058: PUSH1 0x01 0000005a: ADD 0000005b: SLOAD 0000005c: JUMPDEST 0000005d: SWAP1 0000005e: JUMP 0000005f: JUMPDEST 00000060: PUSH2 0x011f 00000063: PUSH1 0x01 00000065: PUSH1 0xa0 00000067: PUSH1 0x02 00000069: EXP 0000006a: SUB 0000006b: CALLER 0000006c: AND 0000006d: PUSH1 0x00 0000006f: SWAP1 00000070: DUP2 00000071: MSTORE 00000072: PUSH1 0x20 00000074: DUP2 00000075: SWAP1 00000076: MSTORE 00000077: PUSH1 0x40 00000079: SWAP1 0000007a: KECCAK256 0000007b: SLOAD 0000007c: PUSH2 0x005c 0000007f: JUMP 00000080: JUMPDEST 00000081: PUSH2 0x011f 00000084: JUMPDEST 00000085: PUSH1 0x40 00000087: PUSH1 0x00 00000089: SWAP1 0000008a: DUP2 0000008b: KECCAK256 0000008c: PUSH1 0x01 0000008e: PUSH1 0xa0 00000090: PUSH1 0x02 00000092: EXP 00000093: SUB 00000094: CALLER 00000095: AND 00000096: DUP3 00000097: MSTORE 00000098: PUSH1 0x20 0000009a: DUP3 0000009b: SWAP1 0000009c: MSTORE 0000009d: SLOAD 0000009e: DUP2 0000009f: EQ 000000a0: DUP1 000000a1: ISZERO 000000a2: SWAP1 000000a3: PUSH2 0x00b3 000000a6: JUMPI 000000a7: POP 000000a8: PUSH1 0x40 000000aa: DUP2 000000ab: KECCAK256 000000ac: PUSH1 0x01 000000ae: ADD 000000af: SLOAD 000000b0: TIMESTAMP 000000b1: SWAP1 000000b2: LT 000000b3: JUMPDEST 000000b4: ISZERO 000000b5: PUSH2 0x018d 000000b8: JUMPI 000000b9: PUSH1 0x01 000000bb: PUSH1 0xa0 000000bd: PUSH1 0x02 000000bf: EXP 000000c0: SUB 000000c1: CALLER 000000c2: AND 000000c3: PUSH1 0x00 000000c5: DUP2 000000c6: DUP2 000000c7: MSTORE 000000c8: PUSH1 0x20 000000ca: DUP2 000000cb: SWAP1 000000cc: MSTORE 000000cd: PUSH1 0x40 000000cf: DUP1 000000d0: MLOAD 000000d1: SWAP1 000000d2: DUP3 000000d3: KECCAK256 000000d4: SLOAD 000000d5: SWAP1 000000d6: DUP3 000000d7: DUP2 000000d8: DUP2 000000d9: DUP2 000000da: DUP6 000000db: DUP9 000000dc: DUP4 000000dd: CALL 000000de: SWAP4 000000df: POP 000000e0: POP 000000e1: POP 000000e2: POP 000000e3: POP 000000e4: PUSH1 0x01 000000e6: SWAP1 000000e7: POP 000000e8: PUSH2 0x005c 000000eb: JUMP 000000ec: JUMPDEST 000000ed: PUSH2 0x011f 000000f0: PUSH1 0x04 000000f2: CALLDATALOAD 000000f3: PUSH1 0x01 000000f5: PUSH1 0xa0 000000f7: PUSH1 0x02 000000f9: EXP 000000fa: SUB 000000fb: CALLER 000000fc: AND 000000fd: PUSH1 0x00 000000ff: SWAP1 00000100: DUP2 00000101: MSTORE 00000102: PUSH1 0x20 00000104: DUP2 00000105: SWAP1 00000106: MSTORE 00000107: PUSH1 0x40 00000109: DUP2 0000010a: KECCAK256 0000010b: SLOAD 0000010c: CALLVALUE 0000010d: SWAP1 0000010e: DUP3 0000010f: EQ 00000110: DUP1 00000111: ISZERO 00000112: SWAP1 00000113: PUSH2 0x0160 00000116: JUMPI 00000117: POP 00000118: PUSH2 0x015e 0000011b: PUSH2 0x0084 0000011e: JUMP 0000011f: JUMPDEST 00000120: PUSH1 0x40 00000122: DUP1 00000123: MLOAD 00000124: SWAP2 00000125: DUP3 00000126: MSTORE 00000127: MLOAD 00000128: SWAP1 00000129: DUP2 0000012a: SWAP1 0000012b: SUB 0000012c: PUSH1 0x20 0000012e: ADD 0000012f: SWAP1 00000130: RETURN 00000131: JUMPDEST 00000132: PUSH1 0x01 00000134: PUSH1 0xa0 00000136: PUSH1 0x02 00000138: EXP 00000139: SUB 0000013a: CALLER 0000013b: AND 0000013c: PUSH1 0x00 0000013e: SWAP1 0000013f: DUP2 00000140: MSTORE 00000141: PUSH1 0x20 00000143: DUP2 00000144: SWAP1 00000145: MSTORE 00000146: PUSH1 0x40 00000148: SWAP1 00000149: KECCAK256 0000014a: DUP2 0000014b: DUP2 0000014c: SSTORE 0000014d: TIMESTAMP 0000014e: DUP5 0000014f: ADD 00000150: PUSH1 0x01 00000152: SWAP2 00000153: DUP3 00000154: ADD 00000155: SSTORE 00000156: SWAP2 00000157: POP 00000158: JUMPDEST 00000159: POP 0000015a: SWAP2 0000015b: SWAP1 0000015c: POP 0000015d: JUMP 0000015e: JUMPDEST 0000015f: ISZERO 00000160: JUMPDEST 00000161: ISZERO 00000162: PUSH2 0x0131 00000165: JUMPI 00000166: PUSH1 0x40 00000168: MLOAD 00000169: PUSH1 0x01 0000016b: PUSH1 0xa0 0000016d: PUSH1 0x02 0000016f: EXP 00000170: SUB 00000171: CALLER 00000172: AND 00000173: SWAP1 00000174: PUSH1 0x00 00000176: SWAP1 00000177: DUP4 00000178: SWAP1 00000179: DUP3 0000017a: DUP2 0000017b: DUP2 0000017c: DUP2 0000017d: DUP6 0000017e: DUP9 0000017f: DUP4 00000180: CALL 00000181: POP 00000182: SWAP2 00000183: SWAP5 00000184: POP 00000185: PUSH2 0x0158 00000188: SWAP3 00000189: POP 0000018a: POP 0000018b: POP 0000018c: JUMP 0000018d: JUMPDEST 0000018e: POP 0000018f: PUSH1 0x01 00000191: PUSH2 0x005c 00000194: 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: 0xdc7c01509d28ad4b18ea05c9f71b152c0b20b9220d43df2a6356db884c8e444d
call_targets:
0x59c79f1f34d88380f616214d3a51789c72074812
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xdc7c01509d28ad4b18ea05c9f71b152c0b20b9220d43df2a6356db884c8e444d",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x59c79f1f34d88380f616214d3a51789c72074812"
],
"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": "0x17c51080",
"selector": "0x17c51080",
"calldata_variants": [
"0x17c51080",
"0x17c510800000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x52774565",
"selector": "0x52774565",
"calldata_variants": [
"0x52774565",
"0x527745650000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc2052403",
"selector": "0xc2052403",
"calldata_variants": [
"0xc2052403",
"0xc20524030000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdf78c1dd",
"selector": "0xdf78c1dd",
"calldata_variants": [
"0xdf78c1dd",
"0xdf78c1dd0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 221,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 384,
"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: 0xdc7c01509d28ad4b18ea05c9f71b152c0b20b9220d43df2a6356db884c8e444d
call_targets:
0x59c79f1f34d88380f616214d3a51789c72074812
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xdc7c01509d28ad4b18ea05c9f71b152c0b20b9220d43df2a6356db884c8e444d",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x59c79f1f34d88380f616214d3a51789c72074812"
],
"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": "0x17c51080",
"selector": "0x17c51080",
"calldata_variants": [
"0x17c51080",
"0x17c510800000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x52774565",
"selector": "0x52774565",
"calldata_variants": [
"0x52774565",
"0x527745650000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc2052403",
"selector": "0xc2052403",
"calldata_variants": [
"0xc2052403",
"0xc20524030000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdf78c1dd",
"selector": "0xdf78c1dd",
"calldata_variants": [
"0xdf78c1dd",
"0xdf78c1dd0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 221,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 384,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 2,
"guards_detected": []
}
|