019b3836-3baa-70ff-b9fb-2b94757bdeb1
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 |
|---|---|---|---|---|
| 4431 | artifact.fetch | complete | 1 / 3 | 3 months ago |
| 4432 | tool.cast_disasm | complete | 1 / 3 | 3 months ago |
| 47224 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 47225 | capability.graph | complete | 1 / 3 | 1 week ago |
| 47226 | detector.run | complete | 1 / 3 | 1 week ago |
| 47227 | validation.fork | complete | 1 / 3 | 1 week 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 0x0047 00000018: JUMPI 00000019: DUP1 0000001a: PUSH4 0x52774565 0000001f: EQ 00000020: PUSH2 0x006a 00000023: JUMPI 00000024: DUP1 00000025: PUSH4 0xbbe4fd50 0000002a: EQ 0000002b: PUSH2 0x008b 0000002e: JUMPI 0000002f: DUP1 00000030: PUSH4 0xc2052403 00000035: EQ 00000036: PUSH2 0x0094 00000039: JUMPI 0000003a: DUP1 0000003b: PUSH4 0xdf78c1dd 00000040: EQ 00000041: PUSH2 0x010c 00000044: JUMPI 00000045: JUMPDEST 00000046: STOP 00000047: JUMPDEST 00000048: PUSH2 0x011b 0000004b: PUSH1 0x01 0000004d: PUSH1 0xa0 0000004f: PUSH1 0x02 00000051: EXP 00000052: SUB 00000053: CALLER 00000054: AND 00000055: PUSH1 0x00 00000057: SWAP1 00000058: DUP2 00000059: MSTORE 0000005a: PUSH1 0x20 0000005c: DUP2 0000005d: SWAP1 0000005e: MSTORE 0000005f: PUSH1 0x40 00000061: SWAP1 00000062: KECCAK256 00000063: PUSH1 0x01 00000065: ADD 00000066: SLOAD 00000067: JUMPDEST 00000068: SWAP1 00000069: JUMP 0000006a: JUMPDEST 0000006b: PUSH2 0x011b 0000006e: PUSH1 0x01 00000070: PUSH1 0xa0 00000072: PUSH1 0x02 00000074: EXP 00000075: SUB 00000076: CALLER 00000077: AND 00000078: PUSH1 0x00 0000007a: SWAP1 0000007b: DUP2 0000007c: MSTORE 0000007d: PUSH1 0x20 0000007f: DUP2 00000080: SWAP1 00000081: MSTORE 00000082: PUSH1 0x40 00000084: SWAP1 00000085: KECCAK256 00000086: SLOAD 00000087: PUSH2 0x0067 0000008a: JUMP 0000008b: JUMPDEST 0000008c: PUSH2 0x011b 0000008f: TIMESTAMP 00000090: PUSH2 0x0067 00000093: JUMP 00000094: JUMPDEST 00000095: PUSH2 0x0045 00000098: JUMPDEST 00000099: PUSH1 0x01 0000009b: PUSH1 0xa0 0000009d: PUSH1 0x02 0000009f: EXP 000000a0: SUB 000000a1: CALLER 000000a2: AND 000000a3: PUSH1 0x00 000000a5: SWAP1 000000a6: DUP2 000000a7: MSTORE 000000a8: PUSH1 0x20 000000aa: DUP2 000000ab: SWAP1 000000ac: MSTORE 000000ad: PUSH1 0x40 000000af: DUP2 000000b0: KECCAK256 000000b1: SLOAD 000000b2: EQ 000000b3: DUP1 000000b4: ISZERO 000000b5: SWAP1 000000b6: PUSH2 0x00c7 000000b9: JUMPI 000000ba: POP 000000bb: PUSH1 0x40 000000bd: PUSH1 0x00 000000bf: KECCAK256 000000c0: PUSH1 0x01 000000c2: ADD 000000c3: SLOAD 000000c4: TIMESTAMP 000000c5: SWAP1 000000c6: LT 000000c7: JUMPDEST 000000c8: ISZERO 000000c9: PUSH2 0x010a 000000cc: JUMPI 000000cd: PUSH1 0x01 000000cf: PUSH1 0xa0 000000d1: PUSH1 0x02 000000d3: EXP 000000d4: SUB 000000d5: CALLER 000000d6: AND 000000d7: PUSH1 0x00 000000d9: DUP2 000000da: DUP2 000000db: MSTORE 000000dc: PUSH1 0x20 000000de: DUP2 000000df: SWAP1 000000e0: MSTORE 000000e1: PUSH1 0x40 000000e3: DUP1 000000e4: DUP3 000000e5: KECCAK256 000000e6: SLOAD 000000e7: SWAP1 000000e8: MLOAD 000000e9: DUP3 000000ea: DUP2 000000eb: DUP2 000000ec: DUP2 000000ed: DUP6 000000ee: DUP9 000000ef: DUP4 000000f0: CALL 000000f1: POP 000000f2: POP 000000f3: PUSH1 0x40 000000f5: DUP3 000000f6: KECCAK256 000000f7: SWAP3 000000f8: DUP3 000000f9: MSTORE 000000fa: POP 000000fb: PUSH1 0x20 000000fd: DUP2 000000fe: SWAP1 000000ff: MSTORE 00000100: DUP1 00000101: DUP3 00000102: SSTORE 00000103: PUSH1 0x01 00000105: SWAP2 00000106: SWAP1 00000107: SWAP2 00000108: ADD 00000109: SSTORE 0000010a: JUMPDEST 0000010b: JUMP 0000010c: JUMPDEST 0000010d: PUSH2 0x0045 00000110: PUSH1 0x04 00000112: CALLDATALOAD 00000113: CALLVALUE 00000114: PUSH2 0x0157 00000117: PUSH2 0x0098 0000011a: JUMP 0000011b: JUMPDEST 0000011c: PUSH1 0x40 0000011e: DUP1 0000011f: MLOAD 00000120: SWAP2 00000121: DUP3 00000122: MSTORE 00000123: MLOAD 00000124: SWAP1 00000125: DUP2 00000126: SWAP1 00000127: SUB 00000128: PUSH1 0x20 0000012a: ADD 0000012b: SWAP1 0000012c: RETURN 0000012d: JUMPDEST 0000012e: PUSH1 0x01 00000130: PUSH1 0xa0 00000132: PUSH1 0x02 00000134: EXP 00000135: SUB 00000136: CALLER 00000137: AND 00000138: PUSH1 0x00 0000013a: SWAP1 0000013b: DUP2 0000013c: MSTORE 0000013d: PUSH1 0x20 0000013f: DUP2 00000140: SWAP1 00000141: MSTORE 00000142: PUSH1 0x40 00000144: SWAP1 00000145: KECCAK256 00000146: DUP2 00000147: DUP2 00000148: SSTORE 00000149: TIMESTAMP 0000014a: DUP4 0000014b: ADD 0000014c: PUSH1 0x01 0000014e: SWAP2 0000014f: SWAP1 00000150: SWAP2 00000151: ADD 00000152: SSTORE 00000153: JUMPDEST 00000154: POP 00000155: POP 00000156: JUMP 00000157: JUMPDEST 00000158: PUSH1 0x01 0000015a: PUSH1 0xa0 0000015c: PUSH1 0x02 0000015e: EXP 0000015f: SUB 00000160: CALLER 00000161: AND 00000162: PUSH1 0x00 00000164: SWAP1 00000165: DUP2 00000166: MSTORE 00000167: PUSH1 0x20 00000169: DUP2 0000016a: SWAP1 0000016b: MSTORE 0000016c: PUSH1 0x40 0000016e: DUP2 0000016f: KECCAK256 00000170: SLOAD 00000171: GT 00000172: ISZERO 00000173: PUSH2 0x012d 00000176: JUMPI 00000177: PUSH1 0x40 00000179: MLOAD 0000017a: PUSH1 0x01 0000017c: PUSH1 0xa0 0000017e: PUSH1 0x02 00000180: EXP 00000181: SUB 00000182: CALLER 00000183: AND 00000184: SWAP1 00000185: PUSH1 0x00 00000187: SWAP1 00000188: CALLVALUE 00000189: SWAP1 0000018a: DUP3 0000018b: DUP2 0000018c: DUP2 0000018d: DUP2 0000018e: DUP6 0000018f: DUP9 00000190: DUP4 00000191: CALL 00000192: SWAP4 00000193: POP 00000194: POP 00000195: POP 00000196: POP 00000197: POP 00000198: PUSH2 0x0153 0000019b: 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: 0x2bd4979d81e2e3874b84dafd0c356bf0a54ad40f71130d25b105005606ddb643
call_targets:
0x807aa96410f7cff5614fd8db6cbfa82d86b7029d
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x2bd4979d81e2e3874b84dafd0c356bf0a54ad40f71130d25b105005606ddb643",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x807aa96410f7cff5614fd8db6cbfa82d86b7029d"
],
"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": "0xbbe4fd50",
"selector": "0xbbe4fd50",
"calldata_variants": [
"0xbbe4fd50",
"0xbbe4fd500000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc2052403",
"selector": "0xc2052403",
"calldata_variants": [
"0xc2052403",
"0xc20524030000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdf78c1dd",
"selector": "0xdf78c1dd",
"calldata_variants": [
"0xdf78c1dd",
"0xdf78c1dd0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 240,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 401,
"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: 0x2bd4979d81e2e3874b84dafd0c356bf0a54ad40f71130d25b105005606ddb643
call_targets:
0x807aa96410f7cff5614fd8db6cbfa82d86b7029d
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x2bd4979d81e2e3874b84dafd0c356bf0a54ad40f71130d25b105005606ddb643",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x807aa96410f7cff5614fd8db6cbfa82d86b7029d"
],
"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": "0xbbe4fd50",
"selector": "0xbbe4fd50",
"calldata_variants": [
"0xbbe4fd50",
"0xbbe4fd500000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc2052403",
"selector": "0xc2052403",
"calldata_variants": [
"0xc2052403",
"0xc20524030000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdf78c1dd",
"selector": "0xdf78c1dd",
"calldata_variants": [
"0xdf78c1dd",
"0xdf78c1dd0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 240,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 401,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 2,
"guards_detected": []
}
|