019b477e-dc04-73a5-ae7e-ee0d5aa0f226
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 |
|---|---|---|---|---|
| 29727 | artifact.fetch | complete | 1 / 3 | 3 months ago |
| 29728 | tool.cast_disasm | complete | 1 / 3 | 3 months ago |
| 92997 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 92998 | capability.graph | complete | 1 / 3 | 1 week ago |
| 92999 | detector.run | complete | 1 / 3 | 1 week ago |
| 93000 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
No codex job recorded yet.
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: CALLDATASIZE 00000006: PUSH2 0x0013 00000009: JUMPI 0000000a: PUSH2 0x0011 0000000d: PUSH2 0x0017 00000010: JUMP 00000011: JUMPDEST 00000012: STOP 00000013: JUMPDEST 00000014: PUSH2 0x0011 00000017: JUMPDEST 00000018: PUSH2 0x0027 0000001b: PUSH2 0x0022 0000001e: PUSH2 0x0029 00000021: JUMP 00000022: JUMPDEST 00000023: PUSH2 0x00dc 00000026: JUMP 00000027: JUMPDEST 00000028: JUMP 00000029: JUMPDEST 0000002a: PUSH1 0x00 0000002c: PUSH2 0x0069 0000002f: PUSH32 0xa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d50 00000050: SLOAD 00000051: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000066: AND 00000067: SWAP1 00000068: JUMP 00000069: JUMPDEST 0000006a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000007f: AND 00000080: PUSH4 0x5c60da1b 00000085: PUSH1 0x40 00000087: MLOAD 00000088: DUP2 00000089: PUSH4 0xffffffff 0000008e: AND 0000008f: PUSH1 0xe0 00000091: SHL 00000092: DUP2 00000093: MSTORE 00000094: PUSH1 0x04 00000096: ADD 00000097: PUSH1 0x20 00000099: PUSH1 0x40 0000009b: MLOAD 0000009c: DUP1 0000009d: DUP4 0000009e: SUB 0000009f: DUP2 000000a0: DUP7 000000a1: GAS 000000a2: STATICCALL 000000a3: ISZERO 000000a4: DUP1 000000a5: ISZERO 000000a6: PUSH2 0x00b3 000000a9: JUMPI 000000aa: RETURNDATASIZE 000000ab: PUSH1 0x00 000000ad: DUP1 000000ae: RETURNDATACOPY 000000af: RETURNDATASIZE 000000b0: PUSH1 0x00 000000b2: REVERT 000000b3: JUMPDEST 000000b4: POP 000000b5: POP 000000b6: POP 000000b7: POP 000000b8: PUSH1 0x40 000000ba: MLOAD 000000bb: RETURNDATASIZE 000000bc: PUSH1 0x1f 000000be: NOT 000000bf: PUSH1 0x1f 000000c1: DUP3 000000c2: ADD 000000c3: AND 000000c4: DUP3 000000c5: ADD 000000c6: DUP1 000000c7: PUSH1 0x40 000000c9: MSTORE 000000ca: POP 000000cb: DUP2 000000cc: ADD 000000cd: SWAP1 000000ce: PUSH2 0x00d7 000000d1: SWAP2 000000d2: SWAP1 000000d3: PUSH2 0x0100 000000d6: JUMP 000000d7: JUMPDEST 000000d8: SWAP1 000000d9: POP 000000da: SWAP1 000000db: JUMP 000000dc: JUMPDEST 000000dd: CALLDATASIZE 000000de: PUSH1 0x00 000000e0: DUP1 000000e1: CALLDATACOPY 000000e2: PUSH1 0x00 000000e4: DUP1 000000e5: CALLDATASIZE 000000e6: PUSH1 0x00 000000e8: DUP5 000000e9: GAS 000000ea: DELEGATECALL 000000eb: RETURNDATASIZE 000000ec: PUSH1 0x00 000000ee: DUP1 000000ef: RETURNDATACOPY 000000f0: DUP1 000000f1: DUP1 000000f2: ISZERO 000000f3: PUSH2 0x00fb 000000f6: JUMPI 000000f7: RETURNDATASIZE 000000f8: PUSH1 0x00 000000fa: RETURN 000000fb: JUMPDEST 000000fc: RETURNDATASIZE 000000fd: PUSH1 0x00 000000ff: REVERT 00000100: JUMPDEST 00000101: PUSH1 0x00 00000103: PUSH1 0x20 00000105: DUP3 00000106: DUP5 00000107: SUB 00000108: SLT 00000109: ISZERO 0000010a: PUSH2 0x0112 0000010d: JUMPI 0000010e: PUSH1 0x00 00000110: DUP1 00000111: REVERT 00000112: JUMPDEST 00000113: DUP2 00000114: MLOAD 00000115: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000012a: DUP2 0000012b: AND 0000012c: DUP2 0000012d: EQ 0000012e: PUSH2 0x0136 00000131: JUMPI 00000132: PUSH1 0x00 00000134: DUP1 00000135: REVERT 00000136: JUMPDEST 00000137: SWAP4 00000138: SWAP3 00000139: POP 0000013a: POP 0000013b: POP 0000013c: JUMP 0000013d: INVALID 0000013e: LOG2 0000013f: PUSH5 0x6970667358 00000145: UNKNOWN(0x22) 00000146: SLT 00000147: KECCAK256 00000148: UNKNOWN(0x0E) 00000149: UNKNOWN(0xD0) 0000014a: UNKNOWN(0xCF) 0000014b: ORIGIN 0000014c: UNKNOWN(0xBA) 0000014d: UNKNOWN(0xA6) 0000014e: UNKNOWN(0xDF) 0000014f: SELFDESTRUCT 00000150: PUSH3 0xdb607e 00000154: CALLVALUE 00000155: SWAP9 00000156: UNKNOWN(0xCD) 00000157: KECCAK256 00000158: UNKNOWN(0xA8) 00000159: DUP4 0000015a: PUSH21 0x51de12c274b3950b048509a8ca64736f6c63430008 00000170: SGT 00000171: STOP 00000172: CALLER
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | upgradeability | detector | Untrusted DELEGATECALL target reachable | 55 | no | no |
viewtrace_id: 0x1d8706bd046f1970277407ed208ab71a2ec1ac860ebc9b8a9e15c195a51f1560
call_targets:
0x04ead25447f9371c5c1e2c33645f32aafeb337dc
target_varies:
no
classification:
constant_target
validation_json{
"sink": "DELEGATECALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x1d8706bd046f1970277407ed208ab71a2ec1ac860ebc9b8a9e15c195a51f1560",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x04ead25447f9371c5c1e2c33645f32aafeb337dc"
],
"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": "0x",
"selector": "fallback",
"calldata_variants": [
"0x"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 234,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
}
],
"guards_detected": [
{
"pc": 331,
"type": "tx_origin_used"
}
],
"delegatecall_count": 1,
"untrusted_delegatecall_count": 1
}
|
| high | auth | detector | Authorization based on tx.origin | 70 | no | — |
viewvalidation_json{
"reason": "missing sink mapping",
"status": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x",
"selector": "fallback",
"calldata_variants": [
"0x"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 331,
"type": "tx_origin_used"
}
]
}
|
| medium | other | detector | SELFDESTRUCT reachable | 45 | no | no |
viewtrace_id: 0x3145327f122a2212540f932d22c347288748a19101bf7494465c746958a75338
validation_json{
"sink": "SELFDESTRUCT",
"errors": 0,
"status": "unknown",
"attempts": 1,
"trace_id": "0x3145327f122a2212540f932d22c347288748a19101bf7494465c746958a75338",
"confirmed": false,
"trace_mode": "structLogs",
"call_targets": null,
"matched_probe": null,
"target_varies": null,
"classification": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x",
"selector": "fallback",
"calldata_variants": [
"0x"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 331,
"type": "tx_origin_used"
}
],
"selfdestruct_count": 1
}
|