019b3836-27c1-7063-8ba3-00e3fce97517
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 |
|---|---|---|---|---|
| 1139 | artifact.fetch | complete | 1 / 3 | 3 months ago |
| 1140 | tool.cast_disasm | complete | 1 / 3 | 3 months ago |
| 43847 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 43848 | capability.graph | complete | 1 / 3 | 1 week ago |
| 43849 | detector.run | complete | 1 / 3 | 1 week ago |
| 43850 | 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: 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 0x0fb5a6b4 00000019: DUP2 0000001a: EQ 0000001b: PUSH2 0x008c 0000001e: JUMPI 0000001f: DUP1 00000020: PUSH4 0x3ccfd60b 00000025: EQ 00000026: PUSH2 0x0095 00000029: JUMPI 0000002a: DUP1 0000002b: PUSH4 0x5e5c06e2 00000030: EQ 00000031: PUSH2 0x012a 00000034: JUMPI 00000035: JUMPDEST 00000036: PUSH2 0x014a 00000039: PUSH1 0x00 0000003b: PUSH1 0x00 0000003d: PUSH1 0x00 0000003f: CALLVALUE 00000040: GT 00000041: ISZERO 00000042: PUSH2 0x014c 00000045: JUMPI 00000046: CALLER 00000047: PUSH1 0x01 00000049: PUSH1 0xa0 0000004b: PUSH1 0x02 0000004d: EXP 0000004e: SUB 0000004f: DUP2 00000050: AND 00000051: DUP3 00000052: MSTORE 00000053: PUSH1 0x20 00000055: DUP3 00000056: SWAP1 00000057: MSTORE 00000058: PUSH1 0x40 0000005a: DUP3 0000005b: KECCAK256 0000005c: SLOAD 0000005d: SWAP1 0000005e: SWAP3 0000005f: POP 00000060: DUP2 00000061: SWAP1 00000062: GT 00000063: ISZERO 00000064: PUSH2 0x0154 00000067: JUMPI 00000068: PUSH1 0x40 0000006a: MLOAD 0000006b: PUSH1 0x01 0000006d: PUSH1 0xa0 0000006f: PUSH1 0x02 00000071: EXP 00000072: SUB 00000073: DUP4 00000074: AND 00000075: SWAP1 00000076: DUP3 00000077: SWAP1 00000078: CALLVALUE 00000079: SWAP1 0000007a: DUP3 0000007b: DUP2 0000007c: DUP2 0000007d: DUP2 0000007e: DUP6 0000007f: DUP9 00000080: DUP4 00000081: CALL 00000082: SWAP4 00000083: POP 00000084: POP 00000085: POP 00000086: POP 00000087: POP 00000088: PUSH2 0x0182 0000008b: JUMP 0000008c: JUMPDEST 0000008d: PUSH2 0x0186 00000090: PUSH1 0x01 00000092: SLOAD 00000093: DUP2 00000094: JUMP 00000095: JUMPDEST 00000096: PUSH2 0x014a 00000099: JUMPDEST 0000009a: PUSH1 0x01 0000009c: PUSH1 0xa0 0000009e: PUSH1 0x02 000000a0: EXP 000000a1: SUB 000000a2: CALLER 000000a3: AND 000000a4: PUSH1 0x00 000000a6: SWAP1 000000a7: DUP2 000000a8: MSTORE 000000a9: PUSH1 0x20 000000ab: DUP2 000000ac: SWAP1 000000ad: MSTORE 000000ae: PUSH1 0x40 000000b0: DUP2 000000b1: KECCAK256 000000b2: SLOAD 000000b3: GT 000000b4: DUP1 000000b5: ISZERO 000000b6: PUSH2 0x00c7 000000b9: JUMPI 000000ba: POP 000000bb: PUSH1 0x40 000000bd: PUSH1 0x00 000000bf: SWAP1 000000c0: DUP2 000000c1: KECCAK256 000000c2: PUSH1 0x01 000000c4: ADD 000000c5: SLOAD 000000c6: GT 000000c7: JUMPDEST 000000c8: DUP1 000000c9: ISZERO 000000ca: PUSH2 0x00ed 000000cd: JUMPI 000000ce: POP 000000cf: PUSH1 0x01 000000d1: PUSH1 0xa0 000000d3: PUSH1 0x02 000000d5: EXP 000000d6: SUB 000000d7: CALLER 000000d8: AND 000000d9: PUSH1 0x00 000000db: SWAP1 000000dc: DUP2 000000dd: MSTORE 000000de: PUSH1 0x20 000000e0: DUP2 000000e1: SWAP1 000000e2: MSTORE 000000e3: PUSH1 0x40 000000e5: SWAP1 000000e6: KECCAK256 000000e7: PUSH1 0x01 000000e9: ADD 000000ea: SLOAD 000000eb: TIMESTAMP 000000ec: GT 000000ed: JUMPDEST 000000ee: ISZERO 000000ef: PUSH2 0x0128 000000f2: JUMPI 000000f3: PUSH1 0x01 000000f5: PUSH1 0xa0 000000f7: PUSH1 0x02 000000f9: EXP 000000fa: SUB 000000fb: CALLER 000000fc: AND 000000fd: PUSH1 0x00 000000ff: DUP2 00000100: DUP2 00000101: MSTORE 00000102: PUSH1 0x20 00000104: DUP2 00000105: SWAP1 00000106: MSTORE 00000107: PUSH1 0x40 00000109: DUP1 0000010a: DUP3 0000010b: KECCAK256 0000010c: SLOAD 0000010d: SWAP1 0000010e: MLOAD 0000010f: DUP3 00000110: DUP2 00000111: DUP2 00000112: DUP2 00000113: DUP6 00000114: DUP9 00000115: DUP4 00000116: CALL 00000117: POP 00000118: POP 00000119: PUSH1 0x40 0000011b: DUP3 0000011c: KECCAK256 0000011d: SWAP3 0000011e: DUP3 0000011f: MSTORE 00000120: POP 00000121: PUSH1 0x20 00000123: DUP2 00000124: SWAP1 00000125: MSTORE 00000126: SWAP1 00000127: SSTORE 00000128: JUMPDEST 00000129: JUMP 0000012a: JUMPDEST 0000012b: PUSH2 0x0198 0000012e: PUSH1 0x04 00000130: CALLDATALOAD 00000131: PUSH1 0x00 00000133: PUSH1 0x20 00000135: DUP2 00000136: SWAP1 00000137: MSTORE 00000138: SWAP1 00000139: DUP2 0000013a: MSTORE 0000013b: PUSH1 0x40 0000013d: SWAP1 0000013e: KECCAK256 0000013f: DUP1 00000140: SLOAD 00000141: PUSH1 0x01 00000143: SWAP2 00000144: SWAP1 00000145: SWAP2 00000146: ADD 00000147: SLOAD 00000148: DUP3 00000149: JUMP 0000014a: JUMPDEST 0000014b: STOP 0000014c: JUMPDEST 0000014d: PUSH2 0x0182 00000150: PUSH2 0x0099 00000153: JUMP 00000154: JUMPDEST 00000155: POP 00000156: PUSH1 0x01 00000158: DUP1 00000159: SLOAD 0000015a: PUSH1 0x01 0000015c: PUSH1 0xa0 0000015e: PUSH1 0x02 00000160: EXP 00000161: SUB 00000162: DUP4 00000163: AND 00000164: PUSH1 0x00 00000166: SWAP1 00000167: DUP2 00000168: MSTORE 00000169: PUSH1 0x20 0000016b: DUP2 0000016c: SWAP1 0000016d: MSTORE 0000016e: PUSH1 0x40 00000170: SWAP1 00000171: KECCAK256 00000172: DUP1 00000173: SLOAD 00000174: CALLVALUE 00000175: ADD 00000176: DUP2 00000177: SSTORE 00000178: TIMESTAMP 00000179: SWAP2 0000017a: SWAP1 0000017b: SWAP2 0000017c: ADD 0000017d: SWAP2 0000017e: ADD 0000017f: DUP2 00000180: SWAP1 00000181: SSTORE 00000182: JUMPDEST 00000183: POP 00000184: POP 00000185: JUMP 00000186: JUMPDEST 00000187: PUSH1 0x40 00000189: DUP1 0000018a: MLOAD 0000018b: SWAP2 0000018c: DUP3 0000018d: MSTORE 0000018e: MLOAD 0000018f: SWAP1 00000190: DUP2 00000191: SWAP1 00000192: SUB 00000193: PUSH1 0x20 00000195: ADD 00000196: SWAP1 00000197: RETURN 00000198: JUMPDEST 00000199: PUSH1 0x40 0000019b: DUP1 0000019c: MLOAD 0000019d: SWAP3 0000019e: DUP4 0000019f: MSTORE 000001a0: PUSH1 0x20 000001a2: DUP4 000001a3: ADD 000001a4: SWAP2 000001a5: SWAP1 000001a6: SWAP2 000001a7: MSTORE 000001a8: DUP1 000001a9: MLOAD 000001aa: SWAP2 000001ab: DUP3 000001ac: SWAP1 000001ad: SUB 000001ae: ADD 000001af: SWAP1 000001b0: RETURN
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: 0x0231182d96d2a86512d5842f3b00644a88eb81e7efe165037fc40db36eb78559
call_targets:
0xed44f3c2081480b08643fe1ca281fab9ed643735
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x0231182d96d2a86512d5842f3b00644a88eb81e7efe165037fc40db36eb78559",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xed44f3c2081480b08643fe1ca281fab9ed643735"
],
"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": "0x0fb5a6b4",
"selector": "0x0fb5a6b4",
"calldata_variants": [
"0x0fb5a6b4",
"0x0fb5a6b40000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x3ccfd60b",
"selector": "0x3ccfd60b",
"calldata_variants": [
"0x3ccfd60b",
"0x3ccfd60b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x5e5c06e2",
"selector": "0x5e5c06e2",
"calldata_variants": [
"0x5e5c06e2",
"0x5e5c06e20000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 129,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 278,
"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: 0x0231182d96d2a86512d5842f3b00644a88eb81e7efe165037fc40db36eb78559
call_targets:
0xed44f3c2081480b08643fe1ca281fab9ed643735
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x0231182d96d2a86512d5842f3b00644a88eb81e7efe165037fc40db36eb78559",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xed44f3c2081480b08643fe1ca281fab9ed643735"
],
"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": "0x0fb5a6b4",
"selector": "0x0fb5a6b4",
"calldata_variants": [
"0x0fb5a6b4",
"0x0fb5a6b40000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x3ccfd60b",
"selector": "0x3ccfd60b",
"calldata_variants": [
"0x3ccfd60b",
"0x3ccfd60b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x5e5c06e2",
"selector": "0x5e5c06e2",
"calldata_variants": [
"0x5e5c06e2",
"0x5e5c06e20000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 129,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 278,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 2,
"guards_detected": []
}
|