MCPcopy
hub / github.com/fortra/impacket / test_SamrGetAliasMembership

Method test_SamrGetAliasMembership

tests/dcerpc/test_samr.py:1819–1870  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

1817 dce.request(request)
1818
1819 def test_SamrGetAliasMembership(self):
1820 dce, rpc_transport = self.connect()
1821 domainHandle = self.get_domain_handle(dce)
1822 request = samr.SamrCreateAliasInDomain()
1823 request['DomainHandle'] = domainHandle
1824 request['AccountName'] = self.test_group
1825 request['DesiredAccess'] = samr.GROUP_ALL_ACCESS | samr.DELETE
1826
1827 resp = dce.request(request)
1828 aliasHandle = resp['AliasHandle']
1829 relativeId = resp['RelativeId']
1830 resp.dump()
1831
1832 request = samr.SamrRidToSid()
1833 request['ObjectHandle'] = domainHandle
1834 request['Rid'] = relativeId
1835 resp3 = dce.request(request)
1836 resp3.dump()
1837
1838 # Let's extract the SID and remove the RID from one entry
1839 sp = resp3['Sid'].formatCanonical()
1840 domainID = '-'.join(sp.split('-')[:-1])
1841 adminSID = domainID + '-%d' % samr.DOMAIN_USER_RID_ADMIN
1842
1843 sid = samr.RPC_SID()
1844 sid.fromCanonical(adminSID)
1845
1846 guestSID = domainID + '-%d' % samr.DOMAIN_USER_RID_GUEST
1847
1848 sid1 = samr.RPC_SID()
1849 sid1.fromCanonical(adminSID)
1850
1851 sid2 = samr.RPC_SID()
1852 sid2.fromCanonical(guestSID)
1853
1854 si = samr.PSAMPR_SID_INFORMATION()
1855 si['SidPointer'] = sid1
1856
1857 si2 = samr.PSAMPR_SID_INFORMATION()
1858 si2['SidPointer'] = sid2
1859
1860 request = samr.SamrGetAliasMembership()
1861 request['DomainHandle'] = domainHandle
1862 request['SidArray']['Count'] = 2
1863 request['SidArray']['Sids'].append(si)
1864 request['SidArray']['Sids'].append(si2)
1865 resp = dce.request(request)
1866 resp.dump()
1867
1868 request = samr.SamrDeleteAlias()
1869 request['AliasHandle'] = aliasHandle
1870 dce.request(request)
1871
1872 def test_hSamrGetAliasMembership(self):
1873 dce, rpc_transport = self.connect()

Callers

nothing calls this directly

Calls 8

get_domain_handleMethod · 0.95
fromCanonicalMethod · 0.95
splitMethod · 0.80
appendMethod · 0.80
connectMethod · 0.45
requestMethod · 0.45
dumpMethod · 0.45
formatCanonicalMethod · 0.45

Tested by

no test coverage detected