# Turn "[foo,bar]" into a list ("foo", "bar") to test
# lambda x: x removes anything that evaluates to False,
# including empty strings, so we handle "" as well
- binding_list = list(filter(lambda x: x, re.compile('[\[,\]]').split(binding)))
+ binding_list = \
+ list(filter(lambda x: x, re.compile('[\[,\]]').split(binding)))
# Handle explicit smb2, smb1 or auto negotiation
if "smb2" in binding_list:
EVT_ID_SUCCESSFUL_LOGON, msg["Authentication"]["eventId"])
self.assertEquals(
EVT_LOGON_NETWORK, msg["Authentication"]["logonType"])
- self._assert_ncacn_np_serviceDescription(binding,
- msg["Authentication"]["serviceDescription"])
+ self._assert_ncacn_np_serviceDescription(
+ binding, msg["Authentication"]["serviceDescription"])
self.assertEquals(authTypes[1],
msg["Authentication"]["authDescription"])
# Check the second message it should be an Authorization
msg = messages[1]
self.assertEquals("Authorization", msg["type"])
- self._assert_ncacn_np_serviceDescription(binding,
- msg["Authorization"]["serviceDescription"])
+ self._assert_ncacn_np_serviceDescription(
+ binding, msg["Authorization"]["serviceDescription"])
self.assertEquals(authTypes[2], msg["Authorization"]["authType"])
self.assertEquals("SMB", msg["Authorization"]["transportProtection"])
self.assertTrue(self.is_guid(msg["Authorization"]["sessionId"]))
# Check the third message it should be an Authorization
msg = messages[2]
self.assertEquals("Authorization", msg["type"])
- self._assert_ncacn_np_serviceDescription(binding,
- msg["Authorization"]["serviceDescription"])
+ self._assert_ncacn_np_serviceDescription(
+ binding, msg["Authorization"]["serviceDescription"])
self.assertEquals(authTypes[3], msg["Authorization"]["authType"])
self.assertEquals("SMB", msg["Authorization"]["transportProtection"])
self.assertTrue(self.is_guid(msg["Authorization"]["sessionId"]))
def test_ldap_anonymous_access(self):
def isLastExpectedMessage(msg):
return (msg["type"] == "Authorization" and
- msg["Authorization"]["serviceDescription"] == "LDAP" and
+ msg["Authorization"]["serviceDescription"] == "LDAP" and
msg["Authorization"]["transportProtection"] == "TLS" and
msg["Authorization"]["account"] == "ANONYMOUS LOGON" and
msg["Authorization"]["authType"] == "no bind")
msg["Authorization"]["account"] == "ANONYMOUS LOGON" and
msg["Authorization"]["transportProtection"] == "SMB")
- server = os.environ["SERVER"]
+ server = os.environ["SERVER"]
path = "//%s/IPC$" % server
auth = "-N"
msg["Authorization"]["account"] == "ANONYMOUS LOGON" and
msg["Authorization"]["transportProtection"] == "SMB")
- server = os.environ["SERVER"]
+ server = os.environ["SERVER"]
path = "//%s/IPC$" % server
auth = "-N"
(msg["Authentication"]["logonType"] ==
EVT_LOGON_INTERACTIVE))
- server = os.environ["SERVER"]
- user = os.environ["USERNAME"]
+ server = os.environ["SERVER"]
+ user = os.environ["USERNAME"]
password = os.environ["PASSWORD"]
samlogon = "samlogon %s %s %s %d" % (user, password, workstation, 1)
(msg["Authentication"]["logonType"] ==
EVT_LOGON_INTERACTIVE))
- server = os.environ["SERVER"]
- user = os.environ["USERNAME"]
+ server = os.environ["SERVER"]
+ user = os.environ["USERNAME"]
password = "badPassword"
samlogon = "samlogon %s %s %s %d" % (user, password, workstation, 1)
(msg["Authentication"]["logonType"] ==
EVT_LOGON_INTERACTIVE))
- server = os.environ["SERVER"]
- user = "badUser"
+ server = os.environ["SERVER"]
+ user = "badUser"
password = os.environ["PASSWORD"]
samlogon = "samlogon %s %s %s %d" % (user, password, workstation, 1)
(msg["Authentication"]["logonType"] ==
EVT_LOGON_NETWORK))
- server = os.environ["SERVER"]
- user = os.environ["USERNAME"]
+ server = os.environ["SERVER"]
+ user = os.environ["USERNAME"]
password = os.environ["PASSWORD"]
samlogon = "samlogon %s %s %s %d" % (user, password, workstation, 2)
(msg["Authentication"]["logonType"] ==
EVT_LOGON_NETWORK))
- server = os.environ["SERVER"]
- user = os.environ["USERNAME"]
+ server = os.environ["SERVER"]
+ user = os.environ["USERNAME"]
password = "badPassword"
samlogon = "samlogon %s %s %s %d" % (user, password, workstation, 2)
(msg["Authentication"]["logonType"] ==
EVT_LOGON_NETWORK))
- server = os.environ["SERVER"]
- user = "badUser"
+ server = os.environ["SERVER"]
+ user = "badUser"
password = os.environ["PASSWORD"]
samlogon = "samlogon %s %s %s %d" % (user, password, workstation, 2)
(msg["Authentication"]["logonType"] ==
EVT_LOGON_NETWORK))
- server = os.environ["SERVER"]
- user = os.environ["USERNAME"]
+ server = os.environ["SERVER"]
+ user = os.environ["USERNAME"]
password = os.environ["PASSWORD"]
samlogon = "samlogon %s %s %s %d 0x00010000" % (
user, password, workstation, 2)
(msg["Authentication"]["logonType"] ==
EVT_LOGON_NETWORK))
- server = os.environ["SERVER"]
- user = os.environ["USERNAME"]
+ server = os.environ["SERVER"]
+ user = os.environ["USERNAME"]
password = "badPassword"
samlogon = "samlogon %s %s %s %d 0x00010000" % (
user, password, workstation, 2)
(msg["Authentication"]["logonType"] ==
EVT_LOGON_NETWORK))
- server = os.environ["SERVER"]
- user = "badUser"
+ server = os.environ["SERVER"]
+ user = "badUser"
password = os.environ["PASSWORD"]
samlogon = "samlogon %s %s %s %d 0x00010000" % (
user, password, workstation, 2)
(msg["Authentication"]["logonType"] ==
EVT_LOGON_NETWORK))
- server = os.environ["SERVER"]
- user = os.environ["USERNAME"]
+ server = os.environ["SERVER"]
+ user = os.environ["USERNAME"]
password = os.environ["PASSWORD"]
samlogon = "schannel;samlogon %s %s %s" % (user, password, workstation)
(msg["Authentication"]["logonType"] ==
EVT_LOGON_NETWORK))
- server = os.environ["SERVER"]
- user = os.environ["USERNAME"]
+ server = os.environ["SERVER"]
+ user = os.environ["USERNAME"]
password = os.environ["PASSWORD"]
samlogon = "schannelsign;samlogon %s %s %s" % (
user, password, workstation)
def setUp(self):
super(AuthLogTestsNetLogonBadCreds, self).setUp()
- self.lp = samba.tests.env_loadparm()
- self.creds = Credentials()
+ self.lp = samba.tests.env_loadparm()
+ self.creds = Credentials()
self.session = system_session()
self.ldb = SamDB(
credentials=self.creds,
lp=self.lp)
- self.domain = os.environ["DOMAIN"]
- self.netbios_name = "NetLogonBad"
- self.machinepass = "abcdefghij"
+ self.domain = os.environ["DOMAIN"]
+ self.netbios_name = "NetLogonBad"
+ self.machinepass = "abcdefghij"
self.remoteAddress = AS_SYSTEM_MAGIC_PATH_TOKEN
- self.base_dn = self.ldb.domain_dn()
- self.dn = ("cn=%s,cn=users,%s" %
- (self.netbios_name, self.base_dn))
+ self.base_dn = self.ldb.domain_dn()
+ self.dn = ("cn=%s,cn=users,%s" % (self.netbios_name, self.base_dn))
utf16pw = get_string('"' + self.machinepass + '"').encode('utf-16-le')
self.ldb.add({
msg["Authentication"]["authDescription"] ==
"ServerAuthenticate" and
msg["Authentication"]["passwordType"] == "DES" and
- msg["Authentication"]["eventId"] ==
- EVT_ID_UNSUCCESSFUL_LOGON and
+ (msg["Authentication"]["eventId"] ==
+ EVT_ID_UNSUCCESSFUL_LOGON) and
msg["Authentication"]["logonType"] == EVT_LOGON_NETWORK)
c = netlogon.netlogon("ncalrpc:[schannel]", self.get_loadparm())
def setUp(self):
super(AuthLogTestsSamLogon, self).setUp()
- self.lp = samba.tests.env_loadparm()
- self.creds = Credentials()
+ self.lp = samba.tests.env_loadparm()
+ self.creds = Credentials()
self.session = system_session()
self.ldb = SamDB(
credentials=self.creds,
lp=self.lp)
- self.domain = os.environ["DOMAIN"]
- self.netbios_name = "SamLogonTest"
- self.machinepass = "abcdefghij"
+ self.domain = os.environ["DOMAIN"]
+ self.netbios_name = "SamLogonTest"
+ self.machinepass = "abcdefghij"
self.remoteAddress = AS_SYSTEM_MAGIC_PATH_TOKEN
- self.base_dn = self.ldb.domain_dn()
- self.samlogon_dn = ("cn=%s,cn=users,%s" %
- (self.netbios_name, self.base_dn))
+ self.base_dn = self.ldb.domain_dn()
+ self.samlogon_dn = ("cn=%s,cn=users,%s" %
+ (self.netbios_name, self.base_dn))
def tearDown(self):
super(AuthLogTestsSamLogon, self).tearDown()
def isLastExpectedMessage(msg):
return (
msg["type"] == "Authentication" and
- msg["Authentication"]["serviceDescription"] == "SamLogon" and
- msg["Authentication"]["authDescription"] == "network" and
- msg["Authentication"]["passwordType"] == "NTLMv2" and
+ msg["Authentication"]["serviceDescription"] == "SamLogon" and
+ msg["Authentication"]["authDescription"] == "network" and
+ msg["Authentication"]["passwordType"] == "NTLMv2" and
(msg["Authentication"]["eventId"] ==
EVT_ID_SUCCESSFUL_LOGON) and
(msg["Authentication"]["logonType"] == EVT_LOGON_NETWORK))
logon_level = netlogon.NetlogonNetworkTransitiveInformation
logon = samba.dcerpc.netlogon.netr_NetworkInfo()
- logon.challenge = [x if isinstance(x,int) else ord(x) for x in challenge]
+ logon.challenge = [
+ x if isinstance(x, int) else ord(x) for x in challenge]
logon.nt = netlogon.netr_ChallengeResponse()
logon.nt.length = len(response["nt_response"])
- logon.nt.data = [x if isinstance(x,int) else ord(x) for x in response["nt_response"]]
+ logon.nt.data = [
+ x if isinstance(x, int) else ord(x) for
+ x in response["nt_response"]
+ ]
logon.identity_info = samba.dcerpc.netlogon.netr_IdentityInfo()
(username, domain) = creds.get_ntlm_username_domain()