019b3836-5854-730a-ae73-ffb3649b2808
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 |
|---|---|---|---|---|
| 8623 | artifact.fetch | complete | 1 / 3 | 3 months ago |
| 8624 | tool.cast_disasm | complete | 1 / 3 | 3 months ago |
| 98462 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 98463 | capability.graph | complete | 1 / 3 | 1 week ago |
| 98464 | detector.run | complete | 1 / 3 | 1 week ago |
| 98465 | 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 0x753334dd 00000013: DUP2 00000014: EQ 00000015: PUSH2 0x0026 00000018: JUMPI 00000019: DUP1 0000001a: PUSH4 0x90a54997 0000001f: EQ 00000020: PUSH2 0x006a 00000023: JUMPI 00000024: JUMPDEST 00000025: STOP 00000026: JUMPDEST 00000027: PUSH2 0x0024 0000002a: PUSH1 0x04 0000002c: DUP1 0000002d: CALLDATALOAD 0000002e: SWAP1 0000002f: PUSH1 0x24 00000031: DUP1 00000032: CALLDATALOAD 00000033: SWAP2 00000034: PUSH1 0x44 00000036: CALLDATALOAD 00000037: DUP1 00000038: DUP4 00000039: ADD 0000003a: SWAP3 0000003b: SWAP1 0000003c: DUP3 0000003d: ADD 0000003e: CALLDATALOAD 0000003f: SWAP2 00000040: PUSH1 0x64 00000042: CALLDATALOAD 00000043: SWAP2 00000044: DUP3 00000045: ADD 00000046: SWAP2 00000047: ADD 00000048: CALLDATALOAD 00000049: PUSH1 0x00 0000004b: DUP6 0000004c: DUP2 0000004d: MSTORE 0000004e: PUSH1 0x01 00000050: PUSH1 0x20 00000052: DUP2 00000053: SWAP1 00000054: MSTORE 00000055: PUSH1 0x40 00000057: SWAP1 00000058: SWAP2 00000059: KECCAK256 0000005a: SLOAD 0000005b: PUSH1 0xff 0000005d: AND 0000005e: ISZERO 0000005f: ISZERO 00000060: EQ 00000061: ISZERO 00000062: PUSH2 0x00c2 00000065: JUMPI 00000066: PUSH2 0x0002 00000069: JUMP 0000006a: JUMPDEST 0000006b: PUSH2 0x0024 0000006e: PUSH1 0x04 00000070: DUP1 00000071: CALLDATALOAD 00000072: SWAP1 00000073: PUSH1 0x24 00000075: DUP1 00000076: CALLDATALOAD 00000077: SWAP2 00000078: PUSH1 0x44 0000007a: CALLDATALOAD 0000007b: SWAP2 0000007c: PUSH1 0x64 0000007e: CALLDATALOAD 0000007f: SWAP2 00000080: PUSH1 0x84 00000082: CALLDATALOAD 00000083: SWAP2 00000084: PUSH1 0xa4 00000086: CALLDATALOAD 00000087: DUP1 00000088: DUP3 00000089: ADD 0000008a: SWAP3 0000008b: SWAP1 0000008c: DUP2 0000008d: ADD 0000008e: CALLDATALOAD 0000008f: SWAP2 00000090: PUSH1 0xc4 00000092: CALLDATALOAD 00000093: SWAP1 00000094: DUP2 00000095: ADD 00000096: SWAP2 00000097: ADD 00000098: CALLDATALOAD 00000099: PUSH1 0x00 0000009b: DUP6 0000009c: DUP2 0000009d: MSTORE 0000009e: PUSH1 0x01 000000a0: PUSH1 0x20 000000a2: DUP2 000000a3: SWAP1 000000a4: MSTORE 000000a5: PUSH1 0x40 000000a7: SWAP1 000000a8: SWAP2 000000a9: KECCAK256 000000aa: SLOAD 000000ab: PUSH1 0xff 000000ad: AND 000000ae: ISZERO 000000af: ISZERO 000000b0: EQ 000000b1: ISZERO 000000b2: PUSH2 0x01ba 000000b5: JUMPI 000000b6: PUSH2 0x0002 000000b9: JUMP 000000ba: JUMPDEST 000000bb: POP 000000bc: POP 000000bd: POP 000000be: POP 000000bf: POP 000000c0: POP 000000c1: JUMP 000000c2: JUMPDEST 000000c3: PUSH2 0x014e 000000c6: DUP6 000000c7: DUP6 000000c8: DUP6 000000c9: DUP1 000000ca: DUP1 000000cb: PUSH1 0x1f 000000cd: ADD 000000ce: PUSH1 0x20 000000d0: DUP1 000000d1: SWAP2 000000d2: DIV 000000d3: MUL 000000d4: PUSH1 0x20 000000d6: ADD 000000d7: PUSH1 0x40 000000d9: MLOAD 000000da: SWAP1 000000db: DUP2 000000dc: ADD 000000dd: PUSH1 0x40 000000df: MSTORE 000000e0: DUP1 000000e1: SWAP4 000000e2: SWAP3 000000e3: SWAP2 000000e4: SWAP1 000000e5: DUP2 000000e6: DUP2 000000e7: MSTORE 000000e8: PUSH1 0x20 000000ea: ADD 000000eb: DUP4 000000ec: DUP4 000000ed: DUP1 000000ee: DUP3 000000ef: DUP5 000000f0: CALLDATACOPY 000000f1: POP 000000f2: POP 000000f3: PUSH1 0x40 000000f5: DUP1 000000f6: MLOAD 000000f7: PUSH1 0x20 000000f9: PUSH1 0x1f 000000fb: DUP12 000000fc: ADD 000000fd: DUP2 000000fe: SWAP1 000000ff: DIV 00000100: DUP2 00000101: MUL 00000102: DUP3 00000103: ADD 00000104: DUP2 00000105: ADD 00000106: SWAP1 00000107: SWAP3 00000108: MSTORE 00000109: DUP10 0000010a: DUP2 0000010b: MSTORE 0000010c: SWAP5 0000010d: POP 0000010e: DUP10 0000010f: SWAP4 00000110: POP 00000111: DUP9 00000112: SWAP3 00000113: POP 00000114: DUP3 00000115: SWAP2 00000116: POP 00000117: DUP5 00000118: ADD 00000119: DUP4 0000011a: DUP3 0000011b: DUP1 0000011c: DUP3 0000011d: DUP5 0000011e: CALLDATACOPY 0000011f: POP 00000120: POP 00000121: POP 00000122: POP 00000123: POP 00000124: POP 00000125: JUMPDEST 00000126: PUSH1 0x00 00000128: PUSH1 0x00 0000012a: PUSH1 0x00 0000012c: PUSH2 0x0222 0000012f: DUP7 00000130: DUP7 00000131: JUMPDEST 00000132: PUSH1 0x00 00000134: PUSH1 0x00 00000136: PUSH1 0x00 00000138: PUSH1 0x00 0000013a: DUP5 0000013b: MLOAD 0000013c: PUSH1 0x41 0000013e: EQ 0000013f: ISZERO 00000140: ISZERO 00000141: PUSH2 0x0296 00000144: JUMPI 00000145: JUMPDEST 00000146: POP 00000147: POP 00000148: POP 00000149: SWAP3 0000014a: SWAP2 0000014b: POP 0000014c: POP 0000014d: JUMP 0000014e: JUMPDEST 0000014f: DUP6 00000150: PUSH1 0x01 00000152: PUSH1 0xa0 00000154: PUSH1 0x02 00000156: EXP 00000157: SUB 00000158: AND 00000159: SELFDESTRUCT 0000015a: JUMPDEST 0000015b: PUSH1 0x40 0000015d: MLOAD 0000015e: PUSH1 0x01 00000160: PUSH1 0xa0 00000162: PUSH1 0x02 00000164: EXP 00000165: SUB 00000166: DUP10 00000167: AND 00000168: SWAP1 00000169: PUSH1 0x00 0000016b: SWAP1 0000016c: DUP12 0000016d: SWAP1 0000016e: DUP3 0000016f: DUP2 00000170: DUP2 00000171: DUP2 00000172: DUP6 00000173: DUP9 00000174: DUP4 00000175: CALL 00000176: POP 00000177: POP 00000178: PUSH1 0x40 0000017a: MLOAD 0000017b: PUSH1 0x01 0000017d: PUSH1 0xa0 0000017f: PUSH1 0x02 00000181: EXP 00000182: SUB 00000183: DUP11 00000184: AND 00000185: SWAP4 00000186: POP 00000187: DUP11 00000188: SWAP2 00000189: POP 0000018a: DUP3 0000018b: DUP2 0000018c: DUP2 0000018d: DUP2 0000018e: DUP6 0000018f: DUP9 00000190: DUP4 00000191: CALL 00000192: POP 00000193: POP 00000194: POP 00000195: DUP7 00000196: DUP2 00000197: MSTORE 00000198: PUSH1 0x01 0000019a: PUSH1 0x20 0000019c: DUP2 0000019d: SWAP1 0000019e: MSTORE 0000019f: PUSH1 0x40 000001a1: SWAP1 000001a2: SWAP2 000001a3: KECCAK256 000001a4: DUP1 000001a5: SLOAD 000001a6: PUSH1 0xff 000001a8: NOT 000001a9: AND 000001aa: SWAP1 000001ab: SWAP2 000001ac: OR 000001ad: SWAP1 000001ae: SSTORE 000001af: POP 000001b0: POP 000001b1: POP 000001b2: POP 000001b3: POP 000001b4: POP 000001b5: POP 000001b6: POP 000001b7: POP 000001b8: POP 000001b9: JUMP 000001ba: JUMPDEST 000001bb: PUSH2 0x015a 000001be: DUP6 000001bf: DUP6 000001c0: DUP6 000001c1: DUP1 000001c2: DUP1 000001c3: PUSH1 0x1f 000001c5: ADD 000001c6: PUSH1 0x20 000001c8: DUP1 000001c9: SWAP2 000001ca: DIV 000001cb: MUL 000001cc: PUSH1 0x20 000001ce: ADD 000001cf: PUSH1 0x40 000001d1: MLOAD 000001d2: SWAP1 000001d3: DUP2 000001d4: ADD 000001d5: PUSH1 0x40 000001d7: MSTORE 000001d8: DUP1 000001d9: SWAP4 000001da: SWAP3 000001db: SWAP2 000001dc: SWAP1 000001dd: DUP2 000001de: DUP2 000001df: MSTORE 000001e0: PUSH1 0x20 000001e2: ADD 000001e3: DUP4 000001e4: DUP4 000001e5: DUP1 000001e6: DUP3 000001e7: DUP5 000001e8: CALLDATACOPY 000001e9: POP 000001ea: POP 000001eb: PUSH1 0x40 000001ed: DUP1 000001ee: MLOAD 000001ef: PUSH1 0x20 000001f1: PUSH1 0x1f 000001f3: DUP12 000001f4: ADD 000001f5: DUP2 000001f6: SWAP1 000001f7: DIV 000001f8: DUP2 000001f9: MUL 000001fa: DUP3 000001fb: ADD 000001fc: DUP2 000001fd: ADD 000001fe: SWAP1 000001ff: SWAP3 00000200: MSTORE 00000201: DUP10 00000202: DUP2 00000203: MSTORE 00000204: SWAP5 00000205: POP 00000206: DUP10 00000207: SWAP4 00000208: POP 00000209: DUP9 0000020a: SWAP3 0000020b: POP 0000020c: DUP3 0000020d: SWAP2 0000020e: POP 0000020f: DUP5 00000210: ADD 00000211: DUP4 00000212: DUP3 00000213: DUP1 00000214: DUP3 00000215: DUP5 00000216: CALLDATACOPY 00000217: POP 00000218: PUSH2 0x0125 0000021b: SWAP5 0000021c: POP 0000021d: POP 0000021e: POP 0000021f: POP 00000220: POP 00000221: JUMP 00000222: JUMPDEST 00000223: PUSH1 0x01 00000225: PUSH1 0xa0 00000227: PUSH1 0x02 00000229: EXP 0000022a: SUB 0000022b: DUP2 0000022c: AND 0000022d: PUSH1 0x00 0000022f: SWAP1 00000230: DUP2 00000231: MSTORE 00000232: PUSH1 0x20 00000234: DUP2 00000235: SWAP1 00000236: MSTORE 00000237: PUSH1 0x40 00000239: DUP2 0000023a: KECCAK256 0000023b: SLOAD 0000023c: SWAP2 0000023d: SWAP4 0000023e: POP 0000023f: EQ 00000240: ISZERO 00000241: PUSH2 0x0249 00000244: JUMPI 00000245: PUSH2 0x0002 00000248: JUMP 00000249: JUMPDEST 0000024a: PUSH2 0x0253 0000024d: DUP7 0000024e: DUP6 0000024f: PUSH2 0x0131 00000252: JUMP 00000253: JUMPDEST 00000254: PUSH1 0x01 00000256: PUSH1 0xa0 00000258: PUSH1 0x02 0000025a: EXP 0000025b: SUB 0000025c: DUP2 0000025d: AND 0000025e: PUSH1 0x00 00000260: SWAP1 00000261: DUP2 00000262: MSTORE 00000263: PUSH1 0x20 00000265: DUP2 00000266: SWAP1 00000267: MSTORE 00000268: PUSH1 0x40 0000026a: DUP2 0000026b: KECCAK256 0000026c: SLOAD 0000026d: SWAP2 0000026e: SWAP3 0000026f: POP 00000270: EQ 00000271: DUP1 00000272: PUSH2 0x028c 00000275: JUMPI 00000276: POP 00000277: DUP1 00000278: PUSH1 0x01 0000027a: PUSH1 0xa0 0000027c: PUSH1 0x02 0000027e: EXP 0000027f: SUB 00000280: AND 00000281: DUP3 00000282: PUSH1 0x01 00000284: PUSH1 0xa0 00000286: PUSH1 0x02 00000288: EXP 00000289: SUB 0000028a: AND 0000028b: EQ 0000028c: JUMPDEST 0000028d: ISZERO 0000028e: PUSH2 0x00ba 00000291: JUMPI 00000292: PUSH2 0x0002 00000295: JUMP 00000296: JUMPDEST 00000297: POP 00000298: POP 00000299: POP 0000029a: PUSH1 0x20 0000029c: DUP3 0000029d: ADD 0000029e: MLOAD 0000029f: PUSH1 0x40 000002a1: DUP4 000002a2: ADD 000002a3: MLOAD 000002a4: PUSH1 0x41 000002a6: DUP5 000002a7: ADD 000002a8: MLOAD 000002a9: PUSH1 0xff 000002ab: AND 000002ac: PUSH1 0x1b 000002ae: DUP2 000002af: LT 000002b0: ISZERO 000002b1: PUSH2 0x02b8 000002b4: JUMPI 000002b5: PUSH1 0x1b 000002b7: ADD 000002b8: JUMPDEST 000002b9: PUSH1 0x40 000002bb: DUP1 000002bc: MLOAD 000002bd: DUP8 000002be: DUP2 000002bf: MSTORE 000002c0: PUSH1 0xff 000002c2: DUP4 000002c3: AND 000002c4: PUSH1 0x20 000002c6: DUP3 000002c7: DUP2 000002c8: ADD 000002c9: SWAP2 000002ca: SWAP1 000002cb: SWAP2 000002cc: MSTORE 000002cd: DUP2 000002ce: DUP4 000002cf: ADD 000002d0: DUP7 000002d1: SWAP1 000002d2: MSTORE 000002d3: PUSH1 0x60 000002d5: DUP3 000002d6: ADD 000002d7: DUP6 000002d8: SWAP1 000002d9: MSTORE 000002da: SWAP2 000002db: MLOAD 000002dc: PUSH1 0x01 000002de: SWAP3 000002df: PUSH1 0x80 000002e1: DUP4 000002e2: DUP2 000002e3: ADD 000002e4: SWAP4 000002e5: SWAP2 000002e6: SWAP3 000002e7: SWAP2 000002e8: DUP3 000002e9: SWAP1 000002ea: SUB 000002eb: ADD 000002ec: DUP2 000002ed: PUSH1 0x00 000002ef: DUP7 000002f0: PUSH2 0x61da 000002f3: GAS 000002f4: SUB 000002f5: CALL 000002f6: ISZERO 000002f7: PUSH2 0x0002 000002fa: JUMPI 000002fb: POP 000002fc: POP 000002fd: PUSH1 0x40 000002ff: MLOAD 00000300: MLOAD 00000301: SWAP4 00000302: POP 00000303: PUSH2 0x0145 00000306: 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: 0xce3c8706bea61e6d5961434e8b9c0531a103582ebf41a6a3d48246e14afe66e2
call_targets:
0xb027c463c2b067cf3b51dfa6cd03a7807985ec9c
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xce3c8706bea61e6d5961434e8b9c0531a103582ebf41a6a3d48246e14afe66e2",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xb027c463c2b067cf3b51dfa6cd03a7807985ec9c"
],
"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": "0x753334dd",
"selector": "0x753334dd",
"calldata_variants": [
"0x753334dd",
"0x753334dd0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x90a54997",
"selector": "0x90a54997",
"calldata_variants": [
"0x90a54997",
"0x90a549970000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 373,
"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"
},
{
"pc": 757,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 3,
"guards_detected": [],
"untrusted_call_count": 3
}
|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_id: 0xce3c8706bea61e6d5961434e8b9c0531a103582ebf41a6a3d48246e14afe66e2
call_targets:
0xb027c463c2b067cf3b51dfa6cd03a7807985ec9c
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xce3c8706bea61e6d5961434e8b9c0531a103582ebf41a6a3d48246e14afe66e2",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xb027c463c2b067cf3b51dfa6cd03a7807985ec9c"
],
"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": "0x753334dd",
"selector": "0x753334dd",
"calldata_variants": [
"0x753334dd",
"0x753334dd0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x90a54997",
"selector": "0x90a54997",
"calldata_variants": [
"0x90a54997",
"0x90a549970000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 373,
"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"
},
{
"pc": 757,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 3,
"guards_detected": []
}
|
| high | other | detector | SELFDESTRUCT reachable | 65 | no | no |
viewtrace_id: 0xe8523b9a25c3f85837d643fa6bef37ecc193a0c0b2fb22220f0a815416cd8c77
validation_json{
"sink": "SELFDESTRUCT",
"errors": 0,
"status": "unknown",
"attempts": 4,
"trace_id": "0xe8523b9a25c3f85837d643fa6bef37ecc193a0c0b2fb22220f0a815416cd8c77",
"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": "0x753334dd",
"selector": "0x753334dd",
"calldata_variants": [
"0x753334dd",
"0x753334dd0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x90a54997",
"selector": "0x90a54997",
"calldata_variants": [
"0x90a54997",
"0x90a549970000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [],
"selfdestruct_count": 1
}
|