moloch-- / sliver-py

A Python gRPC Client Library for Sliver
GNU General Public License v3.0
62 stars 13 forks source link

Uninitialized attributes in BaseClient #29

Closed tabinfl closed 1 year ago

tabinfl commented 1 year ago

Describe the bug Calling is_connected() before a connection attempt accesses uninitialized attribute.

To Reproduce Call is_connected() before calling connect():

[...]/sliver/client.py", line 52, in is_connected
    return self._channel is not None
AttributeError: 'SliverClient' object has no attribute '_channel'

Fix Quick fix to BaseClient's __init__ (initialize SliverRPCStub also for good measure):

        self._channel: grpc.aio.Channel = None
        self._stub: SliverRPCStub = None