019b3836-2a95-7252-8d39-6e043496948a
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 |
|---|---|---|---|---|
| 1625 | artifact.fetch | complete | 1 / 3 | 4 months ago |
| 1626 | tool.cast_disasm | complete | 1 / 3 | 4 months ago |
| 79175 | analysis.bundle | complete | 1 / 3 | 2 weeks ago |
| 79176 | capability.graph | complete | 1 / 3 | 2 weeks ago |
| 79177 | detector.run | complete | 1 / 3 | 2 weeks ago |
| 79178 | 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 0x00 00000007: CALLDATALOAD 00000008: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 00000026: SWAP1 00000027: DIV 00000028: DUP1 00000029: PUSH4 0x41c0e1b5 0000002e: EQ 0000002f: PUSH2 0x004f 00000032: JUMPI 00000033: DUP1 00000034: PUSH4 0xf2c298be 00000039: EQ 0000003a: PUSH2 0x005e 0000003d: JUMPI 0000003e: DUP1 0000003f: PUSH4 0xf67187ac 00000044: EQ 00000045: PUSH2 0x0081 00000048: JUMPI 00000049: PUSH2 0x004d 0000004c: JUMP 0000004d: JUMPDEST 0000004e: STOP 0000004f: JUMPDEST 00000050: PUSH2 0x005c 00000053: PUSH1 0x04 00000055: DUP1 00000056: POP 00000057: POP 00000058: PUSH2 0x018e 0000005b: JUMP 0000005c: JUMPDEST 0000005d: STOP 0000005e: JUMPDEST 0000005f: PUSH2 0x007f 00000062: PUSH1 0x04 00000064: DUP1 00000065: DUP1 00000066: CALLDATALOAD 00000067: SWAP1 00000068: PUSH1 0x20 0000006a: ADD 0000006b: SWAP1 0000006c: DUP3 0000006d: ADD 0000006e: DUP1 0000006f: CALLDATALOAD 00000070: SWAP1 00000071: PUSH1 0x20 00000073: ADD 00000074: SWAP2 00000075: SWAP1 00000076: SWAP2 00000077: SWAP3 00000078: SWAP1 00000079: POP 0000007a: POP 0000007b: PUSH2 0x00ce 0000007e: JUMP 0000007f: JUMPDEST 00000080: STOP 00000081: JUMPDEST 00000082: PUSH2 0x00a2 00000085: PUSH1 0x04 00000087: DUP1 00000088: DUP1 00000089: CALLDATALOAD 0000008a: SWAP1 0000008b: PUSH1 0x20 0000008d: ADD 0000008e: SWAP1 0000008f: DUP3 00000090: ADD 00000091: DUP1 00000092: CALLDATALOAD 00000093: SWAP1 00000094: PUSH1 0x20 00000096: ADD 00000097: SWAP2 00000098: SWAP1 00000099: SWAP2 0000009a: SWAP3 0000009b: SWAP1 0000009c: POP 0000009d: POP 0000009e: PUSH2 0x0136 000000a1: JUMP 000000a2: JUMPDEST 000000a3: PUSH1 0x40 000000a5: MLOAD 000000a6: DUP1 000000a7: DUP3 000000a8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000000bd: AND 000000be: DUP2 000000bf: MSTORE 000000c0: PUSH1 0x20 000000c2: ADD 000000c3: SWAP2 000000c4: POP 000000c5: POP 000000c6: PUSH1 0x40 000000c8: MLOAD 000000c9: DUP1 000000ca: SWAP2 000000cb: SUB 000000cc: SWAP1 000000cd: RETURN 000000ce: JUMPDEST 000000cf: PUSH1 0x00 000000d1: PUSH1 0x00 000000d3: POP 000000d4: SLOAD 000000d5: CALLVALUE 000000d6: LT 000000d7: ISZERO 000000d8: PUSH2 0x00e0 000000db: JUMPI 000000dc: PUSH2 0x0132 000000df: JUMP 000000e0: JUMPDEST 000000e1: ORIGIN 000000e2: PUSH1 0x01 000000e4: PUSH1 0x00 000000e6: POP 000000e7: DUP4 000000e8: DUP4 000000e9: PUSH1 0x40 000000eb: MLOAD 000000ec: DUP1 000000ed: DUP4 000000ee: DUP4 000000ef: DUP1 000000f0: DUP3 000000f1: DUP5 000000f2: CALLDATACOPY 000000f3: DUP3 000000f4: ADD 000000f5: SWAP2 000000f6: POP 000000f7: POP 000000f8: SWAP3 000000f9: POP 000000fa: POP 000000fb: POP 000000fc: SWAP1 000000fd: DUP2 000000fe: MSTORE 000000ff: PUSH1 0x20 00000101: ADD 00000102: PUSH1 0x40 00000104: MLOAD 00000105: DUP1 00000106: SWAP2 00000107: SUB 00000108: SWAP1 00000109: KECCAK256 0000010a: PUSH1 0x00 0000010c: PUSH2 0x0100 0000010f: EXP 00000110: DUP2 00000111: SLOAD 00000112: DUP2 00000113: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000128: MUL 00000129: NOT 0000012a: AND 0000012b: SWAP1 0000012c: DUP4 0000012d: MUL 0000012e: OR 0000012f: SWAP1 00000130: SSTORE 00000131: POP 00000132: JUMPDEST 00000133: POP 00000134: POP 00000135: JUMP 00000136: JUMPDEST 00000137: PUSH1 0x00 00000139: PUSH1 0x01 0000013b: PUSH1 0x00 0000013d: POP 0000013e: DUP4 0000013f: DUP4 00000140: PUSH1 0x40 00000142: MLOAD 00000143: DUP1 00000144: DUP4 00000145: DUP4 00000146: DUP1 00000147: DUP3 00000148: DUP5 00000149: CALLDATACOPY 0000014a: DUP3 0000014b: ADD 0000014c: SWAP2 0000014d: POP 0000014e: POP 0000014f: SWAP3 00000150: POP 00000151: POP 00000152: POP 00000153: SWAP1 00000154: DUP2 00000155: MSTORE 00000156: PUSH1 0x20 00000158: ADD 00000159: PUSH1 0x40 0000015b: MLOAD 0000015c: DUP1 0000015d: SWAP2 0000015e: SUB 0000015f: SWAP1 00000160: KECCAK256 00000161: PUSH1 0x00 00000163: SWAP1 00000164: SLOAD 00000165: SWAP1 00000166: PUSH2 0x0100 00000169: EXP 0000016a: SWAP1 0000016b: DIV 0000016c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000181: AND 00000182: SWAP1 00000183: POP 00000184: PUSH2 0x0188 00000187: JUMP 00000188: JUMPDEST 00000189: SWAP3 0000018a: SWAP2 0000018b: POP 0000018c: POP 0000018d: JUMP 0000018e: JUMPDEST 0000018f: PUSH1 0x02 00000191: PUSH1 0x00 00000193: SWAP1 00000194: SLOAD 00000195: SWAP1 00000196: PUSH2 0x0100 00000199: EXP 0000019a: SWAP1 0000019b: DIV 0000019c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000001b1: AND 000001b2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000001c7: AND 000001c8: ORIGIN 000001c9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000001de: AND 000001df: EQ 000001e0: ISZERO 000001e1: ISZERO 000001e2: PUSH2 0x01ea 000001e5: JUMPI 000001e6: PUSH2 0x0225 000001e9: JUMP 000001ea: JUMPDEST 000001eb: PUSH1 0x02 000001ed: PUSH1 0x00 000001ef: SWAP1 000001f0: SLOAD 000001f1: SWAP1 000001f2: PUSH2 0x0100 000001f5: EXP 000001f6: SWAP1 000001f7: DIV 000001f8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000020d: AND 0000020e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000223: AND 00000224: SELFDESTRUCT 00000225: JUMPDEST 00000226: 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 | 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": "0x41c0e1b5",
"selector": "0x41c0e1b5",
"calldata_variants": [
"0x41c0e1b5",
"0x41c0e1b50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2c298be",
"selector": "0xf2c298be",
"calldata_variants": [
"0xf2c298be",
"0xf2c298be0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf67187ac",
"selector": "0xf67187ac",
"calldata_variants": [
"0xf67187ac",
"0xf67187ac0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 225,
"type": "tx_origin_used"
},
{
"pc": 456,
"type": "tx_origin_used"
}
]
}
|
| medium | other | detector | SELFDESTRUCT reachable | 45 | no | no |
viewtrace_id: 0x99d257a1a6506e99fdfd355462085532c0c4db1bdf890d7f96750f61b111abb9
validation_json{
"sink": "SELFDESTRUCT",
"errors": 0,
"status": "unknown",
"attempts": 6,
"trace_id": "0x99d257a1a6506e99fdfd355462085532c0c4db1bdf890d7f96750f61b111abb9",
"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": "0x41c0e1b5",
"selector": "0x41c0e1b5",
"calldata_variants": [
"0x41c0e1b5",
"0x41c0e1b50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2c298be",
"selector": "0xf2c298be",
"calldata_variants": [
"0xf2c298be",
"0xf2c298be0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf67187ac",
"selector": "0xf67187ac",
"calldata_variants": [
"0xf67187ac",
"0xf67187ac0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 225,
"type": "tx_origin_used"
},
{
"pc": 456,
"type": "tx_origin_used"
}
],
"selfdestruct_count": 1
}
|