list_rights.py 1.0 KB

1234567891011121314151617181920
  1. import win32security,win32file,win32api,ntsecuritycon,win32con
  2. from security_enums import TRUSTEE_TYPE,TRUSTEE_FORM,ACE_FLAGS,ACCESS_MODE
  3. new_privs = ((win32security.LookupPrivilegeValue('',ntsecuritycon.SE_SECURITY_NAME),win32con.SE_PRIVILEGE_ENABLED),
  4. (win32security.LookupPrivilegeValue('',ntsecuritycon.SE_CREATE_PERMANENT_NAME),win32con.SE_PRIVILEGE_ENABLED),
  5. (win32security.LookupPrivilegeValue('','SeEnableDelegationPrivilege'),win32con.SE_PRIVILEGE_ENABLED) ##doesn't seem to be in ntsecuritycon.py ?
  6. )
  7. ph = win32api.GetCurrentProcess()
  8. th = win32security.OpenProcessToken(ph,win32security.TOKEN_ALL_ACCESS) ##win32con.TOKEN_ADJUST_PRIVILEGES)
  9. win32security.AdjustTokenPrivileges(th,0,new_privs)
  10. policy_handle = win32security.GetPolicyHandle('',win32security.POLICY_ALL_ACCESS)
  11. sidlist=win32security.LsaEnumerateAccountsWithUserRight(policy_handle,ntsecuritycon.SE_RESTORE_NAME)
  12. for sid in sidlist:
  13. print win32security.LookupAccountSid('',sid)
  14. win32security.LsaClose(policy_handle)