019b3836-5ee0-722b-931c-7c063cd86f43
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 |
|---|---|---|---|---|
| 9549 | artifact.fetch | complete | 1 / 3 | 4 months ago |
| 9550 | tool.cast_disasm | complete | 1 / 3 | 4 months ago |
| 52500 | analysis.bundle | complete | 1 / 3 | 2 weeks ago |
| 52501 | capability.graph | complete | 1 / 3 | 2 weeks ago |
| 52502 | detector.run | complete | 1 / 3 | 2 weeks ago |
| 52503 | 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 0x238ac933 00000013: DUP2 00000014: EQ 00000015: PUSH2 0x0031 00000018: JUMPI 00000019: DUP1 0000001a: PUSH4 0x937c0d0a 0000001f: EQ 00000020: PUSH2 0x0043 00000023: JUMPI 00000024: DUP1 00000025: PUSH4 0xe5fe4f31 0000002a: EQ 0000002b: PUSH2 0x0055 0000002e: JUMPI 0000002f: JUMPDEST 00000030: STOP 00000031: JUMPDEST 00000032: PUSH2 0x010c 00000035: PUSH1 0x00 00000037: SLOAD 00000038: PUSH1 0x01 0000003a: PUSH1 0xa0 0000003c: PUSH1 0x02 0000003e: EXP 0000003f: SUB 00000040: AND 00000041: DUP2 00000042: JUMP 00000043: JUMPDEST 00000044: PUSH2 0x010c 00000047: PUSH1 0x01 00000049: SLOAD 0000004a: PUSH1 0x01 0000004c: PUSH1 0xa0 0000004e: PUSH1 0x02 00000050: EXP 00000051: SUB 00000052: AND 00000053: DUP2 00000054: JUMP 00000055: JUMPDEST 00000056: PUSH2 0x002f 00000059: PUSH1 0x04 0000005b: CALLDATALOAD 0000005c: PUSH1 0x24 0000005e: CALLDATALOAD 0000005f: PUSH1 0x44 00000061: CALLDATALOAD 00000062: PUSH1 0x01 00000064: SLOAD 00000065: PUSH13 0x01000000000000000000000000 00000073: PUSH1 0x01 00000075: PUSH1 0xa0 00000077: PUSH1 0x02 00000079: EXP 0000007a: SUB 0000007b: SWAP1 0000007c: SWAP2 0000007d: AND 0000007e: MUL 0000007f: PUSH1 0x60 00000081: SWAP1 00000082: DUP2 00000083: MSTORE 00000084: PUSH1 0x00 00000086: SWAP1 00000087: PUSH1 0x02 00000089: SWAP1 0000008a: PUSH1 0x74 0000008c: SWAP1 0000008d: PUSH1 0x20 0000008f: SWAP1 00000090: PUSH1 0x14 00000092: DUP2 00000093: DUP7 00000094: DUP7 00000095: PUSH2 0x61da 00000098: GAS 00000099: SUB 0000009a: CALL 0000009b: ISZERO 0000009c: PUSH2 0x0002 0000009f: JUMPI 000000a0: POP 000000a1: POP 000000a2: PUSH1 0x40 000000a4: DUP1 000000a5: MLOAD 000000a6: DUP1 000000a7: MLOAD 000000a8: DUP4 000000a9: SLOAD 000000aa: PUSH1 0xff 000000ac: DUP9 000000ad: AND 000000ae: PUSH1 0x20 000000b0: DUP5 000000b1: DUP2 000000b2: ADD 000000b3: SWAP2 000000b4: SWAP1 000000b5: SWAP2 000000b6: MSTORE 000000b7: DUP4 000000b8: DUP6 000000b9: ADD 000000ba: DUP9 000000bb: SWAP1 000000bc: MSTORE 000000bd: PUSH1 0x60 000000bf: DUP5 000000c0: ADD 000000c1: DUP8 000000c2: SWAP1 000000c3: MSTORE 000000c4: SWAP4 000000c5: MLOAD 000000c6: SWAP2 000000c7: SWAP5 000000c8: PUSH1 0x01 000000ca: PUSH1 0xa0 000000cc: PUSH1 0x02 000000ce: EXP 000000cf: SUB 000000d0: SWAP2 000000d1: SWAP1 000000d2: SWAP2 000000d3: AND 000000d4: SWAP4 000000d5: PUSH1 0x01 000000d7: SWAP4 000000d8: PUSH1 0x80 000000da: DUP1 000000db: DUP3 000000dc: ADD 000000dd: SWAP5 000000de: SWAP3 000000df: SWAP4 000000e0: SWAP2 000000e1: DUP4 000000e2: SWAP1 000000e3: SUB 000000e4: ADD 000000e5: SWAP1 000000e6: DUP3 000000e7: SWAP1 000000e8: DUP7 000000e9: PUSH2 0x61da 000000ec: GAS 000000ed: SUB 000000ee: CALL 000000ef: ISZERO 000000f0: PUSH2 0x0002 000000f3: JUMPI 000000f4: POP 000000f5: POP 000000f6: PUSH1 0x40 000000f8: MLOAD 000000f9: MLOAD 000000fa: PUSH1 0x01 000000fc: PUSH1 0xa0 000000fe: PUSH1 0x02 00000100: EXP 00000101: SUB 00000102: AND 00000103: EQ 00000104: PUSH2 0x011f 00000107: JUMPI 00000108: PUSH2 0x0002 0000010b: JUMP 0000010c: JUMPDEST 0000010d: PUSH1 0x01 0000010f: PUSH1 0xa0 00000111: PUSH1 0x02 00000113: EXP 00000114: SUB 00000115: AND 00000116: PUSH1 0x60 00000118: SWAP1 00000119: DUP2 0000011a: MSTORE 0000011b: PUSH1 0x20 0000011d: SWAP1 0000011e: RETURN 0000011f: JUMPDEST 00000120: PUSH1 0x40 00000122: MLOAD 00000123: PUSH1 0x01 00000125: SLOAD 00000126: PUSH1 0x01 00000128: PUSH1 0xa0 0000012a: PUSH1 0x02 0000012c: EXP 0000012d: SUB 0000012e: AND 0000012f: SWAP1 00000130: PUSH32 0xaa9449f2bca09a7b28319d46fd3f3b58a1bb7d94039fc4b69b7bfe5d8535d527 00000151: SWAP1 00000152: PUSH1 0x00 00000154: SWAP1 00000155: LOG2 00000156: POP 00000157: POP 00000158: POP 00000159: POP 0000015a: 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: 0x8ad970feedb5711a5f03e4f15fffb19c2c973150ad65b24743549c3035faba96
call_targets:
0xbb0d2ca2241b8a537b9e5834fe8e5c39ccd70c60
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x8ad970feedb5711a5f03e4f15fffb19c2c973150ad65b24743549c3035faba96",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xbb0d2ca2241b8a537b9e5834fe8e5c39ccd70c60"
],
"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": "0x238ac933",
"selector": "0x238ac933",
"calldata_variants": [
"0x238ac933",
"0x238ac9330000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x937c0d0a",
"selector": "0x937c0d0a",
"calldata_variants": [
"0x937c0d0a",
"0x937c0d0a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe5fe4f31",
"selector": "0xe5fe4f31",
"calldata_variants": [
"0xe5fe4f31",
"0xe5fe4f310000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 154,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "constant_zero",
"target_expression_category": "computed"
},
{
"pc": 238,
"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: 0x8ad970feedb5711a5f03e4f15fffb19c2c973150ad65b24743549c3035faba96
call_targets:
0xbb0d2ca2241b8a537b9e5834fe8e5c39ccd70c60
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x8ad970feedb5711a5f03e4f15fffb19c2c973150ad65b24743549c3035faba96",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xbb0d2ca2241b8a537b9e5834fe8e5c39ccd70c60"
],
"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": "0x238ac933",
"selector": "0x238ac933",
"calldata_variants": [
"0x238ac933",
"0x238ac9330000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x937c0d0a",
"selector": "0x937c0d0a",
"calldata_variants": [
"0x937c0d0a",
"0x937c0d0a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe5fe4f31",
"selector": "0xe5fe4f31",
"calldata_variants": [
"0xe5fe4f31",
"0xe5fe4f310000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 238,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 1,
"guards_detected": []
}
|