TW
Tripwire
Find contracts. Test them. Review real vulns.

Analysis Run

019b477e-cbb4-72f6-bb64-94fa3e494515

complete
Chain ID
1
Address
Block Number
Created
Mon, Dec 22, 2025 7:17 PM
Review Summary

What survived the funnel

Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?

Confirmed
0
Validated
0
Source
Verified
Review Backing
Not yet
Best current signal
Untrusted DELEGATECALL target reachable
crit 0 high 0 direct contract
Review Checklist
1. Read the findings table first. Ignore raw jobs until the result looks real.
2. Confirm attacker control, not just the existence of a sink.
3. Confirm money or privilege impact.
4. Keep it if the behavior is real. Kill it if this is normal proxy, admin, or upgrade plumbing.

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
26733 artifact.fetch complete 1 / 3 3 months ago
26734 tool.cast_disasm complete 1 / 3 3 months ago
70194 analysis.bundle complete 1 / 3 1 week ago
70195 capability.graph complete 1 / 3 1 week ago
70196 detector.run complete 1 / 3 1 week ago
70197 validation.fork complete 1 / 3 1 week ago

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: no
Implementation:
Verified Source: yes

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate

No codex job recorded yet.

Opcode Heuristics

tool.cast_disasm
Delegatecall
2
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
0
EXT*/BALANCE
3
Total opcodes
420
Flags
delegatecall_present
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLDATASIZE
00000006: PUSH2 0x000b
00000009: JUMPI
0000000a: STOP
0000000b: JUMPDEST
0000000c: PUSH2 0x0013
0000000f: PUSH2 0x0015
00000012: JUMP
00000013: JUMPDEST
00000014: STOP
00000015: JUMPDEST
00000016: PUSH2 0x0025
00000019: PUSH2 0x0020
0000001c: PUSH2 0x0065
0000001f: JUMP
00000020: JUMPDEST
00000021: PUSH2 0x009d
00000024: JUMP
00000025: JUMPDEST
00000026: JUMP
00000027: JUMPDEST
00000028: PUSH1 0x60
0000002a: PUSH2 0x004c
0000002d: DUP4
0000002e: DUP4
0000002f: PUSH1 0x40
00000031: MLOAD
00000032: DUP1
00000033: PUSH1 0x60
00000035: ADD
00000036: PUSH1 0x40
00000038: MSTORE
00000039: DUP1
0000003a: PUSH1 0x27
0000003c: DUP2
0000003d: MSTORE
0000003e: PUSH1 0x20
00000040: ADD
00000041: PUSH2 0x025c
00000044: PUSH1 0x27
00000046: SWAP2
00000047: CODECOPY
00000048: PUSH2 0x00c1
0000004b: JUMP
0000004c: JUMPDEST
0000004d: SWAP4
0000004e: SWAP3
0000004f: POP
00000050: POP
00000051: POP
00000052: JUMP
00000053: JUMPDEST
00000054: PUSH1 0x01
00000056: PUSH1 0x01
00000058: PUSH1 0xa0
0000005a: SHL
0000005b: SUB
0000005c: AND
0000005d: EXTCODESIZE
0000005e: ISZERO
0000005f: ISZERO
00000060: SWAP1
00000061: JUMP
00000062: JUMPDEST
00000063: SWAP1
00000064: JUMP
00000065: JUMPDEST
00000066: PUSH1 0x00
00000068: PUSH2 0x0098
0000006b: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc
0000008c: SLOAD
0000008d: PUSH1 0x01
0000008f: PUSH1 0x01
00000091: PUSH1 0xa0
00000093: SHL
00000094: SUB
00000095: AND
00000096: SWAP1
00000097: JUMP
00000098: JUMPDEST
00000099: SWAP1
0000009a: POP
0000009b: SWAP1
0000009c: JUMP
0000009d: JUMPDEST
0000009e: CALLDATASIZE
0000009f: PUSH1 0x00
000000a1: DUP1
000000a2: CALLDATACOPY
000000a3: PUSH1 0x00
000000a5: DUP1
000000a6: CALLDATASIZE
000000a7: PUSH1 0x00
000000a9: DUP5
000000aa: GAS
000000ab: DELEGATECALL
000000ac: RETURNDATASIZE
000000ad: PUSH1 0x00
000000af: DUP1
000000b0: RETURNDATACOPY
000000b1: DUP1
000000b2: DUP1
000000b3: ISZERO
000000b4: PUSH2 0x00bc
000000b7: JUMPI
000000b8: RETURNDATASIZE
000000b9: PUSH1 0x00
000000bb: RETURN
000000bc: JUMPDEST
000000bd: RETURNDATASIZE
000000be: PUSH1 0x00
000000c0: REVERT
000000c1: JUMPDEST
000000c2: PUSH1 0x60
000000c4: PUSH1 0x01
000000c6: PUSH1 0x01
000000c8: PUSH1 0xa0
000000ca: SHL
000000cb: SUB
000000cc: DUP5
000000cd: AND
000000ce: EXTCODESIZE
000000cf: PUSH2 0x012e
000000d2: JUMPI
000000d3: PUSH1 0x40
000000d5: MLOAD
000000d6: PUSH3 0x461bcd
000000da: PUSH1 0xe5
000000dc: SHL
000000dd: DUP2
000000de: MSTORE
000000df: PUSH1 0x20
000000e1: PUSH1 0x04
000000e3: DUP3
000000e4: ADD
000000e5: MSTORE
000000e6: PUSH1 0x26
000000e8: PUSH1 0x24
000000ea: DUP3
000000eb: ADD
000000ec: MSTORE
000000ed: PUSH32 0x416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f
0000010e: PUSH1 0x44
00000110: DUP3
00000111: ADD
00000112: MSTORE
00000113: PUSH6 0x1b9d1c9858dd
0000011a: PUSH1 0xd2
0000011c: SHL
0000011d: PUSH1 0x64
0000011f: DUP3
00000120: ADD
00000121: MSTORE
00000122: PUSH1 0x84
00000124: ADD
00000125: JUMPDEST
00000126: PUSH1 0x40
00000128: MLOAD
00000129: DUP1
0000012a: SWAP2
0000012b: SUB
0000012c: SWAP1
0000012d: REVERT
0000012e: JUMPDEST
0000012f: PUSH1 0x00
00000131: DUP1
00000132: DUP6
00000133: PUSH1 0x01
00000135: PUSH1 0x01
00000137: PUSH1 0xa0
00000139: SHL
0000013a: SUB
0000013b: AND
0000013c: DUP6
0000013d: PUSH1 0x40
0000013f: MLOAD
00000140: PUSH2 0x0149
00000143: SWAP2
00000144: SWAP1
00000145: PUSH2 0x01dc
00000148: JUMP
00000149: JUMPDEST
0000014a: PUSH1 0x00
0000014c: PUSH1 0x40
0000014e: MLOAD
0000014f: DUP1
00000150: DUP4
00000151: SUB
00000152: DUP2
00000153: DUP6
00000154: GAS
00000155: DELEGATECALL
00000156: SWAP2
00000157: POP
00000158: POP
00000159: RETURNDATASIZE
0000015a: DUP1
0000015b: PUSH1 0x00
0000015d: DUP2
0000015e: EQ
0000015f: PUSH2 0x0184
00000162: JUMPI
00000163: PUSH1 0x40
00000165: MLOAD
00000166: SWAP2
00000167: POP
00000168: PUSH1 0x1f
0000016a: NOT
0000016b: PUSH1 0x3f
0000016d: RETURNDATASIZE
0000016e: ADD
0000016f: AND
00000170: DUP3
00000171: ADD
00000172: PUSH1 0x40
00000174: MSTORE
00000175: RETURNDATASIZE
00000176: DUP3
00000177: MSTORE
00000178: RETURNDATASIZE
00000179: PUSH1 0x00
0000017b: PUSH1 0x20
0000017d: DUP5
0000017e: ADD
0000017f: RETURNDATACOPY
00000180: PUSH2 0x0189
00000183: JUMP
00000184: JUMPDEST
00000185: PUSH1 0x60
00000187: SWAP2
00000188: POP
00000189: JUMPDEST
0000018a: POP
0000018b: SWAP2
0000018c: POP
0000018d: SWAP2
0000018e: POP
0000018f: PUSH2 0x0199
00000192: DUP3
00000193: DUP3
00000194: DUP7
00000195: PUSH2 0x01a3
00000198: JUMP
00000199: JUMPDEST
0000019a: SWAP7
0000019b: SWAP6
0000019c: POP
0000019d: POP
0000019e: POP
0000019f: POP
000001a0: POP
000001a1: POP
000001a2: JUMP
000001a3: JUMPDEST
000001a4: PUSH1 0x60
000001a6: DUP4
000001a7: ISZERO
000001a8: PUSH2 0x01b2
000001ab: JUMPI
000001ac: POP
000001ad: DUP2
000001ae: PUSH2 0x004c
000001b1: JUMP
000001b2: JUMPDEST
000001b3: DUP3
000001b4: MLOAD
000001b5: ISZERO
000001b6: PUSH2 0x01c2
000001b9: JUMPI
000001ba: DUP3
000001bb: MLOAD
000001bc: DUP1
000001bd: DUP5
000001be: PUSH1 0x20
000001c0: ADD
000001c1: REVERT
000001c2: JUMPDEST
000001c3: DUP2
000001c4: PUSH1 0x40
000001c6: MLOAD
000001c7: PUSH3 0x461bcd
000001cb: PUSH1 0xe5
000001cd: SHL
000001ce: DUP2
000001cf: MSTORE
000001d0: PUSH1 0x04
000001d2: ADD
000001d3: PUSH2 0x0125
000001d6: SWAP2
000001d7: SWAP1
000001d8: PUSH2 0x01f8
000001db: JUMP
000001dc: JUMPDEST
000001dd: PUSH1 0x00
000001df: DUP3
000001e0: MLOAD
000001e1: PUSH2 0x01ee
000001e4: DUP2
000001e5: DUP5
000001e6: PUSH1 0x20
000001e8: DUP8
000001e9: ADD
000001ea: PUSH2 0x022b
000001ed: JUMP
000001ee: JUMPDEST
000001ef: SWAP2
000001f0: SWAP1
000001f1: SWAP2
000001f2: ADD
000001f3: SWAP3
000001f4: SWAP2
000001f5: POP
000001f6: POP
000001f7: JUMP
000001f8: JUMPDEST
000001f9: PUSH1 0x20
000001fb: DUP2
000001fc: MSTORE
000001fd: PUSH1 0x00
000001ff: DUP3
00000200: MLOAD
00000201: DUP1
00000202: PUSH1 0x20
00000204: DUP5
00000205: ADD
00000206: MSTORE
00000207: PUSH2 0x0217
0000020a: DUP2
0000020b: PUSH1 0x40
0000020d: DUP6
0000020e: ADD
0000020f: PUSH1 0x20
00000211: DUP8
00000212: ADD
00000213: PUSH2 0x022b
00000216: JUMP
00000217: JUMPDEST
00000218: PUSH1 0x1f
0000021a: ADD
0000021b: PUSH1 0x1f
0000021d: NOT
0000021e: AND
0000021f: SWAP2
00000220: SWAP1
00000221: SWAP2
00000222: ADD
00000223: PUSH1 0x40
00000225: ADD
00000226: SWAP3
00000227: SWAP2
00000228: POP
00000229: POP
0000022a: JUMP
0000022b: JUMPDEST
0000022c: PUSH1 0x00
0000022e: JUMPDEST
0000022f: DUP4
00000230: DUP2
00000231: LT
00000232: ISZERO
00000233: PUSH2 0x0246
00000236: JUMPI
00000237: DUP2
00000238: DUP2
00000239: ADD
0000023a: MLOAD
0000023b: DUP4
0000023c: DUP3
0000023d: ADD
0000023e: MSTORE
0000023f: PUSH1 0x20
00000241: ADD
00000242: PUSH2 0x022e
00000245: JUMP
00000246: JUMPDEST
00000247: DUP4
00000248: DUP2
00000249: GT
0000024a: ISZERO
0000024b: PUSH2 0x0255
0000024e: JUMPI
0000024f: PUSH1 0x00
00000251: DUP5
00000252: DUP5
00000253: ADD
00000254: MSTORE
00000255: JUMPDEST
00000256: POP
00000257: POP
00000258: POP
00000259: POP
0000025a: JUMP
0000025b: INVALID
0000025c: COINBASE
0000025d: PUSH5 0x6472657373
00000263: GASPRICE
00000264: KECCAK256
00000265: PUSH13 0x6f772d6c6576656c2064656c65
00000273: PUSH8 0x6174652063616c6c
0000027c: KECCAK256
0000027d: PUSH7 0x61696c6564a264
00000285: PUSH10 0x70667358221220ee25b7
00000290: CODESIZE
00000291: UNKNOWN(0xD1)
00000292: UNKNOWN(0xB5)
00000293: UNKNOWN(0xC5)
00000294: PUSH7 0x93b36b5955bcf7
0000029c: SWAP13
0000029d: EXTCODESIZE
0000029e: LOG4
0000029f: SWAP14
000002a0: PUSH18 0xd748cc3cd6cd7e38f42113a364736f6c6343
000002b3: STOP
000002b4: ADDMOD
000002b5: SMOD
000002b6: STOP
000002b7: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
critical upgradeability detector Untrusted DELEGATECALL target reachable 70 no no
view
validation_json
{
    "sink": "DELEGATECALL",
    "errors": 10,
    "status": "unknown",
    "attempts": 11,
    "confirmed": false,
    "trace_mode": "callTracer",
    "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
{
    "examples": [
        {
            "pc": 171,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        },
        {
            "pc": 341,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        }
    ],
    "guards_detected": [],
    "delegatecall_count": 2,
    "untrusted_delegatecall_count": 2
}