prompt = 'rpcclient$ '
- def __init__(self, server, domain, username, password):
+ def __init__(self, server, cred):
Cmd.__init__(self)
self.server = server
- self.domain = domain
- self.username = username
- self.password = password
+ self.cred = cred
def emptyline(self):
pipe = dcerpc.pipe_connect(
'ncacn_np:%s' % self.server,
dcerpc.DCERPC_SAMR_UUID, int(dcerpc.DCERPC_SAMR_VERSION),
- (self.domain, self.username, self.password))
+ self.cred)
connect_handle = samr.Connect(pipe)
pipe = dcerpc.pipe_connect(
'ncacn_np:%s' % self.server,
dcerpc.DCERPC_SAMR_UUID, int(dcerpc.DCERPC_SAMR_VERSION),
- (self.domain, self.username, self.password))
+ self.cred)
connect_handle = samr.Connect(pipe)
pipe = dcerpc.pipe_connect(
'ncacn_np:%s' % self.server,
dcerpc.DCERPC_SAMR_UUID, int(dcerpc.DCERPC_SAMR_VERSION),
- (self.domain, self.username, self.password))
+ self.cred)
connect_handle = samr.Connect(pipe)
domain_handle = connect_handle.OpenDomain(args[0])
pipe = dcerpc.pipe_connect(
'ncacn_np:%s' % self.server,
dcerpc.DCERPC_SAMR_UUID, int(dcerpc.DCERPC_SAMR_VERSION),
- (self.domain, self.username, self.password))
+ self.cred)
connect_handle = samr.Connect(pipe)
domain_handle = connect_handle.OpenDomain(args[0])
pipe = dcerpc.pipe_connect(
'ncacn_np:%s' % self.server,
dcerpc.DCERPC_SAMR_UUID, int(dcerpc.DCERPC_SAMR_VERSION),
- (self.domain, self.username, self.password))
+ self.cred)
connect_handle = samr.Connect(pipe)
domain_handle = connect_handle.OpenDomain(args[0])
pipe = dcerpc.pipe_connect(
'ncacn_np:%s' % self.server,
dcerpc.DCERPC_SAMR_UUID, int(dcerpc.DCERPC_SAMR_VERSION),
- (self.domain, self.username, self.password))
+ self.cred)
connect_handle = samr.Connect(pipe)
domain_handle = connect_handle.OpenDomain(args[0])
pipe = dcerpc.pipe_connect(
'ncacn_np:%s' % self.server,
dcerpc.DCERPC_SAMR_UUID, int(dcerpc.DCERPC_SAMR_VERSION),
- (self.domain, self.username, self.password))
+ self.cred)
connect_handle = samr.Connect(pipe)
domain_handle = connect_handle.OpenDomain(args[0])
options, args = parser.parse_args()
- # Break --username up into domain, usernamd and password
+ # Break --username up into domain, username and password
+
+ cred = None
if not options.username:
options.username = '%'
username = options.username
+ if username != '':
+ cred = (domain, username, password)
+
# Run command loop
- c = rpcclient(server, domain, username, password)
+ c = rpcclient(server, cred)
if options.command:
c.onecmd(options.command)